diff --git a/CHANGELOG.md b/CHANGELOG.md index 1356684a..67ae29ce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,7 @@ Things to be included in the next release go here. ### Added - Added curve query support for the MSO2KB series scopes +- Full Python API support for TekScopePC device. --- diff --git a/README.md b/README.md index a0cf495d..8d4c8919 100644 --- a/README.md +++ b/README.md @@ -110,7 +110,7 @@ _Device Support Levels_ | | **DSA70000/C/D** | PI | ✅ | ✅ | | | **MSO70000/C/DX** | PI | ✅ | ✅ | | | **TSOVu** | PI | ✅ | | -| | **TekScope** | PI | ✅ | | +| | **TekScope** | PI | ✅ | ✅ | | PSUs | **2200** | PI | ✅ | | | | **2220** | PI | ✅ | | | | **2230** | PI | ✅ | | diff --git a/docs/_static/css/theme_overrides.css b/docs/_static/css/theme_overrides.css index 4d433e45..cdd1206a 100644 --- a/docs/_static/css/theme_overrides.css +++ b/docs/_static/css/theme_overrides.css @@ -123,11 +123,11 @@ span.doc-object-name { } /* Customize link color */ -a.autorefs, a.autorefs code { +a.autorefs, a.autorefs code, .rst-content .admonition a.autorefs code { color: dodgerblue !important; } -a.autorefs:hover, a.autorefs:hover code { +a.autorefs:hover, a.autorefs:hover code, .rst-content .admonition a.autorefs:hover code { color: #d600d6 !important; } diff --git a/docs/basic_usage.md b/docs/basic_usage.md index a92208a9..95ffdff0 100644 --- a/docs/basic_usage.md +++ b/docs/basic_usage.md @@ -168,8 +168,9 @@ first instantiated. In order to do this a few things will need to be created: -1. A custom device class inheriting from one of the - [main device types](advanced/architecture.md#main-device-types). +1. A custom device class. Ideally this would inherit from one of the + [main device types](advanced/architecture.md#main-device-types), though a custom class + representing an unsupported device type can also be created. 2. A mapping of the parsed model series string to the Python class. ```python diff --git a/docs/glossary.md b/docs/glossary.md index 2266cd05..4a551607 100644 --- a/docs/glossary.md +++ b/docs/glossary.md @@ -95,6 +95,9 @@ SS TCPIP : Transmission Control Protocol/Internet Protocol +TekScopePC +: A PC software application to view and analyze waveforms anywhere, anytime, with remote access to a Tektronix oscilloscope + TSP : Test Script Processor diff --git a/docs/known_words.txt b/docs/known_words.txt index b8d67578..b7941ab8 100644 --- a/docs/known_words.txt +++ b/docs/known_words.txt @@ -2,6 +2,7 @@ __none__ add_new adding_devices alias_usage +analyze api artifact artifacts diff --git a/src/tm_devices/commands/__init__.py b/src/tm_devices/commands/__init__.py index 5f7250f8..53242290 100644 --- a/src/tm_devices/commands/__init__.py +++ b/src/tm_devices/commands/__init__.py @@ -77,6 +77,7 @@ from .smu2651a_commands import SMU2651ACommandConstants, SMU2651ACommands, SMU2651AMixin from .smu2657a_commands import SMU2657ACommandConstants, SMU2657ACommands, SMU2657AMixin from .ss3706a_commands import SS3706ACommandConstants, SS3706ACommands, SS3706AMixin +from .tekscopepc_commands import TekScopePCCommandConstants, TekScopePCCommands, TekScopePCMixin __all__ = [ "AFG3KBCommandConstants", @@ -281,4 +282,7 @@ "SS3706ACommandConstants", "SS3706ACommands", "SS3706AMixin", + "TekScopePCCommandConstants", + "TekScopePCCommands", + "TekScopePCMixin", ] diff --git a/src/tm_devices/commands/afg3k_commands.py b/src/tm_devices/commands/afg3k_commands.py index 11fb8375..26246de5 100644 --- a/src/tm_devices/commands/afg3k_commands.py +++ b/src/tm_devices/commands/afg3k_commands.py @@ -29,10 +29,18 @@ from .gen_22daqs_afg.trigger import Trigger from .gen_33ijgq_afgawg.abort import Abort from .gen_33ijgq_afgawg.calibration import Calibration +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg # pylint: disable=too-few-public-methods diff --git a/src/tm_devices/commands/afg3kb_commands.py b/src/tm_devices/commands/afg3kb_commands.py index de6c57a2..f34afe68 100644 --- a/src/tm_devices/commands/afg3kb_commands.py +++ b/src/tm_devices/commands/afg3kb_commands.py @@ -29,10 +29,18 @@ from .gen_22daqs_afg.trigger import Trigger from .gen_33ijgq_afgawg.abort import Abort from .gen_33ijgq_afgawg.calibration import Calibration +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg # pylint: disable=too-few-public-methods diff --git a/src/tm_devices/commands/afg3kc_commands.py b/src/tm_devices/commands/afg3kc_commands.py index 15fdae98..b6169de8 100644 --- a/src/tm_devices/commands/afg3kc_commands.py +++ b/src/tm_devices/commands/afg3kc_commands.py @@ -29,10 +29,18 @@ from .gen_22daqs_afg.trigger import Trigger from .gen_33ijgq_afgawg.abort import Abort from .gen_33ijgq_afgawg.calibration import Calibration +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg # pylint: disable=too-few-public-methods diff --git a/src/tm_devices/commands/awg5200_commands.py b/src/tm_devices/commands/awg5200_commands.py index 3f168fd5..c6428a8d 100644 --- a/src/tm_devices/commands/awg5200_commands.py +++ b/src/tm_devices/commands/awg5200_commands.py @@ -33,11 +33,19 @@ from .gen_3n9auv_awg.slist import Slist from .gen_3n9auv_awg.status import Status from .gen_3n9auv_awg.wplugin import Wplugin +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/awg5k_commands.py b/src/tm_devices/commands/awg5k_commands.py index c6770dcc..e8e26166 100644 --- a/src/tm_devices/commands/awg5k_commands.py +++ b/src/tm_devices/commands/awg5k_commands.py @@ -25,11 +25,19 @@ from .gen_32dszm_awg.wlist import Wlist from .gen_33ijgq_afgawg.abort import Abort from .gen_33ijgq_afgawg.calibration import Calibration +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/awg5kc_commands.py b/src/tm_devices/commands/awg5kc_commands.py index 0282a63a..48403d78 100644 --- a/src/tm_devices/commands/awg5kc_commands.py +++ b/src/tm_devices/commands/awg5kc_commands.py @@ -25,11 +25,19 @@ from .gen_32dszm_awg.wlist import Wlist from .gen_33ijgq_afgawg.abort import Abort from .gen_33ijgq_afgawg.calibration import Calibration +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/awg70ka_commands.py b/src/tm_devices/commands/awg70ka_commands.py index 49c5ef3f..df7acd23 100644 --- a/src/tm_devices/commands/awg70ka_commands.py +++ b/src/tm_devices/commands/awg70ka_commands.py @@ -32,11 +32,19 @@ from .gen_3rs8qy_awg.system import System from .gen_3rs8qy_awg.trigger import Trigger from .gen_3rs8qy_awg.wlist import Wlist +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/awg70kb_commands.py b/src/tm_devices/commands/awg70kb_commands.py index 8537c4b9..9ebe1e8b 100644 --- a/src/tm_devices/commands/awg70kb_commands.py +++ b/src/tm_devices/commands/awg70kb_commands.py @@ -32,11 +32,19 @@ from .gen_3rs8qy_awg.system import System from .gen_3rs8qy_awg.trigger import Trigger from .gen_3rs8qy_awg.wlist import Wlist +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/awg7k_commands.py b/src/tm_devices/commands/awg7k_commands.py index a9c34b18..8e4d4b42 100644 --- a/src/tm_devices/commands/awg7k_commands.py +++ b/src/tm_devices/commands/awg7k_commands.py @@ -25,11 +25,19 @@ from .gen_32dszm_awg.wlist import Wlist from .gen_33ijgq_afgawg.abort import Abort from .gen_33ijgq_afgawg.calibration import Calibration +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/awg7kc_commands.py b/src/tm_devices/commands/awg7kc_commands.py index 5adbfd83..c90226ce 100644 --- a/src/tm_devices/commands/awg7kc_commands.py +++ b/src/tm_devices/commands/awg7kc_commands.py @@ -25,11 +25,19 @@ from .gen_32dszm_awg.wlist import Wlist from .gen_33ijgq_afgawg.abort import Abort from .gen_33ijgq_afgawg.calibration import Calibration +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo2k_commands.py b/src/tm_devices/commands/dpo2k_commands.py index d4044176..ce66446c 100644 --- a/src/tm_devices/commands/dpo2k_commands.py +++ b/src/tm_devices/commands/dpo2k_commands.py @@ -18,34 +18,43 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav from .gen_fkjfe8_msodpodsa.time import Time +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 30e44aad..e01be060 100644 --- a/src/tm_devices/commands/dpo2kb_commands.py +++ b/src/tm_devices/commands/dpo2kb_commands.py @@ -18,34 +18,43 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav from .gen_fkjfe8_msodpodsa.time import Time +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 b768f4d2..8fa240da 100644 --- a/src/tm_devices/commands/dpo4k_commands.py +++ b/src/tm_devices/commands/dpo4k_commands.py @@ -67,35 +67,44 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo4kb_commands.py b/src/tm_devices/commands/dpo4kb_commands.py index 0b424bba..b6c6c44c 100644 --- a/src/tm_devices/commands/dpo4kb_commands.py +++ b/src/tm_devices/commands/dpo4kb_commands.py @@ -67,35 +67,44 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo5k_commands.py b/src/tm_devices/commands/dpo5k_commands.py index 78d43647..17899330 100644 --- a/src/tm_devices/commands/dpo5k_commands.py +++ b/src/tm_devices/commands/dpo5k_commands.py @@ -79,31 +79,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 af8ce01f..5e68bc90 100644 --- a/src/tm_devices/commands/dpo5kb_commands.py +++ b/src/tm_devices/commands/dpo5kb_commands.py @@ -81,31 +81,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 e802df17..eafc3110 100644 --- a/src/tm_devices/commands/dpo70kc_commands.py +++ b/src/tm_devices/commands/dpo70kc_commands.py @@ -80,31 +80,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 5b543171..e76909fc 100644 --- a/src/tm_devices/commands/dpo70kd_commands.py +++ b/src/tm_devices/commands/dpo70kd_commands.py @@ -80,31 +80,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 ef41d7e2..3d93df95 100644 --- a/src/tm_devices/commands/dpo70kdx_commands.py +++ b/src/tm_devices/commands/dpo70kdx_commands.py @@ -80,31 +80,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 2339255f..e0064f3e 100644 --- a/src/tm_devices/commands/dpo70ksx_commands.py +++ b/src/tm_devices/commands/dpo70ksx_commands.py @@ -82,31 +82,40 @@ from .gen_fk3z56_dpodsamso.wfmpre import Wfmpre from .gen_fk3z56_dpodsamso.zoom import Zoom from .gen_fkjfe8_msodpodsa.time import Time +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 9b66b577..c8973f5d 100644 --- a/src/tm_devices/commands/dpo7k_commands.py +++ b/src/tm_devices/commands/dpo7k_commands.py @@ -79,31 +79,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 3e64b505..3b98be55 100644 --- a/src/tm_devices/commands/dpo7kc_commands.py +++ b/src/tm_devices/commands/dpo7kc_commands.py @@ -80,31 +80,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 538ee3ea..e052a325 100644 --- a/src/tm_devices/commands/dsa70kc_commands.py +++ b/src/tm_devices/commands/dsa70kc_commands.py @@ -80,31 +80,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 fe32b02a..17126fcc 100644 --- a/src/tm_devices/commands/dsa70kd_commands.py +++ b/src/tm_devices/commands/dsa70kd_commands.py @@ -80,31 +80,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/gen_4jiykk_dpo/errordetector.py b/src/tm_devices/commands/gen_4jiykk_dpo/errordetector.py index 04607ca9..530ca8ac 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 {SATAGEN|PRBS7|PRBS11|USB3|PCIEGEN|PRBS23|CUSTOM|ANY8B10B|PRBS16|PRBS9} + - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} - ERRORDetector:SIGnaltype? - ERRORDetector:SSC {ON|OFF} - ERRORDetector:SSC? @@ -1393,7 +1393,7 @@ class ErrordetectorSignaltype(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {SATAGEN|PRBS7|PRBS11|USB3|PCIEGEN|PRBS23|CUSTOM|ANY8B10B|PRBS16|PRBS9} + - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} - ERRORDetector:SIGnaltype? ``` @@ -5736,7 +5736,7 @@ def signaltype(self) -> ErrordetectorSignaltype: SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {SATAGEN|PRBS7|PRBS11|USB3|PCIEGEN|PRBS23|CUSTOM|ANY8B10B|PRBS16|PRBS9} + - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} - 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 635f2959..02c90585 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|ULTRAsync|INTERnal|TEKLink} + - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} - ROSc:SOUrce? - ROSc:STATE? - ROSc:TRACking {STABle|FAST} @@ -94,7 +94,7 @@ class RoscSource(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ROSc:SOUrce {EXTernal|ULTRAsync|INTERnal|TEKLink} + - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} - ROSc:SOUrce? ``` @@ -283,7 +283,7 @@ def source(self) -> RoscSource: SCPI Syntax: ``` - - ROSc:SOUrce {EXTernal|ULTRAsync|INTERnal|TEKLink} + - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} - 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 a82a8d5e..bc0661b0 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 {SATAGEN|PRBS7|PRBS11|USB3|PCIEGEN|PRBS23|CUSTOM|ANY8B10B|PRBS16|PRBS9} + - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} - ERRORDetector:SIGnaltype? - ERRORDetector:SKIPSETPRIMitive:MINus? - ERRORDetector:SKIPSETPRIMitive:PLUS? @@ -1725,7 +1725,7 @@ class ErrordetectorSignaltype(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {SATAGEN|PRBS7|PRBS11|USB3|PCIEGEN|PRBS23|CUSTOM|ANY8B10B|PRBS16|PRBS9} + - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} - ERRORDetector:SIGnaltype? ``` @@ -7099,7 +7099,7 @@ def signaltype(self) -> ErrordetectorSignaltype: SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {SATAGEN|PRBS7|PRBS11|USB3|PCIEGEN|PRBS23|CUSTOM|ANY8B10B|PRBS16|PRBS9} + - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} - ERRORDetector:SIGnaltype? ``` diff --git a/src/tm_devices/commands/gen_e6606z_lpdmsomdodpo/__init__.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/__init__.py similarity index 100% rename from src/tm_devices/commands/gen_e6606z_lpdmsomdodpo/__init__.py rename to src/tm_devices/commands/gen_c3g61_tekscopepc/__init__.py diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/actonevent.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/actonevent.py new file mode 100644 index 00000000..2329da67 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/actonevent.py @@ -0,0 +1,652 @@ +"""The actonevent commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - ACTONEVent:ENable + - ACTONEVent:ENable? + - ACTONEVent:NUMSAVEs? + - ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE {ON|OFF|} + - ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE? + - ACTONEVent:TIMER:ACTION:SAVETable:STATE {ON|OFF|} + - ACTONEVent:TIMER:ACTION:SAVETable:STATE? + - ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE {ON|OFF|} + - ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE? + - ACTONEVent:TIMERCount + - ACTONEVent:TIMERCount? + - ACTONEVent:TIMERInterval + - ACTONEVent:TIMERInterval? + - ACTONEVent:Type? + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class ActoneventType(SCPICmdRead): + """The ``ACTONEVent:Type`` command. + + Description: + - This command returns the act on event type. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:Type?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:Type?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - ACTONEVent:Type? + ``` + """ + + +class ActoneventTimerinterval(SCPICmdWrite, SCPICmdRead): + """The ``ACTONEVent:TIMERInterval`` command. + + Description: + - This command sets or queries the amount of time, in seconds, to wait for act on event + timer event to trigger. The time can range from a minimum of 10 seconds to a maximum of + 100 seconds. The default is 30 seconds + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMERInterval?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMERInterval?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``ACTONEVent:TIMERInterval value`` + command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMERInterval + - ACTONEVent:TIMERInterval? + ``` + + Info: + - ```` is the amount of time, in seconds, to wait for act on event timer event to + trigger. + """ + + +class ActoneventTimercount(SCPICmdWrite, SCPICmdRead): + """The ``ACTONEVent:TIMERCount`` command. + + Description: + - This command sets or queries the save on event timer count. The ``ACTONEVent:ENable`` must + be enabled. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMERCount?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMERCount?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``ACTONEVent:TIMERCount value`` command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMERCount + - ACTONEVent:TIMERCount? + ``` + + Info: + - ```` sets the number of allowed saves for the act on event feature. The number must + be a positive integer. + """ + + +class ActoneventTimerActionSavewaveformState(SCPICmdWrite, SCPICmdRead): + """The ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE`` command. + + Description: + - This command saves the user set source waveform(s) when ``:ACTONEVent:TIMERInterval`` + expires. + + Usage: + - Using the ``.query()`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE value`` command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE {ON|OFF|} + - ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE? + ``` + + Info: + - ``ON`` enables the save source waveform(s) when ``:ACTONEVent:TIMERInterval`` expires. + - ``OFF`` disables the save source waveform(s) when ``:ACTONEVent:TIMERInterval`` expires. + - ```` is a number that enables or disables the user set source waveform(s) when + ``:ACTONEVent:TIMERInterval`` expires. The number zero disables the feature, all other + numbers enable the feature. + """ + + +class ActoneventTimerActionSavewaveform(SCPICmdRead): + """The ``ACTONEVent:TIMER:ACTION:SAVEWAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION:SAVEWAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEWAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.state``: The ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = ActoneventTimerActionSavewaveformState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> ActoneventTimerActionSavewaveformState: + """Return the ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE`` command. + + Description: + - This command saves the user set source waveform(s) when ``:ACTONEVent:TIMERInterval`` + expires. + + Usage: + - Using the ``.query()`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE value`` command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE {ON|OFF|} + - ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE? + ``` + + Info: + - ``ON`` enables the save source waveform(s) when ``:ACTONEVent:TIMERInterval`` expires. + - ``OFF`` disables the save source waveform(s) when ``:ACTONEVent:TIMERInterval`` + expires. + - ```` is a number that enables or disables the user set source waveform(s) when + ``:ACTONEVent:TIMERInterval`` expires. The number zero disables the feature, all other + numbers enable the feature. + """ + return self._state + + +class ActoneventTimerActionSavetableState(SCPICmdWrite, SCPICmdRead): + """The ``ACTONEVent:TIMER:ACTION:SAVETable:STATE`` command. + + Description: + - This command saves a measurement results when ``:ACTONEVent:TIMERInterval`` expires. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION:SAVETable:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVETable:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVETable:STATE value`` command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMER:ACTION:SAVETable:STATE {ON|OFF|} + - ACTONEVent:TIMER:ACTION:SAVETable:STATE? + ``` + + Info: + - ``ON`` enables the save measurement results when ``:ACTONEVent:TIMERInterval`` expires. + - ``OFF`` disables the save measurement results when ``:ACTONEVent:TIMERInterval`` expires. + - ```` is a number that enables or disables the save measurement results + ``:ACTONEVent:TIMERInterval`` expires. The number zero disables the feature, all other + numbers enable the feature. + """ + + +class ActoneventTimerActionSavetable(SCPICmdRead): + """The ``ACTONEVent:TIMER:ACTION:SAVETable`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION:SAVETable?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMER:ACTION:SAVETable?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``ACTONEVent:TIMER:ACTION:SAVETable:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = ActoneventTimerActionSavetableState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> ActoneventTimerActionSavetableState: + """Return the ``ACTONEVent:TIMER:ACTION:SAVETable:STATE`` command. + + Description: + - This command saves a measurement results when ``:ACTONEVent:TIMERInterval`` expires. + + Usage: + - Using the ``.query()`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVETable:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVETable:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVETable:STATE value`` command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMER:ACTION:SAVETable:STATE {ON|OFF|} + - ACTONEVent:TIMER:ACTION:SAVETable:STATE? + ``` + + Info: + - ``ON`` enables the save measurement results when ``:ACTONEVent:TIMERInterval`` + expires. + - ``OFF`` disables the save measurement results when ``:ACTONEVent:TIMERInterval`` + expires. + - ```` is a number that enables or disables the save measurement results + ``:ACTONEVent:TIMERInterval`` expires. The number zero disables the feature, all other + numbers enable the feature. + """ + return self._state + + +class ActoneventTimerActionSaveimageState(SCPICmdWrite, SCPICmdRead): + """The ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE`` command. + + Description: + - This command saves a screen capture when ``:ACTONEVent:TIMERInterval`` expires. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE value`` command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE {ON|OFF|} + - ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE? + ``` + + Info: + - ``ON`` enables the save screen capture when ``:ACTONEVent:TIMERInterval`` expires. + - ``OFF`` disables the save screen capture when ``:ACTONEVent:TIMERInterval`` expires. + - ```` is a number that enables or disables the save screen capture + ``:ACTONEVent:TIMERInterval`` expires. The number zero disables the feature, all other + numbers enable the feature. + """ + + +class ActoneventTimerActionSaveimage(SCPICmdRead): + """The ``ACTONEVent:TIMER:ACTION:SAVEIMAGe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION:SAVEIMAGe?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMER:ACTION:SAVEIMAGe?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = ActoneventTimerActionSaveimageState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> ActoneventTimerActionSaveimageState: + """Return the ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE`` command. + + Description: + - This command saves a screen capture when ``:ACTONEVent:TIMERInterval`` expires. + + Usage: + - Using the ``.query()`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE value`` command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE {ON|OFF|} + - ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE? + ``` + + Info: + - ``ON`` enables the save screen capture when ``:ACTONEVent:TIMERInterval`` expires. + - ``OFF`` disables the save screen capture when ``:ACTONEVent:TIMERInterval`` expires. + - ```` is a number that enables or disables the save screen capture + ``:ACTONEVent:TIMERInterval`` expires. The number zero disables the feature, all other + numbers enable the feature. + """ + return self._state + + +class ActoneventTimerAction(SCPICmdRead): + """The ``ACTONEVent:TIMER:ACTION`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMER:ACTION?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.saveimage``: The ``ACTONEVent:TIMER:ACTION:SAVEIMAGe`` command tree. + - ``.savetable``: The ``ACTONEVent:TIMER:ACTION:SAVETable`` command tree. + - ``.savewaveform``: The ``ACTONEVent:TIMER:ACTION:SAVEWAVEform`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._saveimage = ActoneventTimerActionSaveimage(device, f"{self._cmd_syntax}:SAVEIMAGe") + self._savetable = ActoneventTimerActionSavetable(device, f"{self._cmd_syntax}:SAVETable") + self._savewaveform = ActoneventTimerActionSavewaveform( + device, f"{self._cmd_syntax}:SAVEWAVEform" + ) + + @property + def saveimage(self) -> ActoneventTimerActionSaveimage: + """Return the ``ACTONEVent:TIMER:ACTION:SAVEIMAGe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION:SAVEIMAGe?`` + query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEIMAGe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE`` command. + """ + return self._saveimage + + @property + def savetable(self) -> ActoneventTimerActionSavetable: + """Return the ``ACTONEVent:TIMER:ACTION:SAVETable`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION:SAVETable?`` + query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVETable?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``ACTONEVent:TIMER:ACTION:SAVETable:STATE`` command. + """ + return self._savetable + + @property + def savewaveform(self) -> ActoneventTimerActionSavewaveform: + """Return the ``ACTONEVent:TIMER:ACTION:SAVEWAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION:SAVEWAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``ACTONEVent:TIMER:ACTION:SAVEWAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE`` command. + """ + return self._savewaveform + + +class ActoneventTimer(SCPICmdRead): + """The ``ACTONEVent:TIMER`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMER?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.action``: The ``ACTONEVent:TIMER:ACTION`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._action = ActoneventTimerAction(device, f"{self._cmd_syntax}:ACTION") + + @property + def action(self) -> ActoneventTimerAction: + """Return the ``ACTONEVent:TIMER:ACTION`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER:ACTION?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMER:ACTION?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.saveimage``: The ``ACTONEVent:TIMER:ACTION:SAVEIMAGe`` command tree. + - ``.savetable``: The ``ACTONEVent:TIMER:ACTION:SAVETable`` command tree. + - ``.savewaveform``: The ``ACTONEVent:TIMER:ACTION:SAVEWAVEform`` command tree. + """ + return self._action + + +class ActoneventNumsaves(SCPICmdRead): + """The ``ACTONEVent:NUMSAVEs`` command. + + Description: + - This command returns the number of saves completed for save on event timer type. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:NUMSAVEs?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:NUMSAVEs?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - ACTONEVent:NUMSAVEs? + ``` + """ + + +class ActoneventEnable(SCPICmdWrite, SCPICmdRead): + """The ``ACTONEVent:ENable`` command. + + Description: + - This command enables or disables actions on event (AOE). If AOE saves are limited and the + limit has been reached, this parameter will disable AOE. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:ENable?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:ENable?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``ACTONEVent:ENable value`` command. + + SCPI Syntax: + ``` + - ACTONEVent:ENable + - ACTONEVent:ENable? + ``` + + Info: + - ```` is a number that enables or disables actions on event. The number zero disables + the feature and the number one enables the feature. + """ + + +class Actonevent(SCPICmdRead): + """The ``ACTONEVent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.enable``: The ``ACTONEVent:ENable`` command. + - ``.numsaves``: The ``ACTONEVent:NUMSAVEs`` command. + - ``.timer``: The ``ACTONEVent:TIMER`` command tree. + - ``.timercount``: The ``ACTONEVent:TIMERCount`` command. + - ``.timerinterval``: The ``ACTONEVent:TIMERInterval`` command. + - ``.type``: The ``ACTONEVent:Type`` command. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "ACTONEVent") -> None: + super().__init__(device, cmd_syntax) + self._enable = ActoneventEnable(device, f"{self._cmd_syntax}:ENable") + self._numsaves = ActoneventNumsaves(device, f"{self._cmd_syntax}:NUMSAVEs") + self._timer = ActoneventTimer(device, f"{self._cmd_syntax}:TIMER") + self._timercount = ActoneventTimercount(device, f"{self._cmd_syntax}:TIMERCount") + self._timerinterval = ActoneventTimerinterval(device, f"{self._cmd_syntax}:TIMERInterval") + self._type = ActoneventType(device, f"{self._cmd_syntax}:Type") + + @property + def enable(self) -> ActoneventEnable: + """Return the ``ACTONEVent:ENable`` command. + + Description: + - This command enables or disables actions on event (AOE). If AOE saves are limited and + the limit has been reached, this parameter will disable AOE. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:ENable?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:ENable?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``ACTONEVent:ENable value`` command. + + SCPI Syntax: + ``` + - ACTONEVent:ENable + - ACTONEVent:ENable? + ``` + + Info: + - ```` is a number that enables or disables actions on event. The number zero + disables the feature and the number one enables the feature. + """ + return self._enable + + @property + def numsaves(self) -> ActoneventNumsaves: + """Return the ``ACTONEVent:NUMSAVEs`` command. + + Description: + - This command returns the number of saves completed for save on event timer type. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:NUMSAVEs?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:NUMSAVEs?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - ACTONEVent:NUMSAVEs? + ``` + """ + return self._numsaves + + @property + def timer(self) -> ActoneventTimer: + """Return the ``ACTONEVent:TIMER`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMER?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMER?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.action``: The ``ACTONEVent:TIMER:ACTION`` command tree. + """ + return self._timer + + @property + def timercount(self) -> ActoneventTimercount: + """Return the ``ACTONEVent:TIMERCount`` command. + + Description: + - This command sets or queries the save on event timer count. The ``ACTONEVent:ENable`` + must be enabled. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMERCount?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMERCount?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``ACTONEVent:TIMERCount value`` + command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMERCount + - ACTONEVent:TIMERCount? + ``` + + Info: + - ```` sets the number of allowed saves for the act on event feature. The number + must be a positive integer. + """ + return self._timercount + + @property + def timerinterval(self) -> ActoneventTimerinterval: + """Return the ``ACTONEVent:TIMERInterval`` command. + + Description: + - This command sets or queries the amount of time, in seconds, to wait for act on event + timer event to trigger. The time can range from a minimum of 10 seconds to a maximum + of 100 seconds. The default is 30 seconds + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:TIMERInterval?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:TIMERInterval?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``ACTONEVent:TIMERInterval value`` + command. + + SCPI Syntax: + ``` + - ACTONEVent:TIMERInterval + - ACTONEVent:TIMERInterval? + ``` + + Info: + - ```` is the amount of time, in seconds, to wait for act on event timer event to + trigger. + """ + return self._timerinterval + + @property + def type(self) -> ActoneventType: + """Return the ``ACTONEVent:Type`` command. + + Description: + - This command returns the act on event type. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent:Type?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent:Type?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - ACTONEVent:Type? + ``` + """ + return self._type diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/bus.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/bus.py new file mode 100644 index 00000000..9361e1d2 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/bus.py @@ -0,0 +1,22873 @@ +# pylint: disable=line-too-long +"""The bus commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - BUS:ADDNew + - BUS:B:ARINC429A:BITRate {LOW|HI|CUSTom} + - BUS:B:ARINC429A:BITRate:CUSTom + - BUS:B:ARINC429A:BITRate:CUSTom? + - BUS:B:ARINC429A:BITRate? + - BUS:B:ARINC429A:DATAFORmat {DATA|SDIDATA|SDIDATASSM} + - BUS:B:ARINC429A:DATAFORmat? + - BUS:B:ARINC429A:POLARITY {NORMal|INVERTed} + - BUS:B:ARINC429A:POLARITY? + - BUS:B:ARINC429A:SOUrce {S_Ch|CH|Math|REF} + - BUS:B:ARINC429A:SOUrce? + - BUS:B:ARINC429A:THRESHold + - BUS:B:ARINC429A:THRESHold? + - BUS:B:AUDio:BITDelay + - BUS:B:AUDio:BITDelay? + - BUS:B:AUDio:BITOrder {MSB|LSB} + - BUS:B:AUDio:BITOrder? + - BUS:B:AUDio:CLOCk:POLarity {FALL|RISE} + - BUS:B:AUDio:CLOCk:POLarity? + - BUS:B:AUDio:CLOCk:SOUrce {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - BUS:B:AUDio:CLOCk:SOUrce? + - BUS:B:AUDio:CLOCk:THReshold + - BUS:B:AUDio:CLOCk:THReshold? + - BUS:B:AUDio:DATa:POLarity {HIGH|LOW} + - BUS:B:AUDio:DATa:POLarity? + - BUS:B:AUDio:DATa:SIZe + - BUS:B:AUDio:DATa:SIZe? + - BUS:B:AUDio:DATa:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:AUDio:DATa:SOUrce? + - BUS:B:AUDio:DATa:THReshold + - BUS:B:AUDio:DATa:THReshold? + - BUS:B:AUDio:DATa:WORDSize + - BUS:B:AUDio:DATa:WORDSize? + - BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL + - BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL? + - BUS:B:AUDio:FRAME:SIZe + - BUS:B:AUDio:FRAME:SIZe? + - 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:AUDio:WORDSel:SOUrce? + - BUS:B:AUDio:WORDSel:THReshold + - BUS:B:AUDio:WORDSel:THReshold? + - BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD + - BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD? + - BUS:B:AUTOETHERnet:DATAPLUSTHRESHold + - BUS:B:AUTOETHERnet:DATAPLUSTHRESHold? + - BUS:B:AUTOETHERnet:LOWDATAMINus + - BUS:B:AUTOETHERnet:LOWDATAMINus? + - BUS:B:AUTOETHERnet:LOWDATAPLUS + - BUS:B:AUTOETHERnet:LOWDATAPLUS? + - BUS:B:AUTOETHERnet:LOWTHRESHold + - BUS:B:AUTOETHERnet:LOWTHRESHold? + - BUS:B:AUTOETHERnet:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:AUTOETHERnet:SIGNALTYpe? + - BUS:B:AUTOETHERnet:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:AUTOETHERnet:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:AUTOETHERnet:SOUrce:DMINus? + - BUS:B:AUTOETHERnet:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:AUTOETHERnet:SOUrce:DPLUs? + - BUS:B:AUTOETHERnet:SOUrce? + - BUS:B:AUTOETHERnet:THRESHold + - BUS:B:AUTOETHERnet:THRESHold? + - BUS:B:AUTOETHERnet:TYPe {HUNDREDBASET1} + - BUS:B:AUTOETHERnet:TYPe? + - BUS:B:CAN:BITRate {RATE10K|RATE100K|RATE1M|RATE125K|RATE153K|RATE20K|RATE25K|RATE250K|RATE31K|RATE33K|RATE400K|RATE50K|RATE500K|RATE62K|RATE68K|RATE800K|RATE83K|RATE92K|CUSTom} + - BUS:B:CAN:BITRate:VALue + - BUS:B:CAN:BITRate:VALue? + - BUS:B:CAN:BITRate? + - BUS:B:CAN:FD:BITRate {RATE1M|RATE2M|RATE3M|RATE4M|RATE5M|RATE6M|RATE7M|RATE8M|RATE9M|RATE10M|RATE11M|RATE12M|RATE13M|RATE14M|RATE15M|RATE16M|CUSTom} + - BUS:B:CAN:FD:BITRate:CUSTom + - BUS:B:CAN:FD:BITRate:CUSTom? + - BUS:B:CAN:FD:BITRate? + - BUS:B:CAN:SAMPLEpoint + - BUS:B:CAN:SAMPLEpoint? + - BUS:B:CAN:SIGNal {DIFFerential|CANH|CANL|RX|TX} + - BUS:B:CAN:SIGNal? + - BUS:B:CAN:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:CAN:SOUrce? + - BUS:B:CAN:STANDard {CAN2X|FDISO|FDNONISO} + - BUS:B:CAN:STANDard? + - BUS:B:CAN:THReshold + - BUS:B:CAN:THReshold? + - BUS:B:CPHY:A:DATA:THRESHold + - BUS:B:CPHY:A:DATA:THRESHold? + - BUS:B:CPHY:A:LP:THRESHold + - BUS:B:CPHY:A:LP:THRESHold? + - BUS:B:CPHY:A:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:A:SOUrce? + - BUS:B:CPHY:AB:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:AB:SOUrce? + - BUS:B:CPHY:AB:THReshold + - BUS:B:CPHY:AB:THReshold? + - BUS:B:CPHY:AGND:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:AGND:SOUrce? + - BUS:B:CPHY:AGND:THReshold + - BUS:B:CPHY:AGND:THReshold? + - BUS:B:CPHY:B:DATA:THRESHold + - BUS:B:CPHY:B:DATA:THRESHold? + - BUS:B:CPHY:B:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:B:SOUrce? + - BUS:B:CPHY:BC:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:BC:SOUrce? + - BUS:B:CPHY:BC:THReshold + - BUS:B:CPHY:BC:THReshold? + - BUS:B:CPHY:BITRate + - BUS:B:CPHY:BITRate? + - BUS:B:CPHY:C:DATA:THRESHold + - BUS:B:CPHY:C:DATA:THRESHold? + - BUS:B:CPHY:C:LP:THRESHold + - BUS:B:CPHY:C:LP:THRESHold? + - BUS:B:CPHY:C:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:C:SOUrce? + - BUS:B:CPHY:CA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:CA:SOUrce? + - BUS:B:CPHY:CA:THReshold + - BUS:B:CPHY:CA:THReshold? + - BUS:B:CPHY:CGND:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:CGND:SOUrce? + - BUS:B:CPHY:CGND:THReshold + - BUS:B:CPHY:CGND:THReshold? + - BUS:B:CPHY:LP:DIRection {forward|reverse} + - BUS:B:CPHY:LP:DIRection? + - BUS:B:CPHY:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:CPHY:SIGNALTYpe? + - BUS:B:CPHY:SUBTYPe {CSI|DSI|Word|Symbol} + - BUS:B:CPHY:SUBTYPe? + - BUS:B:CXPI:BITRate + - BUS:B:CXPI:BITRate? + - BUS:B:CXPI:REC:THReshold + - BUS:B:CXPI:REC:THReshold? + - BUS:B:CXPI:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CXPI:SOUrce? + - BUS:B:DISplay:FORMat {HEX|BINARY|MIXEDASCII|MIXEDHEX|ASCII|DECIMAL|MIXED} + - BUS:B:DISplay:FORMat? + - BUS:B:DISplay:LAYout {BUS|BUSANDWAVEFORM} + - BUS:B:DISplay:LAYout? + - BUS:B:DPHY:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:DPHY:CLOCk:SOUrce? + - BUS:B:DPHY:CLOCk:THRESHold + - BUS:B:DPHY:CLOCk:THRESHold? + - BUS:B:DPHY:DMINus:DATATHRESHold + - BUS:B:DPHY:DMINus:DATATHRESHold? + - BUS:B:DPHY:DMINus:LPTHRESHold + - BUS:B:DPHY:DMINus:LPTHRESHold? + - BUS:B:DPHY:DMINus:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:DPHY:DMINus:SOUrce? + - BUS:B:DPHY:DPlus:DATATHRESHold + - BUS:B:DPHY:DPlus:DATATHRESHold? + - BUS:B:DPHY:DPlus:LPTHRESHold + - BUS:B:DPHY:DPlus:LPTHRESHold? + - BUS:B:DPHY:DPlus:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:DPHY:DPlus:SOUrce? + - BUS:B:DPHY:LP:DIRection {forward|reverse} + - BUS:B:DPHY:LP:DIRection? + - BUS:B:DPHY:PROTocol:TYPe {CSI|DSI} + - BUS:B:DPHY:PROTocol:TYPe? + - BUS:B:DPHY:SIGNal:ENCoding {false|true} + - BUS:B:DPHY:SIGNal:ENCoding? + - BUS:B:ESPI:ALERTVIEW {ON|OFF} + - BUS:B:ESPI:ALERTVIEW? + - BUS:B:ESPI:ALERt:POLarity {HIGH|LOW} + - BUS:B:ESPI:ALERt:POLarity? + - BUS:B:ESPI:ALERt:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:ALERt:SOUrce? + - BUS:B:ESPI:ALERt:THReshold + - BUS:B:ESPI:ALERt:THReshold? + - BUS:B:ESPI:CHIPSELect:POLarity {HIGH|LOW} + - BUS:B:ESPI:CHIPSELect:POLarity? + - BUS:B:ESPI:CHIPSELect:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:CHIPSELect:SOUrce? + - BUS:B:ESPI:CHIPSELect:THReshold + - BUS:B:ESPI:CHIPSELect:THReshold? + - BUS:B:ESPI:CLOCk:POLarity {FALL|RISE} + - BUS:B:ESPI:CLOCk:POLarity? + - BUS:B:ESPI:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:CLOCk:SOUrce? + - BUS:B:ESPI:CLOCk:THReshold + - BUS:B:ESPI:CLOCk:THReshold? + - BUS:B:ESPI:DATAONE:POLarity {HIGH|LOW} + - BUS:B:ESPI:DATAONE:POLarity? + - BUS:B:ESPI:DATAONE:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:DATAONE:SOUrce? + - BUS:B:ESPI:DATAONE:THReshold + - BUS:B:ESPI:DATAONE:THReshold? + - BUS:B:ESPI:DATATWO:POLarity {HIGH|LOW} + - BUS:B:ESPI:DATATWO:POLarity? + - BUS:B:ESPI:DATATWO:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:DATATWO:SOUrce? + - BUS:B:ESPI:DATATWO:THReshold + - BUS:B:ESPI:DATATWO:THReshold? + - BUS:B:ESPI:IOMODe {SINGle|DUAL} + - BUS:B:ESPI:IOMODe? + - BUS:B:ETHERCAT:DATAMINUSTHRESHold + - BUS:B:ETHERCAT:DATAMINUSTHRESHold? + - BUS:B:ETHERCAT:DATAPLUSTHRESHold + - BUS:B:ETHERCAT:DATAPLUSTHRESHold? + - BUS:B:ETHERCAT:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:ETHERCAT:SIGNALTYpe? + - BUS:B:ETHERCAT:SOUrce:DIFF {S_Ch|CH|MATH|REF} + - BUS:B:ETHERCAT:SOUrce:DIFF? + - BUS:B:ETHERCAT:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:ETHERCAT:SOUrce:DMINus? + - BUS:B:ETHERCAT:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:ETHERCAT:SOUrce:DPLUs? + - BUS:B:ETHERCAT:THRESHold + - BUS:B:ETHERCAT:THRESHold? + - BUS:B:ETHERnet:DATAMINUSTHRESHold + - BUS:B:ETHERnet:DATAMINUSTHRESHold? + - BUS:B:ETHERnet:DATAPLUSTHRESHold + - BUS:B:ETHERnet:DATAPLUSTHRESHold? + - BUS:B:ETHERnet:IPVFOUR {YES|NO} + - BUS:B:ETHERnet:IPVFOUR? + - BUS:B:ETHERnet:LOWTHRESHold + - BUS:B:ETHERnet:LOWTHRESHold? + - BUS:B:ETHERnet:QTAGGING {YES|NO} + - BUS:B:ETHERnet:QTAGGING? + - BUS:B:ETHERnet:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:ETHERnet:SIGNALTYpe? + - BUS:B:ETHERnet:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DMINus? + - BUS:B:ETHERnet:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DPLUs? + - BUS:B:ETHERnet:SOUrce? + - BUS:B:ETHERnet:THRESHold + - BUS:B:ETHERnet:THRESHold? + - BUS:B:ETHERnet:TYPe {TENBASET|HUNDREDBASETX} + - BUS:B:ETHERnet:TYPe? + - BUS:B:EUSB:BITRate {HIGH|FULL|LOW} + - BUS:B:EUSB:BITRate? + - BUS:B:EUSB:DATAMINUS:DATA:THRESHold + - BUS:B:EUSB:DATAMINUS:DATA:THRESHold? + - BUS:B:EUSB:DATAMINUSTHRESHold + - BUS:B:EUSB:DATAMINUSTHRESHold? + - BUS:B:EUSB:DATAPLUS:DATA:THRESHold + - BUS:B:EUSB:DATAPLUS:DATA:THRESHold? + - BUS:B:EUSB:DATAPLUSTHRESHold + - BUS:B:EUSB:DATAPLUSTHRESHold? + - BUS:B:EUSB:LOWTHRESHold + - BUS:B:EUSB:LOWTHRESHold? + - BUS:B:EUSB:OPERating:MODe {NATive|REPEATERHOSt|REPEATERPERIPHERAL} + - BUS:B:EUSB:OPERating:MODe? + - BUS:B:EUSB:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:EUSB:SIGNALTYpe? + - BUS:B:EUSB:SOUrce:DIFF {S_Ch|CH|MATH|REF} + - BUS:B:EUSB:SOUrce:DIFF? + - BUS:B:EUSB:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:EUSB:SOUrce:DMINus? + - BUS:B:EUSB:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:EUSB:SOUrce:DPLUs? + - BUS:B:EUSB:THRESHold + - BUS:B:EUSB:THRESHold? + - BUS:B:FLEXray:BITRate {CUSTOM|RATE2M|RATE5M|RATE10M} + - BUS:B:FLEXray:BITRate:CUSTom + - BUS:B:FLEXray:BITRate:CUSTom? + - BUS:B:FLEXray:BITRate? + - BUS:B:FLEXray:CHannel {A|B} + - BUS:B:FLEXray:CHannel? + - BUS:B:FLEXray:LOWTHRESHold + - BUS:B:FLEXray:LOWTHRESHold? + - BUS:B:FLEXray:SIGnal {BDIFFBP|BM|TXRX} + - BUS:B:FLEXray:SIGnal? + - BUS:B:FLEXray:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:FLEXray:SOUrce:TXRX {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:FLEXray:SOUrce:TXRX? + - BUS:B:FLEXray:SOUrce? + - BUS:B:FLEXray:THRESHold + - BUS:B:FLEXray:THRESHold? + - BUS:B:FLEXray:TXRXTHRESHold + - BUS:B:FLEXray:TXRXTHRESHold? + - BUS:B:I2C:CLOCk:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I2C:CLOCk:SOUrce? + - BUS:B:I2C:CLOCk:THReshold + - BUS:B:I2C:CLOCk:THReshold? + - BUS:B:I2C:DATa:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I2C:DATa:SOUrce? + - BUS:B:I2C:DATa:THReshold + - BUS:B:I2C:DATa:THReshold? + - BUS:B:I2C:RWINADDR {0|1} + - BUS:B:I2C:RWINADDR? + - BUS:B:I3C:CLOCk:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I3C:CLOCk:SOUrce? + - BUS:B:I3C:CLOCk:THReshold + - BUS:B:I3C:CLOCk:THReshold? + - BUS:B:I3C:DATa:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I3C:DATa:SOUrce? + - BUS:B:I3C:DATa:THReshold {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I3C:DATa:THReshold? + - BUS:B:LABel:COLor + - BUS:B:LABel:COLor? + - BUS:B:LABel:FONT:BOLD {ON|OFF|1|0} + - BUS:B:LABel:FONT:BOLD? + - BUS:B:LABel:FONT:ITALic {ON|OFF|1|0} + - BUS:B:LABel:FONT:ITALic? + - BUS:B:LABel:FONT:SIZE + - BUS:B:LABel:FONT:SIZE? + - BUS:B:LABel:FONT:TYPE + - BUS:B:LABel:FONT:TYPE? + - BUS:B:LABel:FONT:UNDERline {ON|OFF|1|0} + - BUS:B:LABel:FONT:UNDERline? + - BUS:B:LABel:XPOS + - BUS:B:LABel:XPOS? + - BUS:B:LABel:YPOS + - BUS:B:LABel:YPOS? + - BUS:B:LABel:name + - BUS:B:LABel:name? + - BUS:B:LIN:BITRate {RATE10K|RATE1K|RATE19K|RATE2K|RATE4K|RATE9K|CUSTom} + - BUS:B:LIN:BITRate:CUSTom + - BUS:B:LIN:BITRate:CUSTom? + - BUS:B:LIN:BITRate? + - BUS:B:LIN:IDFORmat {NOPARity|PARity} + - BUS:B:LIN:IDFORmat? + - BUS:B:LIN:POLarity {INVerted|NORmal} + - BUS:B:LIN:POLarity? + - BUS:B:LIN:SAMPLEpoint + - BUS:B:LIN:SAMPLEpoint? + - BUS:B:LIN:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:LIN:SOUrce:THReshold + - BUS:B:LIN:SOUrce:THReshold? + - BUS:B:LIN:SOUrce? + - BUS:B:LIN:STANDard {MIXed|V1X|V2X} + - BUS:B:LIN:STANDard? + - BUS:B:MANChester:BITORDer {LSB|MSB} + - BUS:B:MANChester:BITORDer? + - BUS:B:MANChester:BITRate + - BUS:B:MANChester:BITRate? + - BUS:B:MANChester:DISplaymode {BITS|PACKET} + - BUS:B:MANChester:DISplaymode? + - BUS:B:MANChester:HEADer:LENGth + - BUS:B:MANChester:HEADer:LENGth? + - BUS:B:MANChester:IDLE:BITS + - BUS:B:MANChester:IDLE:BITS? + - BUS:B:MANChester:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:MANChester:SOUrce? + - BUS:B:MANChester:START:INDex + - BUS:B:MANChester:START:INDex? + - BUS:B:MANChester:SYNC:SIZe + - BUS:B:MANChester:SYNC:SIZe? + - BUS:B:MANChester:THReshold + - BUS:B:MANChester:THReshold? + - BUS:B:MANChester:TOLerance + - BUS:B:MANChester:TOLerance? + - BUS:B:MANChester:TRANstion:ZERo {FALLing|RISing} + - BUS:B:MANChester:TRANstion:ZERo? + - BUS:B:MANChester:TRAiler:LENGth + - BUS:B:MANChester:TRAiler:LENGth? + - BUS:B:MANChester:WORD:COUNt + - BUS:B:MANChester:WORD:COUNt? + - BUS:B:MANChester:WORDSIZe + - BUS:B:MANChester:WORDSIZe? + - BUS:B:MANChester:parity {ODD|EVEN|NONE} + - BUS:B:MANChester:parity? + - BUS:B:MDIO:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:MDIO:CLOCk:SOUrce? + - BUS:B:MDIO:CLOCk:THReshold + - BUS:B:MDIO:CLOCk:THReshold? + - BUS:B:MDIO:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:MDIO:DATA:SOUrce? + - BUS:B:MDIO:DATA:THReshold + - BUS:B:MDIO:DATA:THReshold? + - BUS:B:MIL1553B:LOWTHRESHold + - BUS:B:MIL1553B:LOWTHRESHold? + - 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 {S_Ch|CH|MATH|REF} + - BUS:B:MIL1553B:SOUrce? + - BUS:B:MIL1553B:THRESHold + - BUS:B:MIL1553B:THRESHold? + - BUS:B:NRZ:BITOrder {LSB|MSB} + - BUS:B:NRZ:BITOrder? + - BUS:B:NRZ:BITRate + - BUS:B:NRZ:BITRate? + - BUS:B:NRZ:POLarity {INVerted|NORmal} + - BUS:B:NRZ:POLarity? + - BUS:B:NRZ:SOUrce {S_Ch|CH|MATH|REF] + - BUS:B:NRZ:SOUrce? + - BUS:B:NRZ:SPMI:VERsion {v} + - BUS:B:NRZ:SPMI:VERsion? + - BUS:B:NRZ:THReshold + - BUS:B:NRZ:THReshold? + - BUS:B:ONEWIRe:DATA:SOUrce {S_Ch|CH|MATH|REF] + - BUS:B:ONEWIRe:DATA:SOUrce? + - BUS:B:ONEWIRe:DATA:THReshold + - BUS:B:ONEWIRe:DATA:THReshold? + - BUS:B:ONEWIRe:MODe {STAndard|OVErdrive} + - BUS:B:ONEWIRe:MODe? + - BUS:B:PARallel:ALLTHResholds + - BUS:B:PARallel:ALLTHResholds:APPly + - BUS:B:PARallel:BITSOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D|NONE} + - BUS:B:PARallel:BITSOUrce:THReshold + - BUS:B:PARallel:CLOCk:EDGE {FALLING|RISING|EITHER} + - BUS:B:PARallel:CLOCk:EDGE? + - BUS:B:PARallel:CLOCk:ISCLOCKED {OFF|ON|NR1> + - BUS:B:PARallel:CLOCk:ISCLOCKED? + - BUS:B:PARallel:CLOCkSOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D|NONE} + - BUS:B:PARallel:CLOCkSOUrce:THReshold + - BUS:B:PARallel:CLOCkSOUrce:THReshold? + - BUS:B:PARallel:CLOCkSOUrce? + - BUS:B:PSIFIVe:BITPERiod + - BUS:B:PSIFIVe:BITPERiod? + - BUS:B:PSIFIVe:BITRate {RATE125K|RATE189K|RATE83K} + - BUS:B:PSIFIVe:BITRate? + - BUS:B:PSIFIVe:COMM:DIRection {SENSORECU|ECUSENSor} + - BUS:B:PSIFIVe:COMM:DIRection? + - BUS:B:PSIFIVe:DATAA + - BUS:B:PSIFIVe:DATAA? + - BUS:B:PSIFIVe:DATAB + - BUS:B:PSIFIVe:DATAB? + - BUS:B:PSIFIVe:DATAFORMat {NIBBLe|BYTe} + - BUS:B:PSIFIVe:DATAFORMat? + - BUS:B:PSIFIVe:ECUSOURce {S_Ch|CH|MATH|REF} + - BUS:B:PSIFIVe:ECUSOURce? + - BUS:B:PSIFIVe:FRAMECONTrol + - BUS:B:PSIFIVe:FRAMECONTrol? + - BUS:B:PSIFIVe:MESSaging {OFF|ON} + - BUS:B:PSIFIVe:MESSaging? + - BUS:B:PSIFIVe:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:PSIFIVe:SOUrce? + - BUS:B:PSIFIVe:STATus + - BUS:B:PSIFIVe:STATus? + - BUS:B:PSIFIVe:SYNCMODe {PULSEWIDTh|TOOTHGAP} + - BUS:B:PSIFIVe:SYNCMODe? + - BUS:B:PSIFIVe:SYNCTHRESHold + - BUS:B:PSIFIVe:SYNCTHRESHold? + - BUS:B:PSIFIVe:THRESHold + - BUS:B:PSIFIVe:THRESHold? + - BUS:B:RS232C:BITRate {CUSTOM|RATE300|RATE1K|RATE2K|RATE9K|RATE19K|RATE38K|RATE115K|RATE921K} + - BUS:B:RS232C:BITRate:CUSTom + - BUS:B:RS232C:BITRate:CUSTom? + - BUS:B:RS232C:BITRate? + - BUS:B:RS232C:DATABits {7|8|9} + - BUS:B:RS232C:DATABits? + - BUS:B:RS232C:DELIMiter {NULl|CR|LF|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:SOUrce {S_Ch_D|CH|CH_D|REF|MATH|REF_D} + - BUS:B:RS232C:SOUrce:THReshold + - BUS:B:RS232C:SOUrce:THReshold? + - BUS:B:RS232C:SOUrce? + - BUS:B:S8B10B:BITRate + - BUS:B:S8B10B:BITRate? + - BUS:B:S8B10B:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:S8B10B:SOUrce? + - BUS:B:S8B10B:THReshold + - BUS:B:S8B10B:THReshold? + - BUS:B:SDLC:BITRate + - BUS:B:SDLC:BITRate? + - BUS:B:SDLC:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SDLC:DATA:SOUrce? + - BUS:B:SDLC:DATA:THReshold + - BUS:B:SDLC:DATA:THReshold? + - BUS:B:SDLC:ENCoding {DISCrete|INVert} + - BUS:B:SDLC:ENCoding? + - BUS:B:SDLC:MODulo {8|128} + - BUS:B:SDLC:MODulo? + - 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 {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - BUS:B:SENT:SOUrce? + - BUS:B:SENT:THRESHold + - BUS:B:SENT:THRESHold? + - BUS:B:SENT:TICKTIME + - BUS:B:SENT:TICKTIME? + - BUS:B:SENT:TICKTOLerance + - BUS:B:SENT:TICKTOLerance? + - BUS:B:SMBUS:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SMBUS:CLOCk:SOUrce? + - BUS:B:SMBUS:CLOCk:THReshold + - BUS:B:SMBUS:CLOCk:THReshold? + - BUS:B:SMBUS:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SMBUS:DATA:SOUrce? + - BUS:B:SMBUS:DATA:THReshold + - BUS:B:SMBUS:DATA:THReshold? + - BUS:B:SMBUS:PEC:VALUe {TRUe|FALSe} + - BUS:B:SMBUS:PEC:VALUe? + - BUS:B:SPACEWIRe:BITRate + - BUS:B:SPACEWIRe:BITRate? + - BUS:B:SPACEWIRe:DATa:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SPACEWIRe:DATa:SOUrce? + - BUS:B:SPACEWIRe:DATa:THReshold + - BUS:B:SPACEWIRe:DATa:THReshold? + - BUS:B:SPACEWIRe:DECode:TYPe {STRObe|DATARate} + - BUS:B:SPACEWIRe:DECode:TYPe? + - BUS:B:SPACEWIRe:STRobe:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SPACEWIRe:STRobe:SOUrce? + - BUS:B:SPACEWIRe:STRobe:THReshold + - BUS:B:SPACEWIRe:STRobe:THReshold? + - BUS:B:SPACEWIRe:SYNC {DATA|NULL|AUTO|CUSTom} + - BUS:B:SPACEWIRe:SYNC:COUnt + - BUS:B:SPACEWIRe:SYNC:COUnt? + - BUS:B:SPACEWIRe:SYNC:PATTern + - BUS:B:SPACEWIRe:SYNC:PATTern? + - BUS:B:SPACEWIRe:SYNC:VALUe + - BUS:B:SPACEWIRe:SYNC:VALUe? + - BUS:B:SPACEWIRe:SYNC? + - 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:SPI:CLOCk:SOUrce? + - BUS:B:SPI:CLOCk:THReshold + - BUS:B:SPI:CLOCk:THReshold? + - BUS:B:SPI:DATa:POLarity {HIGH|LOW} + - BUS:B:SPI:DATa:POLarity? + - BUS:B:SPI:DATa:SIZe + - BUS:B:SPI:DATa:SIZe? + - BUS:B:SPI:DATa:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:SPI:DATa:SOUrce? + - BUS:B:SPI:DATa:THReshold + - BUS:B:SPI:DATa:THReshold? + - BUS:B:SPI:FRAMING {IDLE|SS} + - BUS:B:SPI:FRAMING? + - BUS:B:SPI:IDLETime + - BUS:B:SPI:IDLETime? + - BUS:B:SPI:MISo:DATa:POLarity {HIGH|LOW} + - BUS:B:SPI:MISo:DATa:POLarity? + - BUS:B:SPI:MISo:INPut {S_Ch|CH|MATH|REF} + - BUS:B:SPI:MISo:INPut? + - BUS:B:SPI:MISo:THReshold + - BUS:B:SPI:MISo:THReshold? + - BUS:B:SPI:MOSi:DATa:POLarity {HIGH|LOW} + - BUS:B:SPI:MOSi:DATa:POLarity? + - BUS:B:SPI:MOSi:INPut {S_Ch|CH|MATH|REF} + - BUS:B:SPI:MOSi:INPut? + - BUS:B:SPI:MOSi:THReshold + - BUS:B:SPI:MOSi:THReshold? + - BUS:B:SPI:NUMBer:INputs {ONE|TWO} + - BUS:B:SPI:NUMBer:INputs? + - BUS:B:SPI:SELect:POLarity {LOW|HIGH} + - BUS:B:SPI:SELect:POLarity? + - BUS:B:SPI:SELect:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:SPI:SELect:SOUrce? + - BUS:B:SPI:SELect:THReshold + - BUS:B:SPI:SELect:THReshold? + - BUS:B:SPMI:SCLk:SOUrce {CH|CH_Dx>|Math|REF|REF_D} + - BUS:B:SPMI:SCLk:SOUrce? + - BUS:B:SPMI:SCLk:THReshold + - BUS:B:SPMI:SCLk:THReshold? + - BUS:B:SPMI:SDATa:SOUrce {CH|CH_Dx>|Math|REF|REF_D} + - BUS:B:SPMI:SDATa:SOUrce? + - BUS:B:SPMI:SDATa:THReshold + - BUS:B:SPMI:SDATa:THReshold? + - BUS:B:SVID:ALERT:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SVID:ALERT:SOUrce? + - BUS:B:SVID:ALERT:THReshold + - BUS:B:SVID:ALERT:THReshold? + - BUS:B:SVID:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SVID:CLOCk:SOUrce? + - BUS:B:SVID:CLOCk:THReshold + - BUS:B:SVID:CLOCk:THReshold? + - BUS:B:SVID:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SVID:DATA:SOUrce? + - BUS:B:SVID:DATA:THReshold + - BUS:B:SVID:DATA:THReshold? + - BUS:B:TYPe {ARINC429|AUDio|CAN|ETHernet|EUSB|FLEXRAY|I2C|I3C|LIN|MDIO|MIL1553B|PARallel|RS232C|SENT|SPI|SPMI|SVID|USB} + - BUS:B:TYPe? + - BUS:B:USB:BITRate {FULL|HIGH|LOW} + - BUS:B:USB:BITRate? + - BUS:B:USB:DATAMINUSTHRESHold + - BUS:B:USB:DATAMINUSTHRESHold? + - BUS:B:USB:DATAPLUSTHRESHold + - BUS:B:USB:DATAPLUSTHRESHold? + - BUS:B:USB:LOWTHRESHold + - BUS:B:USB:LOWTHRESHold? + - BUS:B:USB:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:USB:SIGNALTYpe? + - BUS:B:USB:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:USB:SOUrce:DMINus {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:USB:SOUrce:DMINus? + - BUS:B:USB:SOUrce:DPLUs {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:USB:SOUrce:DPLUs? + - BUS:B:USB:SOUrce? + - BUS:B:USB:THRESHold + - BUS:B:USB:THRESHold? + - BUS:DELete + - BUS:LIST? + ``` +""" # noqa: E501 + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class BusList(SCPICmdRead): + """The ``BUS:LIST`` command. + + Description: + - This query returns a comma separated list of all currently defined buses. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - BUS:LIST? + ``` + """ + + +class BusDelete(SCPICmdWrite): + """The ``BUS:DELete`` command. + + Description: + - This command deletes the specified bus. + + Usage: + - Using the ``.write(value)`` method will send the ``BUS:DELete value`` command. + + SCPI Syntax: + ``` + - BUS:DELete + ``` + + Info: + - ```` specifies the bus to delete and is of the form 'B', where is ≥1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class BusBItemUsbThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:THRESHold`` command. + + Description: + - This command sets or queries the USB DATA source High threshold for the specified bus when + the signal source is differential. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:THRESHold?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:THRESHold + - BUS:B:USB:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the USB DATA source High threshold for the specified bus. + """ + + +class BusBItemUsbSourceDplus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the USB dataPlus (SDATAPLUS) source for the specified bus + when the signal type is single ended. The bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:USB:SOUrce:DPLUs? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the D+ source for the specified USB bus. + - ``CH_D`` specifies a digital channel as the D+ source for the specified USB bus. + - ``MATH`` specifies a math channel as the D+ source for the specified USB bus. + - ``REF`` specifies a reference waveform as the source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform for + the specified USB bus. + """ + + +class BusBItemUsbSourceDminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the USB D- (SDATAMINUS) source for bus when the signal + type is single ended. The bus number is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:USB:SOUrce:DMINus? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the D- source for the specified USB bus. + - ``CH_D`` specifies a digital channel as the D- source for the specified USB bus. + - ``MATH`` specifies a math channel as the D- source for the specified USB bus. + - ``REF`` specifies a reference waveform as the source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform for + the specified USB bus. + """ + + +class BusBItemUsbSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SOUrce`` command. + + Description: + - This command sets or queries the USB data source when the signal type is differential for + bus . The bus number is specified by x. + + 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``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:USB:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the data source for the specified USB bus. + - ``MATH`` specifies a math channel as the data source for the specified USB bus. + - ``REF`` specifies a reference waveform as the data source. + + Properties: + - ``.dminus``: The ``BUS:B:USB:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:USB:SOUrce:DPLUs`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dminus = BusBItemUsbSourceDminus(device, f"{self._cmd_syntax}:DMINus") + self._dplus = BusBItemUsbSourceDplus(device, f"{self._cmd_syntax}:DPLUs") + + @property + def dminus(self) -> BusBItemUsbSourceDminus: + """Return the ``BUS:B:USB:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the USB D- (SDATAMINUS) source for bus when the + signal type is single ended. The bus number is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:USB:SOUrce:DMINus? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the D- source for the specified USB bus. + - ``CH_D`` specifies a digital channel as the D- source for the specified USB bus. + - ``MATH`` specifies a math channel as the D- source for the specified USB bus. + - ``REF`` specifies a reference waveform as the source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform + for the specified USB bus. + """ # noqa: E501 + return self._dminus + + @property + def dplus(self) -> BusBItemUsbSourceDplus: + """Return the ``BUS:B:USB:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the USB dataPlus (SDATAPLUS) source for the specified bus + when the signal type is single ended. The bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:USB:SOUrce:DPLUs? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the D+ source for the specified USB bus. + - ``CH_D`` specifies a digital channel as the D+ source for the specified USB bus. + - ``MATH`` specifies a math channel as the D+ source for the specified USB bus. + - ``REF`` specifies a reference waveform as the source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform + for the specified USB bus. + """ # noqa: E501 + return self._dplus + + +class BusBItemUsbSignaltype(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SIGNALTYpe`` command. + + Description: + - This command sets or queries the USB signal type for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SIGNALTYpe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SIGNALTYpe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:USB:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``SINGLE`` specifies single-ended signals. + - ``DIFF`` specifies differential signals. + """ + + +class BusBItemUsbLowthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:LOWTHRESHold`` command. + + Description: + - This command sets or queries the USB data source threshold for the specified bus when the + signal type is differential. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:LOWTHRESHold?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:LOWTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:LOWTHRESHold + - BUS:B:USB:LOWTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the Low threshold. + """ + + +class BusBItemUsbDataplusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the USB D+ source threshold for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:DATAPLUSTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:DATAPLUSTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:DATAPLUSTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:DATAPLUSTHRESHold + - BUS:B:USB:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the Plus threshold. + """ + + +class BusBItemUsbDataminusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:DATAMINUSTHRESHold`` command. + + Description: + - This command sets or queries the USB D- source threshold for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:DATAMINUSTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:DATAMINUSTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:DATAMINUSTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:DATAMINUSTHRESHold + - BUS:B:USB:DATAMINUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the Minus threshold. + """ + + +class BusBItemUsbBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:BITRate`` command. + + Description: + - This command sets or queries the USB data rate for bus , where the bus number is + specified by x. + + 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 {FULL|HIGH|LOW} + - BUS:B:USB:BITRate? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``FULL`` indicates the bit rate is 12 Mbps. + - ``HIGH`` indicates the bit rate is 480 Mbps. + - ``LOW`` indicates the bit rate is 1.5 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``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.bitrate``: The ``BUS:B:USB:BITRate`` command. + - ``.dataminusthreshold``: The ``BUS:B:USB:DATAMINUSTHRESHold`` command. + - ``.dataplusthreshold``: The ``BUS:B:USB:DATAPLUSTHRESHold`` command. + - ``.lowthreshold``: The ``BUS:B:USB:LOWTHRESHold`` command. + - ``.signaltype``: The ``BUS:B:USB:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:USB:SOUrce`` command. + - ``.threshold``: The ``BUS:B:USB:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemUsbBitrate(device, f"{self._cmd_syntax}:BITRate") + self._dataminusthreshold = BusBItemUsbDataminusthreshold( + device, f"{self._cmd_syntax}:DATAMINUSTHRESHold" + ) + self._dataplusthreshold = BusBItemUsbDataplusthreshold( + device, f"{self._cmd_syntax}:DATAPLUSTHRESHold" + ) + self._lowthreshold = BusBItemUsbLowthreshold(device, f"{self._cmd_syntax}:LOWTHRESHold") + self._signaltype = BusBItemUsbSignaltype(device, f"{self._cmd_syntax}:SIGNALTYpe") + self._source = BusBItemUsbSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemUsbThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def bitrate(self) -> BusBItemUsbBitrate: + """Return the ``BUS:B:USB:BITRate`` command. + + Description: + - This command sets or queries the USB data rate for bus , where the bus number is + specified by x. + + 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 {FULL|HIGH|LOW} + - BUS:B:USB:BITRate? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``FULL`` indicates the bit rate is 12 Mbps. + - ``HIGH`` indicates the bit rate is 480 Mbps. + - ``LOW`` indicates the bit rate is 1.5 Mbps. + """ + return self._bitrate + + @property + def dataminusthreshold(self) -> BusBItemUsbDataminusthreshold: + """Return the ``BUS:B:USB:DATAMINUSTHRESHold`` command. + + Description: + - This command sets or queries the USB D- source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:DATAMINUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:DATAMINUSTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:USB:DATAMINUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:DATAMINUSTHRESHold + - BUS:B:USB:DATAMINUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the Minus threshold. + """ + return self._dataminusthreshold + + @property + def dataplusthreshold(self) -> BusBItemUsbDataplusthreshold: + """Return the ``BUS:B:USB:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the USB D+ source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:DATAPLUSTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:DATAPLUSTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:USB:DATAPLUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:DATAPLUSTHRESHold + - BUS:B:USB:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the Plus threshold. + """ + return self._dataplusthreshold + + @property + def lowthreshold(self) -> BusBItemUsbLowthreshold: + """Return the ``BUS:B:USB:LOWTHRESHold`` command. + + Description: + - This command sets or queries the USB data source threshold for the specified bus when + the signal type is differential. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:LOWTHRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:LOWTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:LOWTHRESHold + - BUS:B:USB:LOWTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the Low threshold. + """ + return self._lowthreshold + + @property + def signaltype(self) -> BusBItemUsbSignaltype: + """Return the ``BUS:B:USB:SIGNALTYpe`` command. + + Description: + - This command sets or queries the USB signal type for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SIGNALTYpe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SIGNALTYpe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:USB:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``SINGLE`` specifies single-ended signals. + - ``DIFF`` specifies differential signals. + """ + return self._signaltype + + @property + def source(self) -> BusBItemUsbSource: + """Return the ``BUS:B:USB:SOUrce`` command. + + Description: + - This command sets or queries the USB data source when the signal type is differential + for bus . The bus number is specified by x. + + 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``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:USB:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the data source for the specified USB bus. + - ``MATH`` specifies a math channel as the data source for the specified USB bus. + - ``REF`` specifies a reference waveform as the data source. + + Sub-properties: + - ``.dminus``: The ``BUS:B:USB:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:USB:SOUrce:DPLUs`` command. + """ + return self._source + + @property + def threshold(self) -> BusBItemUsbThreshold: + """Return the ``BUS:B:USB:THRESHold`` command. + + Description: + - This command sets or queries the USB DATA source High threshold for the specified bus + when the signal source is differential. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:THRESHold + - BUS:B:USB:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the USB DATA source High threshold for the specified bus. + """ + return self._threshold + + +class BusBItemType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:TYPe`` command. + + Description: + - This command sets or queries the bus type or standard for the specified bus. The bus is + specified by x. Arguments for a bus type are only available then the required serial bus + option is installed. + + 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 {ARINC429|AUDio|CAN|ETHernet|EUSB|FLEXRAY|I2C|I3C|LIN|MDIO|MIL1553B|PARallel|RS232C|SENT|SPI|SPMI|SVID|USB} + - BUS:B:TYPe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``ARINC429`` specifies the ARINC 429 avionics serial bus. + - ``AUDio`` specifies an audio bus. + - ``CAN`` specifies a Controller Area Network bus. + - ``ETHernet`` specifies the Ethernet bus. + - ``EUSB`` specifies a eUSB bus. Requires option SR-EUSB2. + - ``FLEXRAY`` specifies a FlexRay bus. + - ``I2C`` specifies the Inter-IC bus. + - ``I3C`` specifies the MIPI Improved Inter Integrated Circuit (I3C) bus. + - ``LIN`` specifies a Local Interconnect Network bus. + - ``MDIO`` specifies a MDIO bus. + - ``MIL1553B`` specifies the MIL-STD-1553 avionics serial bus. + - ``PARallel`` specifies a parallel bus. + - ``RS232C`` specifies the RS-232 Serial bus. + - ``SENT`` specifies the Single Edge Nibble Transmission (SENT) automotive serial bus. + - ``SPI`` specifies the Serial Peripheral Interface bus. + - ``SPMI`` Specifies a System Power Management Interface bus. + - ``SVID`` Specifies a Serial VID bus. + - ``USB`` specifies the Universal Serial bus. + """ # noqa: E501 + + +class BusBItemSvidDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SVID:DATA:THReshold`` command. + + Description: + - This command sets or queries the data threshold for the specified SVID bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:DATA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:DATA:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SVID:DATA:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SVID:DATA:THReshold + - BUS:B:SVID:DATA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SVID Strobe threshold for the specified bus. The argument range is -8V to + +8V. + """ + + +class BusBItemSvidDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SVID:DATA:SOUrce`` command. + + Description: + - This command sets or queries data source channel for the specified SVID bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID: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:SVID:DATA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SVID:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SVID:DATA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + + +class BusBItemSvidData(SCPICmdRead): + """The ``BUS:B:SVID:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:DATA?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.source``: The ``BUS:B:SVID:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SVID:DATA:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSvidDataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSvidDataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSvidDataSource: + """Return the ``BUS:B:SVID:DATA:SOUrce`` command. + + Description: + - This command sets or queries data source channel for the specified SVID bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID: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:SVID:DATA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SVID:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SVID:DATA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemSvidDataThreshold: + """Return the ``BUS:B:SVID:DATA:THReshold`` command. + + Description: + - This command sets or queries the data threshold for the specified SVID bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:DATA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:DATA:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SVID:DATA:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SVID:DATA:THReshold + - BUS:B:SVID:DATA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SVID Strobe threshold for the specified bus. The argument range is + -8V to +8V. + """ + return self._threshold + + +class BusBItemSvidClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SVID:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the clock threshold for the specified SVID bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:CLOCk:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SVID:CLOCk:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SVID:CLOCk:THReshold + - BUS:B:SVID:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SVID Strobe threshold for the specified bus. The argument range is -8V to + +8V. + """ + + +class BusBItemSvidClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SVID:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries clock source channel for the specified SVID bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID: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:SVID:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SVID:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SVID:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + + +class BusBItemSvidClock(SCPICmdRead): + """The ``BUS:B:SVID:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:CLOCk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.source``: The ``BUS:B:SVID:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SVID:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSvidClockSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSvidClockThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSvidClockSource: + """Return the ``BUS:B:SVID:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries clock source channel for the specified SVID bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID: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:SVID:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SVID:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SVID:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemSvidClockThreshold: + """Return the ``BUS:B:SVID:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the clock threshold for the specified SVID bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:CLOCk:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SVID:CLOCk:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SVID:CLOCk:THReshold + - BUS:B:SVID:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SVID Strobe threshold for the specified bus. The argument range is + -8V to +8V. + """ + return self._threshold + + +class BusBItemSvidAlertThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SVID:ALERT:THReshold`` command. + + Description: + - This command sets or queries the alert threshold for the specified SVID bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:ALERT:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:ALERT:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SVID:ALERT:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SVID:ALERT:THReshold + - BUS:B:SVID:ALERT:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SVID Strobe threshold for the specified bus. The argument range is -8V to + +8V. + """ + + +class BusBItemSvidAlertSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SVID:ALERT:SOUrce`` command. + + Description: + - This command sets or queries alert source channel for the specified SVID bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:ALERT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:ALERT:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SVID:ALERT:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SVID:ALERT:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SVID:ALERT:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the data source. + - ``MATH`` specifies a math channel as the data source. + - ``REF`` specifies a digital reference waveform as the data source. + """ + + +class BusBItemSvidAlert(SCPICmdRead): + """The ``BUS:B:SVID:ALERT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:ALERT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:ALERT?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.source``: The ``BUS:B:SVID:ALERT:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SVID:ALERT:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSvidAlertSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSvidAlertThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSvidAlertSource: + """Return the ``BUS:B:SVID:ALERT:SOUrce`` command. + + Description: + - This command sets or queries alert source channel for the specified SVID bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:ALERT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:ALERT:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SVID:ALERT:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SVID:ALERT:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SVID:ALERT:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the data source. + - ``MATH`` specifies a math channel as the data source. + - ``REF`` specifies a digital reference waveform as the data source. + """ + return self._source + + @property + def threshold(self) -> BusBItemSvidAlertThreshold: + """Return the ``BUS:B:SVID:ALERT:THReshold`` command. + + Description: + - This command sets or queries the alert threshold for the specified SVID bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:ALERT:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:ALERT:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SVID:ALERT:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SVID:ALERT:THReshold + - BUS:B:SVID:ALERT:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SVID Strobe threshold for the specified bus. The argument range is + -8V to +8V. + """ + return self._threshold + + +class BusBItemSvid(SCPICmdRead): + """The ``BUS:B:SVID`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.alert``: The ``BUS:B:SVID:ALERT`` command tree. + - ``.clock``: The ``BUS:B:SVID:CLOCk`` command tree. + - ``.data``: The ``BUS:B:SVID:DATA`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._alert = BusBItemSvidAlert(device, f"{self._cmd_syntax}:ALERT") + self._clock = BusBItemSvidClock(device, f"{self._cmd_syntax}:CLOCk") + self._data = BusBItemSvidData(device, f"{self._cmd_syntax}:DATA") + + @property + def alert(self) -> BusBItemSvidAlert: + """Return the ``BUS:B:SVID:ALERT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:ALERT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:ALERT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.source``: The ``BUS:B:SVID:ALERT:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SVID:ALERT:THReshold`` command. + """ + return self._alert + + @property + def clock(self) -> BusBItemSvidClock: + """Return the ``BUS:B:SVID:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.source``: The ``BUS:B:SVID:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SVID:CLOCk:THReshold`` command. + """ + return self._clock + + @property + def data(self) -> BusBItemSvidData: + """Return the ``BUS:B:SVID:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID: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: + - ``.source``: The ``BUS:B:SVID:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SVID:DATA:THReshold`` command. + """ + return self._data + + +class BusBItemSpmiSdataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPMI:SDATa:THReshold`` command. + + Description: + - This command sets or queries the SPMI Data (SDATA) source threshold for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SDATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI:SDATa:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPMI:SDATa:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPMI:SDATa:THReshold + - BUS:B:SPMI:SDATa:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the data (SDATA) source threshold value for the specified SPMI bus. + """ + + +class BusBItemSpmiSdataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPMI:SDATa:SOUrce`` command. + + Description: + - This command sets or queries the SPMI Data (SDATA) source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SDATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI: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:SPMI:SDATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPMI:SDATa:SOUrce {CH|CH_Dx>|Math|REF|REF_D} + - BUS:B:SPMI:SDATa:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``CH`` specifies an analog channel as the data source waveform for the SPMI bus. + - ``CH_Dx>`` specifies a digital channel and bit as the data source waveform for the + specified SPMI bus. + - ``Math`` specifies a math waveform as the data source waveform for the specified SPMI + bus. + - ``REF`` specifies a reference waveform as the data source waveform for the specified + SPMI bus. + - ``REF_D`` specifies a digital reference waveform and bit as the data source waveform + for the specified SPMI bus. + """ + + +class BusBItemSpmiSdata(SCPICmdRead): + """The ``BUS:B:SPMI:SDATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SDATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI:SDATa?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.source``: The ``BUS:B:SPMI:SDATa:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPMI:SDATa:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSpmiSdataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSpmiSdataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSpmiSdataSource: + """Return the ``BUS:B:SPMI:SDATa:SOUrce`` command. + + Description: + - This command sets or queries the SPMI Data (SDATA) source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SDATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI: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:SPMI:SDATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPMI:SDATa:SOUrce {CH|CH_Dx>|Math|REF|REF_D} + - BUS:B:SPMI:SDATa:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``CH`` specifies an analog channel as the data source waveform for the SPMI bus. + - ``CH_Dx>`` specifies a digital channel and bit as the data source waveform for the + specified SPMI bus. + - ``Math`` specifies a math waveform as the data source waveform for the specified + SPMI bus. + - ``REF`` specifies a reference waveform as the data source waveform for the + specified SPMI bus. + - ``REF_D`` specifies a digital reference waveform and bit as the data source + waveform for the specified SPMI bus. + """ + return self._source + + @property + def threshold(self) -> BusBItemSpmiSdataThreshold: + """Return the ``BUS:B:SPMI:SDATa:THReshold`` command. + + Description: + - This command sets or queries the SPMI Data (SDATA) source threshold for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SDATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI:SDATa:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPMI:SDATa:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPMI:SDATa:THReshold + - BUS:B:SPMI:SDATa:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the data (SDATA) source threshold value for the specified SPMI bus. + """ + return self._threshold + + +class BusBItemSpmiSclkThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPMI:SCLk:THReshold`` command. + + Description: + - This command sets or queries the SPMI Clock (SCLK) source threshold for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SCLk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI:SCLk:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPMI:SCLk:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPMI:SCLk:THReshold + - BUS:B:SPMI:SCLk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the clock (SCLK) source threshold value for the specified SPMI bus. + """ + + +class BusBItemSpmiSclkSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPMI:SCLk:SOUrce`` command. + + Description: + - This command sets or queries the SPMI Clock (SCLK) source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI: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:SPMI:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPMI:SCLk:SOUrce {CH|CH_Dx>|Math|REF|REF_D} + - BUS:B:SPMI:SCLk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``CH`` specifies an analog channel as the clock source waveform for the SPMI bus. + - ``CH_Dx>`` specifies a digital channel and bit as the clock source waveform for the + specified SPMI bus. + - ``Math`` specifies a math waveform as the clock source waveform for the specified SPMI + bus. + - ``REF`` specifies a reference waveform as the clock source waveform for the specified + SPMI bus. + - ``REF_D`` specifies a digital reference waveform and bit as the clock source + waveform for the specified SPMI bus. + """ + + +class BusBItemSpmiSclk(SCPICmdRead): + """The ``BUS:B:SPMI:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI:SCLk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.source``: The ``BUS:B:SPMI:SCLk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPMI:SCLk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSpmiSclkSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSpmiSclkThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSpmiSclkSource: + """Return the ``BUS:B:SPMI:SCLk:SOUrce`` command. + + Description: + - This command sets or queries the SPMI Clock (SCLK) source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI: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:SPMI:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPMI:SCLk:SOUrce {CH|CH_Dx>|Math|REF|REF_D} + - BUS:B:SPMI:SCLk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``CH`` specifies an analog channel as the clock source waveform for the SPMI bus. + - ``CH_Dx>`` specifies a digital channel and bit as the clock source waveform for the + specified SPMI bus. + - ``Math`` specifies a math waveform as the clock source waveform for the specified + SPMI bus. + - ``REF`` specifies a reference waveform as the clock source waveform for the + specified SPMI bus. + - ``REF_D`` specifies a digital reference waveform and bit as the clock source + waveform for the specified SPMI bus. + """ + return self._source + + @property + def threshold(self) -> BusBItemSpmiSclkThreshold: + """Return the ``BUS:B:SPMI:SCLk:THReshold`` command. + + Description: + - This command sets or queries the SPMI Clock (SCLK) source threshold for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SCLk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI:SCLk:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPMI:SCLk:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPMI:SCLk:THReshold + - BUS:B:SPMI:SCLk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the clock (SCLK) source threshold value for the specified SPMI bus. + """ + return self._threshold + + +class BusBItemSpmi(SCPICmdRead): + """The ``BUS:B:SPMI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.sclk``: The ``BUS:B:SPMI:SCLk`` command tree. + - ``.sdata``: The ``BUS:B:SPMI:SDATa`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._sclk = BusBItemSpmiSclk(device, f"{self._cmd_syntax}:SCLk") + self._sdata = BusBItemSpmiSdata(device, f"{self._cmd_syntax}:SDATa") + + @property + def sclk(self) -> BusBItemSpmiSclk: + """Return the ``BUS:B:SPMI:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI:SCLk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.source``: The ``BUS:B:SPMI:SCLk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPMI:SCLk:THReshold`` command. + """ + return self._sclk + + @property + def sdata(self) -> BusBItemSpmiSdata: + """Return the ``BUS:B:SPMI:SDATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI:SDATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI:SDATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.source``: The ``BUS:B:SPMI:SDATa:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPMI:SDATa:THReshold`` command. + """ + return self._sdata + + +class BusBItemSpiSelectThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SELect:THReshold`` command. + + Description: + - This command sets or queries the SPI Select (SS) source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:THReshold?`` 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:THReshold + - BUS:B:SPI:SELect:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI Select (SS) source threshold for the specified bus. + """ + + +class BusBItemSpiSelectSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SELect:SOUrce`` command. + + Description: + - This command sets or queries the SPI Slave Select (SS) source for the specified bus. The + bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:SPI:SELect:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` designates an analog channel as the buses' SPI Slave Select source. + - ``CH_D`` designates a digital channel as the buses' SPI Slave Select source. + - ``MATH`` designates a math waveform as the Slave Select source. + - ``REF`` designates a reference waveform as the Slave Select source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform for + the specified SPI bus. + """ + + +class BusBItemSpiSelectPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SELect:POLarity`` command. + + Description: + - This command sets or queries the SPI Slave Select (SS) polarity for the specified bus. The + bus is specified by x. + + 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: + - ``B`` is the number of the bus waveform. + - ``LOW`` sets an active low polarity. + - ``HIGH`` sets 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``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:SELect:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SELect:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPI:SELect:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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") + self._threshold = BusBItemSpiSelectThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def polarity(self) -> BusBItemSpiSelectPolarity: + """Return the ``BUS:B:SPI:SELect:POLarity`` command. + + Description: + - This command sets or queries the SPI Slave Select (SS) polarity for the specified bus. + The bus is specified by x. + + 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: + - ``B`` is the number of the bus waveform. + - ``LOW`` sets an active low polarity. + - ``HIGH`` sets an active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiSelectSource: + """Return the ``BUS:B:SPI:SELect:SOUrce`` command. + + Description: + - This command sets or queries the SPI Slave Select (SS) source for the specified bus. + The bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:SPI:SELect:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` designates an analog channel as the buses' SPI Slave Select source. + - ``CH_D`` designates a digital channel as the buses' SPI Slave Select source. + - ``MATH`` designates a math waveform as the Slave Select source. + - ``REF`` designates a reference waveform as the Slave Select source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform + for the specified SPI bus. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> BusBItemSpiSelectThreshold: + """Return the ``BUS:B:SPI:SELect:THReshold`` command. + + Description: + - This command sets or queries the SPI Select (SS) source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:THReshold?`` + 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:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:THReshold + - BUS:B:SPI:SELect:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI Select (SS) source threshold for the specified bus. + """ + return self._threshold + + +class BusBItemSpiNumberInputs(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:NUMBer:INputs`` command. + + Description: + - This command sets or queries the number of inputs for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:NUMBer:INputs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:NUMBer:INputs?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:NUMBer:INputs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:NUMBer:INputs {ONE|TWO} + - BUS:B:SPI:NUMBer:INputs? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``ONE`` sets the Data Inputs as one. + - ``TWO`` sets the Data Inputs as two. + """ + + +class BusBItemSpiNumber(SCPICmdRead): + """The ``BUS:B:SPI:NUMBer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:NUMBer?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:NUMBer?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.inputs``: The ``BUS:B:SPI:NUMBer:INputs`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputs = BusBItemSpiNumberInputs(device, f"{self._cmd_syntax}:INputs") + + @property + def inputs(self) -> BusBItemSpiNumberInputs: + """Return the ``BUS:B:SPI:NUMBer:INputs`` command. + + Description: + - This command sets or queries the number of inputs for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:NUMBer:INputs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:NUMBer:INputs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:NUMBer:INputs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:NUMBer:INputs {ONE|TWO} + - BUS:B:SPI:NUMBer:INputs? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``ONE`` sets the Data Inputs as one. + - ``TWO`` sets the Data Inputs as two. + """ + return self._inputs + + +class BusBItemSpiMosiThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:MOSi:THReshold`` command. + + Description: + - This command sets or queries the SPI MOSI source thresold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:MOSi:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MOSi:THReshold + - BUS:B:SPI:MOSi:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI MOSI Data source threshold for the specified bus. + """ + + +class BusBItemSpiMosiInput(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:MOSi:INPut`` command. + + Description: + - This command sets or queries the SPI MOSI source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi:INPut?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi:INPut?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:MOSi:INPut value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MOSi:INPut {S_Ch|CH|MATH|REF} + - BUS:B:SPI:MOSi:INPut? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` designates an analog channel as the source. + - ``MATH`` designates a math waveform as the source. + - ``REF`` designates a reference waveform as the source. + """ + + +class BusBItemSpiMosiDataPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:MOSi:DATa:POLarity`` command. + + Description: + - This command sets or queries the SPI MOSI source polarity for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi:DATa:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi: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:SPI:MOSi:DATa:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MOSi:DATa:POLarity {HIGH|LOW} + - BUS:B:SPI:MOSi:DATa:POLarity? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``HIGH`` sets the polarity to high. + - ``LOW`` sets the polarity to low. + """ + + +class BusBItemSpiMosiData(SCPICmdRead): + """The ``BUS:B:SPI:MOSi:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:MOSi:DATa:POLarity`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiMosiDataPolarity(device, f"{self._cmd_syntax}:POLarity") + + @property + def polarity(self) -> BusBItemSpiMosiDataPolarity: + """Return the ``BUS:B:SPI:MOSi:DATa:POLarity`` command. + + Description: + - This command sets or queries the SPI MOSI source polarity for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi:DATa:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi: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:SPI:MOSi:DATa:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MOSi:DATa:POLarity {HIGH|LOW} + - BUS:B:SPI:MOSi:DATa:POLarity? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``HIGH`` sets the polarity to high. + - ``LOW`` sets the polarity to low. + """ + return self._polarity + + +class BusBItemSpiMosi(SCPICmdRead): + """The ``BUS:B:SPI:MOSi`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.data``: The ``BUS:B:SPI:MOSi:DATa`` command tree. + - ``.input``: The ``BUS:B:SPI:MOSi:INPut`` command. + - ``.threshold``: The ``BUS:B:SPI:MOSi:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = BusBItemSpiMosiData(device, f"{self._cmd_syntax}:DATa") + self._input = BusBItemSpiMosiInput(device, f"{self._cmd_syntax}:INPut") + self._threshold = BusBItemSpiMosiThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def data(self) -> BusBItemSpiMosiData: + """Return the ``BUS:B:SPI:MOSi:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi: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: + - ``.polarity``: The ``BUS:B:SPI:MOSi:DATa:POLarity`` command. + """ + return self._data + + @property + def input(self) -> BusBItemSpiMosiInput: + """Return the ``BUS:B:SPI:MOSi:INPut`` command. + + Description: + - This command sets or queries the SPI MOSI source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi:INPut?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi:INPut?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:MOSi:INPut value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MOSi:INPut {S_Ch|CH|MATH|REF} + - BUS:B:SPI:MOSi:INPut? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` designates an analog channel as the source. + - ``MATH`` designates a math waveform as the source. + - ``REF`` designates a reference waveform as the source. + """ + return self._input + + @property + def threshold(self) -> BusBItemSpiMosiThreshold: + """Return the ``BUS:B:SPI:MOSi:THReshold`` command. + + Description: + - This command sets or queries the SPI MOSI source thresold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:MOSi:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MOSi:THReshold + - BUS:B:SPI:MOSi:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI MOSI Data source threshold for the specified bus. + """ + return self._threshold + + +class BusBItemSpiMisoThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:MISo:THReshold`` command. + + Description: + - This command sets or queries the SPI MISo Data source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:MISo:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MISo:THReshold + - BUS:B:SPI:MISo:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI MISo Data source threshold for the specified bus. + """ + + +class BusBItemSpiMisoInput(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:MISo:INPut`` command. + + Description: + - This command sets or queries the SPI MISo source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo:INPut?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo:INPut?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:MISo:INPut value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MISo:INPut {S_Ch|CH|MATH|REF} + - BUS:B:SPI:MISo:INPut? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` designates an analog channel as the source. + - ``MATH`` designates a math waveform as the source. + - ``REF`` designates a reference waveform as the source. + """ + + +class BusBItemSpiMisoDataPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:MISo:DATa:POLarity`` command. + + Description: + - This command sets or queries the SPI MISo Data source polarity for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo:DATa:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo: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:SPI:MISo:DATa:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MISo:DATa:POLarity {HIGH|LOW} + - BUS:B:SPI:MISo:DATa:POLarity? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``HIGH`` sets the polarity to high. + - ``LOW`` sets the polarity to low. + """ + + +class BusBItemSpiMisoData(SCPICmdRead): + """The ``BUS:B:SPI:MISo:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:MISo:DATa:POLarity`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiMisoDataPolarity(device, f"{self._cmd_syntax}:POLarity") + + @property + def polarity(self) -> BusBItemSpiMisoDataPolarity: + """Return the ``BUS:B:SPI:MISo:DATa:POLarity`` command. + + Description: + - This command sets or queries the SPI MISo Data source polarity for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo:DATa:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo: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:SPI:MISo:DATa:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MISo:DATa:POLarity {HIGH|LOW} + - BUS:B:SPI:MISo:DATa:POLarity? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``HIGH`` sets the polarity to high. + - ``LOW`` sets the polarity to low. + """ + return self._polarity + + +class BusBItemSpiMiso(SCPICmdRead): + """The ``BUS:B:SPI:MISo`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.data``: The ``BUS:B:SPI:MISo:DATa`` command tree. + - ``.input``: The ``BUS:B:SPI:MISo:INPut`` command. + - ``.threshold``: The ``BUS:B:SPI:MISo:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = BusBItemSpiMisoData(device, f"{self._cmd_syntax}:DATa") + self._input = BusBItemSpiMisoInput(device, f"{self._cmd_syntax}:INPut") + self._threshold = BusBItemSpiMisoThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def data(self) -> BusBItemSpiMisoData: + """Return the ``BUS:B:SPI:MISo:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo: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: + - ``.polarity``: The ``BUS:B:SPI:MISo:DATa:POLarity`` command. + """ + return self._data + + @property + def input(self) -> BusBItemSpiMisoInput: + """Return the ``BUS:B:SPI:MISo:INPut`` command. + + Description: + - This command sets or queries the SPI MISo source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo:INPut?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo:INPut?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:MISo:INPut value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MISo:INPut {S_Ch|CH|MATH|REF} + - BUS:B:SPI:MISo:INPut? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` designates an analog channel as the source. + - ``MATH`` designates a math waveform as the source. + - ``REF`` designates a reference waveform as the source. + """ + return self._input + + @property + def threshold(self) -> BusBItemSpiMisoThreshold: + """Return the ``BUS:B:SPI:MISo:THReshold`` command. + + Description: + - This command sets or queries the SPI MISo Data source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:MISo:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:MISo:THReshold + - BUS:B:SPI:MISo:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI MISo Data source threshold for the specified bus. + """ + return self._threshold + + +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 sets or queries the SPI framing setting for the specified bus. The bus number + is specified by x. + + 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 {IDLE|SS} + - BUS:B:SPI:FRAMING? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``IDLE`` specifies IDLE SPI framing. + - ``SS`` specifies SS SPI framing. + """ + + +class BusBItemSpiDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:THReshold`` command. + + Description: + - This command sets or queries the SPI Data (Data) source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:THReshold?`` 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:THReshold + - BUS:B:SPI:DATa:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI Data (SDA) source threshold for the specified bus. + """ + + +class BusBItemSpiDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:SOUrce`` command. + + Description: + - This command sets or queries the SPI Data (Data) source for the bus number specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI: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:SPI:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:SPI:DATa:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` designates an analog channel as the data source for the specified SPI bus. + - ``CH_D`` designates an digital channel as the bus SPI clock source. + - ``MATH`` designates a math waveform as the data source. + - ``REF`` designates a reference waveform as the data source. + - ``REF_D`` specifies a digital reference waveform as the data source waveform for the + specified SPI bus. + """ + + +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 BusBItemSpiDataPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:POLarity`` command. + + Description: + - This command sets or queries the SPI Data (Data) source polarity for the bus number + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI: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:SPI:DATa:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:POLarity {HIGH|LOW} + - BUS:B:SPI:DATa:POLarity? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``HIGH`` sets the SPI data polarity to active high. + - ``LOW`` sets the SPI data polarity to active low. + """ + + +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: + - ``.polarity``: The ``BUS:B:SPI:DATa:POLarity`` command. + - ``.size``: The ``BUS:B:SPI:DATa:SIZe`` command. + - ``.source``: The ``BUS:B:SPI:DATa:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPI:DATa:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiDataPolarity(device, f"{self._cmd_syntax}:POLarity") + self._size = BusBItemSpiDataSize(device, f"{self._cmd_syntax}:SIZe") + self._source = BusBItemSpiDataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSpiDataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def polarity(self) -> BusBItemSpiDataPolarity: + """Return the ``BUS:B:SPI:DATa:POLarity`` command. + + Description: + - This command sets or queries the SPI Data (Data) source polarity for the bus number + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI: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:SPI:DATa:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:POLarity {HIGH|LOW} + - BUS:B:SPI:DATa:POLarity? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``HIGH`` sets the SPI data polarity to active high. + - ``LOW`` sets the SPI data polarity to active low. + """ + return self._polarity + + @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 source(self) -> BusBItemSpiDataSource: + """Return the ``BUS:B:SPI:DATa:SOUrce`` command. + + Description: + - This command sets or queries the SPI Data (Data) source for the bus number specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI: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:SPI:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:SPI:DATa:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` designates an analog channel as the data source for the specified SPI bus. + - ``CH_D`` designates an digital channel as the bus SPI clock source. + - ``MATH`` designates a math waveform as the data source. + - ``REF`` designates a reference waveform as the data source. + - ``REF_D`` specifies a digital reference waveform as the data source waveform for + the specified SPI bus. + """ + return self._source + + @property + def threshold(self) -> BusBItemSpiDataThreshold: + """Return the ``BUS:B:SPI:DATa:THReshold`` command. + + Description: + - This command sets or queries the SPI Data (Data) source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:THReshold?`` + 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:THReshold + - BUS:B:SPI:DATa:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI Data (SDA) source threshold for the specified bus. + """ + return self._threshold + + +class BusBItemSpiClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the SPI Clock (SCLK) source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:THReshold?`` 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:THReshold + - BUS:B:SPI:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI Clock (SCLK) source threshold for the specified bus. + """ + + +class BusBItemSpiClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the SPI clock (SCLK) source for the specified bus. The bus is + specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:SPI:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` designates an analog channel as the bus SPI clock source. + - ``CH_D`` designates an digital channel as the bus SPI clock source. + - ``MATH`` designates a math waveform as the clock source. + - ``REF`` designates a reference waveform as the clock source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform for + the specified SPI bus. + """ + + +class BusBItemSpiClockPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:CLOCk:POLarity`` command. + + Description: + - This command sets or queries the SPI clock (SCLK) source polarity for the specified bus. + The bus is specified by x. + + 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: + - ``B`` is the number of the bus waveform. + - ``FALL`` sets the clock to the falling edge of the signal. + - ``RISE`` sets the clock to the rising edge of the signal. + """ + + +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``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPI:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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") + self._threshold = BusBItemSpiClockThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def polarity(self) -> BusBItemSpiClockPolarity: + """Return the ``BUS:B:SPI:CLOCk:POLarity`` command. + + Description: + - This command sets or queries the SPI clock (SCLK) source polarity for the specified + bus. The bus is specified by x. + + 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: + - ``B`` is the number of the bus waveform. + - ``FALL`` sets the clock to the falling edge of the signal. + - ``RISE`` sets the clock to the rising edge of the signal. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiClockSource: + """Return the ``BUS:B:SPI:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the SPI clock (SCLK) source for the specified bus. The + bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:SPI:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` designates an analog channel as the bus SPI clock source. + - ``CH_D`` designates an digital channel as the bus SPI clock source. + - ``MATH`` designates a math waveform as the clock source. + - ``REF`` designates a reference waveform as the clock source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform + for the specified SPI bus. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> BusBItemSpiClockThreshold: + """Return the ``BUS:B:SPI:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the SPI Clock (SCLK) source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:THReshold?`` + 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:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:THReshold + - BUS:B:SPI:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SPI Clock (SCLK) source threshold for the specified bus. + """ + return self._threshold + + +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. + - ``.clock``: The ``BUS:B:SPI:CLOCk`` command tree. + - ``.data``: The ``BUS:B:SPI:DATa`` command tree. + - ``.framing``: The ``BUS:B:SPI:FRAMING`` command. + - ``.idletime``: The ``BUS:B:SPI:IDLETime`` command. + - ``.miso``: The ``BUS:B:SPI:MISo`` command tree. + - ``.mosi``: The ``BUS:B:SPI:MOSi`` command tree. + - ``.number``: The ``BUS:B:SPI:NUMBer`` command tree. + - ``.select``: The ``BUS:B:SPI:SELect`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitorder = BusBItemSpiBitorder(device, f"{self._cmd_syntax}:BITOrder") + self._clock = BusBItemSpiClock(device, f"{self._cmd_syntax}:CLOCk") + 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._miso = BusBItemSpiMiso(device, f"{self._cmd_syntax}:MISo") + self._mosi = BusBItemSpiMosi(device, f"{self._cmd_syntax}:MOSi") + self._number = BusBItemSpiNumber(device, f"{self._cmd_syntax}:NUMBer") + self._select = BusBItemSpiSelect(device, f"{self._cmd_syntax}:SELect") + + @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 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``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPI:CLOCk:THReshold`` command. + """ + return self._clock + + @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: + - ``.polarity``: The ``BUS:B:SPI:DATa:POLarity`` command. + - ``.size``: The ``BUS:B:SPI:DATa:SIZe`` command. + - ``.source``: The ``BUS:B:SPI:DATa:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPI:DATa:THReshold`` command. + """ + return self._data + + @property + def framing(self) -> BusBItemSpiFraming: + """Return the ``BUS:B:SPI:FRAMING`` command. + + Description: + - This command sets or queries the SPI framing setting for the specified bus. The bus + number is specified by x. + + 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 {IDLE|SS} + - BUS:B:SPI:FRAMING? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``IDLE`` specifies IDLE SPI framing. + - ``SS`` specifies SS 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 miso(self) -> BusBItemSpiMiso: + """Return the ``BUS:B:SPI:MISo`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MISo?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MISo?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.data``: The ``BUS:B:SPI:MISo:DATa`` command tree. + - ``.input``: The ``BUS:B:SPI:MISo:INPut`` command. + - ``.threshold``: The ``BUS:B:SPI:MISo:THReshold`` command. + """ + return self._miso + + @property + def mosi(self) -> BusBItemSpiMosi: + """Return the ``BUS:B:SPI:MOSi`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:MOSi?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:MOSi?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.data``: The ``BUS:B:SPI:MOSi:DATa`` command tree. + - ``.input``: The ``BUS:B:SPI:MOSi:INPut`` command. + - ``.threshold``: The ``BUS:B:SPI:MOSi:THReshold`` command. + """ + return self._mosi + + @property + def number(self) -> BusBItemSpiNumber: + """Return the ``BUS:B:SPI:NUMBer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:NUMBer?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:NUMBer?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.inputs``: The ``BUS:B:SPI:NUMBer:INputs`` command. + """ + return self._number + + @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``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:SELect:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SELect:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPI:SELect:THReshold`` command. + """ + return self._select + + +class BusBItemSpacewireSyncValue(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:SYNC:VALUe`` command. + + Description: + - This command sets or queries sync value for sync option data. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:SYNC:VALUe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC:VALUe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC:VALUe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:SYNC:VALUe + - BUS:B:SPACEWIRe:SYNC:VALUe? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the sync value for sync option data. + """ + + +class BusBItemSpacewireSyncPattern(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:SYNC:PATTern`` command. + + Description: + - This command sets or queries sync pattern for SpaceWire decoding. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:SYNC:PATTern?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC:PATTern?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC:PATTern value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:SYNC:PATTern + - BUS:B:SPACEWIRe:SYNC:PATTern? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the sync pattern. + """ + + +class BusBItemSpacewireSyncCount(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:SYNC:COUnt`` command. + + Description: + - This command sets or queries the length of the data string in bytes to be used for a + SpaceWire sync bytes. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:SYNC:COUnt?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC:COUnt?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC:COUnt value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:SYNC:COUnt + - BUS:B:SPACEWIRe:SYNC:COUnt? + ``` + + Info: + - ``B`` is the bus number. + - ``NR1`` specifies the length of the data string in bytes. The mininum is 2 and the maximum + is 10. The default is 2 bytes. + """ + + +class BusBItemSpacewireSync(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:SYNC`` command. + + Description: + - This command sets or queries sync for SpaceWire decoding. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:SYNC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:SYNC {DATA|NULL|AUTO|CUSTom} + - BUS:B:SPACEWIRe:SYNC? + ``` + + Info: + - ``B`` is the bus number. + - ``DATA`` specifies sync as data. + - ``NULL`` specifies sync as null. + - ``AUTO`` specifies sync as auto. + - ``CUSTom`` specifies sync as custom. + + Properties: + - ``.count``: The ``BUS:B:SPACEWIRe:SYNC:COUnt`` command. + - ``.pattern``: The ``BUS:B:SPACEWIRe:SYNC:PATTern`` command. + - ``.value``: The ``BUS:B:SPACEWIRe:SYNC:VALUe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._count = BusBItemSpacewireSyncCount(device, f"{self._cmd_syntax}:COUnt") + self._pattern = BusBItemSpacewireSyncPattern(device, f"{self._cmd_syntax}:PATTern") + self._value = BusBItemSpacewireSyncValue(device, f"{self._cmd_syntax}:VALUe") + + @property + def count(self) -> BusBItemSpacewireSyncCount: + """Return the ``BUS:B:SPACEWIRe:SYNC:COUnt`` command. + + Description: + - This command sets or queries the length of the data string in bytes to be used for a + SpaceWire sync bytes. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:SYNC:COUnt?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC:COUnt?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:SYNC:COUnt value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:SYNC:COUnt + - BUS:B:SPACEWIRe:SYNC:COUnt? + ``` + + Info: + - ``B`` is the bus number. + - ``NR1`` specifies the length of the data string in bytes. The mininum is 2 and the + maximum is 10. The default is 2 bytes. + """ + return self._count + + @property + def pattern(self) -> BusBItemSpacewireSyncPattern: + """Return the ``BUS:B:SPACEWIRe:SYNC:PATTern`` command. + + Description: + - This command sets or queries sync pattern for SpaceWire decoding. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:SYNC:PATTern?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC:PATTern?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:SYNC:PATTern value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:SYNC:PATTern + - BUS:B:SPACEWIRe:SYNC:PATTern? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the sync pattern. + """ + return self._pattern + + @property + def value(self) -> BusBItemSpacewireSyncValue: + """Return the ``BUS:B:SPACEWIRe:SYNC:VALUe`` command. + + Description: + - This command sets or queries sync value for sync option data. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:SYNC:VALUe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC:VALUe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:SYNC:VALUe value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:SYNC:VALUe + - BUS:B:SPACEWIRe:SYNC:VALUe? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the sync value for sync option data. + """ + return self._value + + +class BusBItemSpacewireStrobeThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:STRobe:THReshold`` command. + + Description: + - This command sets or queries the threshold level of the SpaceWire Strobe signal for the + specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:STRobe:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:STRobe:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:STRobe:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:STRobe:THReshold + - BUS:B:SPACEWIRe:STRobe:THReshold? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the SpaceWire Strobe signal threshold level for the specified bus, in + volts. + """ + + +class BusBItemSpacewireStrobeSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:STRobe:SOUrce`` command. + + Description: + - This command sets or queries the source of the SpaceWire Strobe signal for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:STRobe:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:STRobe:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:STRobe:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:STRobe:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SPACEWIRe:STRobe:SOUrce? + ``` + + Info: + - ``B`` is the bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the strobe signal, where is + the channel number. + - ``MATH`` specifies a math channel as the source for the strobe signal, where is the + math waveform number. + - ``REF`` specifies a reference waveform as the source for the strobe signal, where + is the reference waveform number. + """ + + +class BusBItemSpacewireStrobe(SCPICmdRead): + """The ``BUS:B:SPACEWIRe:STRobe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:STRobe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:STRobe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Properties: + - ``.source``: The ``BUS:B:SPACEWIRe:STRobe:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPACEWIRe:STRobe:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSpacewireStrobeSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSpacewireStrobeThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSpacewireStrobeSource: + """Return the ``BUS:B:SPACEWIRe:STRobe:SOUrce`` command. + + Description: + - This command sets or queries the source of the SpaceWire Strobe signal for the + specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:STRobe:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:SPACEWIRe:STRobe:SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:STRobe:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:STRobe:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SPACEWIRe:STRobe:SOUrce? + ``` + + Info: + - ``B`` is the bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the strobe signal, where + is the channel number. + - ``MATH`` specifies a math channel as the source for the strobe signal, where is + the math waveform number. + - ``REF`` specifies a reference waveform as the source for the strobe signal, where + is the reference waveform number. + """ + return self._source + + @property + def threshold(self) -> BusBItemSpacewireStrobeThreshold: + """Return the ``BUS:B:SPACEWIRe:STRobe:THReshold`` command. + + Description: + - This command sets or queries the threshold level of the SpaceWire Strobe signal for + the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:STRobe:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:SPACEWIRe:STRobe:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:STRobe:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:STRobe:THReshold + - BUS:B:SPACEWIRe:STRobe:THReshold? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the SpaceWire Strobe signal threshold level for the specified bus, + in volts. + """ + return self._threshold + + +class BusBItemSpacewireDecodeType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:DECode:TYPe`` command. + + Description: + - This command sets or queries the decode type for SpaceWire bus decode. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DECode:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:DECode:TYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPACEWIRe:DECode:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:DECode:TYPe {STRObe|DATARate} + - BUS:B:SPACEWIRe:DECode:TYPe? + ``` + + Info: + - ``B`` is the bus number. + - ``STRObe`` specifies the decode type as strobe. + - ``DATARate`` specifies the decode type as data rate. + """ + + +class BusBItemSpacewireDecode(SCPICmdRead): + """The ``BUS:B:SPACEWIRe:DECode`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DECode?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:DECode?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Properties: + - ``.type``: The ``BUS:B:SPACEWIRe:DECode:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = BusBItemSpacewireDecodeType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> BusBItemSpacewireDecodeType: + """Return the ``BUS:B:SPACEWIRe:DECode:TYPe`` command. + + Description: + - This command sets or queries the decode type for SpaceWire bus decode. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DECode:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:DECode:TYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:DECode:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:DECode:TYPe {STRObe|DATARate} + - BUS:B:SPACEWIRe:DECode:TYPe? + ``` + + Info: + - ``B`` is the bus number. + - ``STRObe`` specifies the decode type as strobe. + - ``DATARate`` specifies the decode type as data rate. + """ + return self._type + + +class BusBItemSpacewireDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:DATa:THReshold`` command. + + Description: + - This command sets or queries the threshold of the SpaceWire Data signal for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:DATa:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:DATa:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:DATa:THReshold + - BUS:B:SPACEWIRe:DATa:THReshold? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the SpaceWire Data threshold level for the specified bus, in volts. + """ + + +class BusBItemSpacewireDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:DATa:SOUrce`` command. + + Description: + - This command sets or queries the source of the SpaceWire Data signal for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe: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:SPACEWIRe:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:DATa:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SPACEWIRe:DATa:SOUrce? + ``` + + Info: + - ``B`` is the bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the data signal, where is the + channel number. + - ``MATH`` specifies a math channel as the source for the data signal, where is the + math waveform number. + - ``REF`` specifies a reference waveform as the source for the data signal, where is + the reference waveform number. + """ + + +class BusBItemSpacewireData(SCPICmdRead): + """The ``BUS:B:SPACEWIRe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Properties: + - ``.source``: The ``BUS:B:SPACEWIRe:DATa:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPACEWIRe:DATa:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSpacewireDataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSpacewireDataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSpacewireDataSource: + """Return the ``BUS:B:SPACEWIRe:DATa:SOUrce`` command. + + Description: + - This command sets or queries the source of the SpaceWire Data signal for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe: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:SPACEWIRe:DATa:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:DATa:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SPACEWIRe:DATa:SOUrce? + ``` + + Info: + - ``B`` is the bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the data signal, where is + the channel number. + - ``MATH`` specifies a math channel as the source for the data signal, where is + the math waveform number. + - ``REF`` specifies a reference waveform as the source for the data signal, where + is the reference waveform number. + """ + return self._source + + @property + def threshold(self) -> BusBItemSpacewireDataThreshold: + """Return the ``BUS:B:SPACEWIRe:DATa:THReshold`` command. + + Description: + - This command sets or queries the threshold of the SpaceWire Data signal for the + specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DATa:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:SPACEWIRe:DATa:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPACEWIRe:DATa:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:DATa:THReshold + - BUS:B:SPACEWIRe:DATa:THReshold? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the SpaceWire Data threshold level for the specified bus, in volts. + """ + return self._threshold + + +class BusBItemSpacewireBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPACEWIRe:BITRate`` command. + + Description: + - This command sets or queries the SpaceWire bit rate. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPACEWIRe:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:BITRate + - BUS:B:SPACEWIRe:BITRate? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the SpaceWire bit rate for the specified bus. The valid bit rate range + is 2 Mbps to 200 Mbps. The default value is 10 Mbps. + """ + + +class BusBItemSpacewire(SCPICmdRead): + """The ``BUS:B:SPACEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Properties: + - ``.bitrate``: The ``BUS:B:SPACEWIRe:BITRate`` command. + - ``.data``: The ``BUS:B:SPACEWIRe:DATa`` command tree. + - ``.decode``: The ``BUS:B:SPACEWIRe:DECode`` command tree. + - ``.strobe``: The ``BUS:B:SPACEWIRe:STRobe`` command tree. + - ``.sync``: The ``BUS:B:SPACEWIRe:SYNC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemSpacewireBitrate(device, f"{self._cmd_syntax}:BITRate") + self._data = BusBItemSpacewireData(device, f"{self._cmd_syntax}:DATa") + self._decode = BusBItemSpacewireDecode(device, f"{self._cmd_syntax}:DECode") + self._strobe = BusBItemSpacewireStrobe(device, f"{self._cmd_syntax}:STRobe") + self._sync = BusBItemSpacewireSync(device, f"{self._cmd_syntax}:SYNC") + + @property + def bitrate(self) -> BusBItemSpacewireBitrate: + """Return the ``BUS:B:SPACEWIRe:BITRate`` command. + + Description: + - This command sets or queries the SpaceWire bit rate. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:BITRate?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPACEWIRe:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:BITRate + - BUS:B:SPACEWIRe:BITRate? + ``` + + Info: + - ``B`` is the bus number. + - ``NR3`` specifies the SpaceWire bit rate for the specified bus. The valid bit rate + range is 2 Mbps to 200 Mbps. The default value is 10 Mbps. + """ + return self._bitrate + + @property + def data(self) -> BusBItemSpacewireData: + """Return the ``BUS:B:SPACEWIRe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:DATa?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Sub-properties: + - ``.source``: The ``BUS:B:SPACEWIRe:DATa:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPACEWIRe:DATa:THReshold`` command. + """ + return self._data + + @property + def decode(self) -> BusBItemSpacewireDecode: + """Return the ``BUS:B:SPACEWIRe:DECode`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:DECode?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:DECode?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Sub-properties: + - ``.type``: The ``BUS:B:SPACEWIRe:DECode:TYPe`` command. + """ + return self._decode + + @property + def strobe(self) -> BusBItemSpacewireStrobe: + """Return the ``BUS:B:SPACEWIRe:STRobe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:STRobe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:STRobe?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Sub-properties: + - ``.source``: The ``BUS:B:SPACEWIRe:STRobe:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SPACEWIRe:STRobe:THReshold`` command. + """ + return self._strobe + + @property + def sync(self) -> BusBItemSpacewireSync: + """Return the ``BUS:B:SPACEWIRe:SYNC`` command. + + Description: + - This command sets or queries sync for SpaceWire decoding. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe:SYNC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPACEWIRe:SYNC value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPACEWIRe:SYNC {DATA|NULL|AUTO|CUSTom} + - BUS:B:SPACEWIRe:SYNC? + ``` + + Info: + - ``B`` is the bus number. + - ``DATA`` specifies sync as data. + - ``NULL`` specifies sync as null. + - ``AUTO`` specifies sync as auto. + - ``CUSTom`` specifies sync as custom. + + Sub-properties: + - ``.count``: The ``BUS:B:SPACEWIRe:SYNC:COUnt`` command. + - ``.pattern``: The ``BUS:B:SPACEWIRe:SYNC:PATTern`` command. + - ``.value``: The ``BUS:B:SPACEWIRe:SYNC:VALUe`` command. + """ + return self._sync + + +class BusBItemSmbusPecValue(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SMBUS:PEC:VALUe`` command. + + Description: + - This command sets or queries the SMBus PEC selection for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:PEC:VALUe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:PEC:VALUe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SMBUS:PEC:VALUe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:PEC:VALUe {TRUe|FALSe} + - BUS:B:SMBUS:PEC:VALUe? + ``` + + Info: + - ``B`` is the bus number. + - ``TRUe`` specifies the SMBus PEC selection as true. + - ``FALSe`` specifies the SMBus PEC selection as false. + """ + + +class BusBItemSmbusPec(SCPICmdRead): + """The ``BUS:B:SMBUS:PEC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:PEC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:PEC?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Properties: + - ``.value``: The ``BUS:B:SMBUS:PEC:VALUe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = BusBItemSmbusPecValue(device, f"{self._cmd_syntax}:VALUe") + + @property + def value(self) -> BusBItemSmbusPecValue: + """Return the ``BUS:B:SMBUS:PEC:VALUe`` command. + + Description: + - This command sets or queries the SMBus PEC selection for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:PEC:VALUe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:PEC:VALUe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SMBUS:PEC:VALUe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:PEC:VALUe {TRUe|FALSe} + - BUS:B:SMBUS:PEC:VALUe? + ``` + + Info: + - ``B`` is the bus number. + - ``TRUe`` specifies the SMBus PEC selection as true. + - ``FALSe`` specifies the SMBus PEC selection as false. + """ + return self._value + + +class BusBItemSmbusDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SMBUS:DATA:THReshold`` command. + + Description: + - This command sets or queries the SMBUS data source threshold for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:DATA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:DATA:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SMBUS:DATA:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:DATA:THReshold + - BUS:B:SMBUS:DATA:THReshold? + ``` + + Info: + - ``B`` is the bus number. + - ```` specifies the SMBUS data threshold for the specified bus. The valid range is -8V + to +8V. + """ + + +class BusBItemSmbusDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SMBUS:DATA:SOUrce`` command. + + Description: + - This command sets or queries the data source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS: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:SMBUS:DATA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SMBUS:DATA:SOUrce? + ``` + + Info: + - ``B`` is the bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the data signal, where is the + channel number. + - ``MATH`` specifies a math channel as the source for the data signal, where is the + math waveform number. + - ``REF`` specifies a reference waveform as the source for the data signal, where is + the reference waveform number. + """ + + +class BusBItemSmbusData(SCPICmdRead): + """The ``BUS:B:SMBUS:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:DATA?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Properties: + - ``.source``: The ``BUS:B:SMBUS:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SMBUS:DATA:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSmbusDataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSmbusDataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSmbusDataSource: + """Return the ``BUS:B:SMBUS:DATA:SOUrce`` command. + + Description: + - This command sets or queries the data source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS: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:SMBUS:DATA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SMBUS:DATA:SOUrce? + ``` + + Info: + - ``B`` is the bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the data signal, where is + the channel number. + - ``MATH`` specifies a math channel as the source for the data signal, where is + the math waveform number. + - ``REF`` specifies a reference waveform as the source for the data signal, where + is the reference waveform number. + """ + return self._source + + @property + def threshold(self) -> BusBItemSmbusDataThreshold: + """Return the ``BUS:B:SMBUS:DATA:THReshold`` command. + + Description: + - This command sets or queries the SMBUS data source threshold for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:DATA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:DATA:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SMBUS:DATA:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:DATA:THReshold + - BUS:B:SMBUS:DATA:THReshold? + ``` + + Info: + - ``B`` is the bus number. + - ```` specifies the SMBUS data threshold for the specified bus. The valid range is + -8V to +8V. + """ + return self._threshold + + +class BusBItemSmbusClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SMBUS:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the SMBUS clock source threshold for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:CLOCk:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SMBUS:CLOCk:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:CLOCk:THReshold + - BUS:B:SMBUS:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the bus number. + - ```` specifies the SMBUS clock threshold for the specified bus. The valid range is + -8V to +8V. + """ + + +class BusBItemSmbusClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SMBUS:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the clock source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS: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:SMBUS:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SMBUS:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the data signal, where is the + channel number. + - ``MATH`` specifies a math channel as the source for the data signal, where is the + math waveform number. + - ``REF`` specifies a reference waveform as the source for the data signal, where is + the reference waveform number. + """ + + +class BusBItemSmbusClock(SCPICmdRead): + """The ``BUS:B:SMBUS:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Properties: + - ``.source``: The ``BUS:B:SMBUS:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SMBUS:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSmbusClockSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSmbusClockThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSmbusClockSource: + """Return the ``BUS:B:SMBUS:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the clock source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS: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:SMBUS:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SMBUS:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the data signal, where is + the channel number. + - ``MATH`` specifies a math channel as the source for the data signal, where is + the math waveform number. + - ``REF`` specifies a reference waveform as the source for the data signal, where + is the reference waveform number. + """ + return self._source + + @property + def threshold(self) -> BusBItemSmbusClockThreshold: + """Return the ``BUS:B:SMBUS:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the SMBUS clock source threshold for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:CLOCk:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SMBUS:CLOCk:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SMBUS:CLOCk:THReshold + - BUS:B:SMBUS:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the bus number. + - ```` specifies the SMBUS clock threshold for the specified bus. The valid range + is -8V to +8V. + """ + return self._threshold + + +class BusBItemSmbus(SCPICmdRead): + """The ``BUS:B:SMBUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Properties: + - ``.clock``: The ``BUS:B:SMBUS:CLOCk`` command tree. + - ``.data``: The ``BUS:B:SMBUS:DATA`` command tree. + - ``.pec``: The ``BUS:B:SMBUS:PEC`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._clock = BusBItemSmbusClock(device, f"{self._cmd_syntax}:CLOCk") + self._data = BusBItemSmbusData(device, f"{self._cmd_syntax}:DATA") + self._pec = BusBItemSmbusPec(device, f"{self._cmd_syntax}:PEC") + + @property + def clock(self) -> BusBItemSmbusClock: + """Return the ``BUS:B:SMBUS:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Sub-properties: + - ``.source``: The ``BUS:B:SMBUS:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SMBUS:CLOCk:THReshold`` command. + """ + return self._clock + + @property + def data(self) -> BusBItemSmbusData: + """Return the ``BUS:B:SMBUS:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Sub-properties: + - ``.source``: The ``BUS:B:SMBUS:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SMBUS:DATA:THReshold`` command. + """ + return self._data + + @property + def pec(self) -> BusBItemSmbusPec: + """Return the ``BUS:B:SMBUS:PEC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS:PEC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS:PEC?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Sub-properties: + - ``.value``: The ``BUS:B:SMBUS:PEC:VALUe`` command. + """ + return self._pec + + +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 BusBItemSentThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:THRESHold`` command. + + Description: + - This command sets or queries the SENT DATA source threshold for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:THRESHold?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:THRESHold + - BUS:B:SENT:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` sets the data source threshold value in volts. + """ + + +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 {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - BUS:B:SENT:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. + - ``CH_D`` specifies a digital channel as the clock source waveform for the specified + audio bus. + - ``Math`` specifies a math waveform as the clock source waveform for the audio bus. + - ``REF`` specifies a reference waveform as the clock source waveform for the audio bus. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform for + the specified audio 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. + - ``.threshold``: The ``BUS:B:SENT:THRESHold`` command. + - ``.ticktime``: The ``BUS:B:SENT:TICKTIME`` command. + - ``.ticktolerance``: The ``BUS:B:SENT:TICKTOLerance`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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._threshold = BusBItemSentThreshold(device, f"{self._cmd_syntax}:THRESHold") + 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 {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - BUS:B:SENT:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. + - ``CH_D`` specifies a digital channel as the clock source waveform for the + specified audio bus. + - ``Math`` specifies a math waveform as the clock source waveform for the audio bus. + - ``REF`` specifies a reference waveform as the clock source waveform for the audio + bus. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform + for the specified audio bus. + """ + return self._source + + @property + def threshold(self) -> BusBItemSentThreshold: + """Return the ``BUS:B:SENT:THRESHold`` command. + + Description: + - This command sets or queries the SENT DATA source threshold for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:THRESHold + - BUS:B:SENT:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` sets the data source threshold value in volts. + """ + return self._threshold + + @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 BusBItemSdlcModulo(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SDLC:MODulo`` command. + + Description: + - This command sets or queries the SDLC Bus Modulo. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:MODulo?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:MODulo?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SDLC:MODulo value`` command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:MODulo {8|128} + - BUS:B:SDLC:MODulo? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``8`` specifies the C-Field size is 8 bit in SDLC frame. + - ``128`` specifies the C-Field size is 16 bit in SDLC frame. + """ + + +class BusBItemSdlcEncoding(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SDLC:ENCoding`` command. + + Description: + - This command sets or queries the SDLC Bus Encoding. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:ENCoding?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:ENCoding?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SDLC:ENCoding value`` command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:ENCoding {DISCrete|INVert} + - BUS:B:SDLC:ENCoding? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``DISCrete`` specifies the encoding mechanism is Discrete Transmission (NRZ). + - ``INVert`` specifies that encoding mechanism is Invert On Zero i.e. NRZI. + """ + + +class BusBItemSdlcDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SDLC:DATA:THReshold`` command. + + Description: + - This command sets or queries the SDLC data source threshold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:DATA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:DATA:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SDLC:DATA:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:DATA:THReshold + - BUS:B:SDLC:DATA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the SDLC Strobe threshold for the specified bus. The valid range is -8V to + +8V. + """ + + +class BusBItemSdlcDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SDLC:DATA:SOUrce`` command. + + Description: + - This command sets or queries the source for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC: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:SDLC:DATA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SDLC:DATA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + + +class BusBItemSdlcData(SCPICmdRead): + """The ``BUS:B:SDLC:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:DATA?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:SDLC:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SDLC:DATA:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemSdlcDataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemSdlcDataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemSdlcDataSource: + """Return the ``BUS:B:SDLC:DATA:SOUrce`` command. + + Description: + - This command sets or queries the source for the specified bus. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC: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:SDLC:DATA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:SDLC:DATA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemSdlcDataThreshold: + """Return the ``BUS:B:SDLC:DATA:THReshold`` command. + + Description: + - This command sets or queries the SDLC data source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:DATA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:DATA:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SDLC:DATA:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:DATA:THReshold + - BUS:B:SDLC:DATA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the SDLC Strobe threshold for the specified bus. The valid range is -8V + to +8V. + """ + return self._threshold + + +class BusBItemSdlcBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SDLC:BITRate`` command. + + Description: + - This command sets or queries the bit rate for the specified SDLC bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SDLC:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:BITRate + - BUS:B:SDLC:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the bit rate. The default bit rate is 10 kbs and varies 300 ~ + 1000000000. + """ + + +class BusBItemSdlc(SCPICmdRead): + """The ``BUS:B:SDLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitrate``: The ``BUS:B:SDLC:BITRate`` command. + - ``.data``: The ``BUS:B:SDLC:DATA`` command tree. + - ``.encoding``: The ``BUS:B:SDLC:ENCoding`` command. + - ``.modulo``: The ``BUS:B:SDLC:MODulo`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemSdlcBitrate(device, f"{self._cmd_syntax}:BITRate") + self._data = BusBItemSdlcData(device, f"{self._cmd_syntax}:DATA") + self._encoding = BusBItemSdlcEncoding(device, f"{self._cmd_syntax}:ENCoding") + self._modulo = BusBItemSdlcModulo(device, f"{self._cmd_syntax}:MODulo") + + @property + def bitrate(self) -> BusBItemSdlcBitrate: + """Return the ``BUS:B:SDLC:BITRate`` command. + + Description: + - This command sets or queries the bit rate for the specified SDLC bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SDLC:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:BITRate + - BUS:B:SDLC:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the bit rate. The default bit rate is 10 kbs and varies 300 ~ + 1000000000. + """ + return self._bitrate + + @property + def data(self) -> BusBItemSdlcData: + """Return the ``BUS:B:SDLC:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:SDLC:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:SDLC:DATA:THReshold`` command. + """ + return self._data + + @property + def encoding(self) -> BusBItemSdlcEncoding: + """Return the ``BUS:B:SDLC:ENCoding`` command. + + Description: + - This command sets or queries the SDLC Bus Encoding. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:ENCoding?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:ENCoding?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SDLC:ENCoding value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:ENCoding {DISCrete|INVert} + - BUS:B:SDLC:ENCoding? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``DISCrete`` specifies the encoding mechanism is Discrete Transmission (NRZ). + - ``INVert`` specifies that encoding mechanism is Invert On Zero i.e. NRZI. + """ + return self._encoding + + @property + def modulo(self) -> BusBItemSdlcModulo: + """Return the ``BUS:B:SDLC:MODulo`` command. + + Description: + - This command sets or queries the SDLC Bus Modulo. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC:MODulo?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC:MODulo?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SDLC:MODulo value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SDLC:MODulo {8|128} + - BUS:B:SDLC:MODulo? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``8`` specifies the C-Field size is 8 bit in SDLC frame. + - ``128`` specifies the C-Field size is 16 bit in SDLC frame. + """ + return self._modulo + + +class BusBItemS8b10bThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:S8B10B:THReshold`` command. + + Description: + - This command sets or queries the 8B10b threshold for the specified bus, where the bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:S8B10B:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:S8B10B:THReshold?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:S8B10B:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:S8B10B:THReshold + - BUS:B:S8B10B:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the 8B10b Strobe threshold for the specified bus in volts. The valid range is + -8V to +8V. + """ + + +class BusBItemS8b10bSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:S8B10B:SOUrce`` command. + + Description: + - This command sets or queries the 8B10b source for the specified bus, where the bus is + specified by x. This command specifies the source channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:S8B10B:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:S8B10B:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:S8B10B:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:S8B10B:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:S8B10B:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + + +class BusBItemS8b10bBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:S8B10B:BITRate`` command. + + Description: + - This command sets or queries the 8B10b bit rate for the specified bus, where the bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:S8B10B:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:S8B10B:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:S8B10B:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:S8B10B:BITRate + - BUS:B:S8B10B:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the bit rate for the specified bus. Arguments are the available bit rates + up to 1 Tbps. + """ + + +class BusBItemS8b10b(SCPICmdRead): + """The ``BUS:B:S8B10B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:S8B10B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:S8B10B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitrate``: The ``BUS:B:S8B10B:BITRate`` command. + - ``.source``: The ``BUS:B:S8B10B:SOUrce`` command. + - ``.threshold``: The ``BUS:B:S8B10B:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemS8b10bBitrate(device, f"{self._cmd_syntax}:BITRate") + self._source = BusBItemS8b10bSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemS8b10bThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def bitrate(self) -> BusBItemS8b10bBitrate: + """Return the ``BUS:B:S8B10B:BITRate`` command. + + Description: + - This command sets or queries the 8B10b bit rate for the specified bus, where the bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:S8B10B:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:S8B10B:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:S8B10B:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:S8B10B:BITRate + - BUS:B:S8B10B:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the bit rate for the specified bus. Arguments are the available bit + rates up to 1 Tbps. + """ + return self._bitrate + + @property + def source(self) -> BusBItemS8b10bSource: + """Return the ``BUS:B:S8B10B:SOUrce`` command. + + Description: + - This command sets or queries the 8B10b source for the specified bus, where the bus is + specified by x. This command specifies the source channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:S8B10B:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:S8B10B:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:S8B10B:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:S8B10B:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:S8B10B:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemS8b10bThreshold: + """Return the ``BUS:B:S8B10B:THReshold`` command. + + Description: + - This command sets or queries the 8B10b threshold for the specified bus, where the bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:S8B10B:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:S8B10B:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:S8B10B:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:S8B10B:THReshold + - BUS:B:S8B10B:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the 8B10b Strobe threshold for the specified bus in volts. The valid + range is -8V to +8V. + """ + return self._threshold + + +class BusBItemRs232cSourceThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:SOUrce:THReshold`` command. + + Description: + - This command sets or queries the RS-232C source threshold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:SOUrce:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:SOUrce:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:RS232C:SOUrce:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:SOUrce:THReshold + - BUS:B:RS232C:SOUrce:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the RS-232C source threshold for the specified bus. + """ + + +class BusBItemRs232cSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:SOUrce`` command. + + Description: + - This command sets or queries the RS-232C source for bus , where the bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C: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:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:SOUrce {S_Ch_D|CH|CH_D|REF|MATH|REF_D} + - BUS:B:RS232C:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel and the digital + channel as the source. + - ``CH`` specifies an analog channel to use as the RS-232C source. + - ``CH_D`` specifies a digital channel of a specified FlexChannel to use for the + RS-232C source. + - ``MATH`` specifies a math channel to use for the RS-232C source. + - ``REF`` specifies a reference channel to use for the RS-232C source. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified RS-232C bus. + + Properties: + - ``.threshold``: The ``BUS:B:RS232C:SOUrce:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemRs232cSourceThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def threshold(self) -> BusBItemRs232cSourceThreshold: + """Return the ``BUS:B:RS232C:SOUrce:THReshold`` command. + + Description: + - This command sets or queries the RS-232C source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:SOUrce:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:RS232C:SOUrce:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:RS232C:SOUrce:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:SOUrce:THReshold + - BUS:B:RS232C:SOUrce:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the RS-232C source threshold for the specified bus. + """ + return self._threshold + + +class BusBItemRs232cPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:POLarity`` command. + + Description: + - This command sets or queries the RS-232C source polarity for bus , where the bus number + is specified by x. + + 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: + - ``B`` is the number of the bus. + - ``NORmal`` sets the RS-232C bus polarity to positive. + - ``INVERTed`` sets the RS-232C bus 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 sets or queries the RS-232C display mode for the specified bus. The bus is + specified by x. + + 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: + - ``B`` is the number of the bus. + - ``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. + """ + + +class BusBItemRs232cDelimiter(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:DELIMiter`` command. + + Description: + - This command sets or queries the RS-232C string delimiter on bus , where the bus number + is specified by x. This command only applies when Packet view is turned On. + + 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|CR|LF|SPace|XFF} + - BUS:B:RS232C:DELIMiter? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NULl`` specifies NULL (0x00 ) delimiting value for a packet. + - ``CR`` specifies CR (0x0D) delimiting value for a packet. + - ``LF`` specifies LF (0x0A) delimiting value for a packet. + - ``XFF`` specifies XFF (0xFF) delimiting value for a packet. + - ``SPace`` specifies SPace delimiting value for a packet. + """ + + +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 BusBItemRs232cBitrateCustom(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:BITRate:CUSTom`` command. + + Description: + - This command sets or queries the RS-232C custom bit rate for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:BITRate:CUSTom?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:BITRate:CUSTom?`` + 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:CUSTom value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:BITRate:CUSTom + - BUS:B:RS232C:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the custom bit rate. + """ + + +class BusBItemRs232cBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:BITRate`` command. + + Description: + - This command sets or queries the RS-232C bit rate for bus, where the bus number is + specified by x. If you select Custom, use ``BUS:BX:RS232C:BITRATE:CUSTOM`` to set the bit + rate. + + 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 {CUSTOM|RATE300|RATE1K|RATE2K|RATE9K|RATE19K|RATE38K|RATE115K|RATE921K} + - BUS:B:RS232C:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.custom``: The ``BUS:B:RS232C:BITRate:CUSTom`` command. + """ # noqa: E501 + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._custom = BusBItemRs232cBitrateCustom(device, f"{self._cmd_syntax}:CUSTom") + + @property + def custom(self) -> BusBItemRs232cBitrateCustom: + """Return the ``BUS:B:RS232C:BITRate:CUSTom`` command. + + Description: + - This command sets or queries the RS-232C custom bit rate for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:BITRate:CUSTom?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:BITRate:CUSTom?`` + 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:CUSTom value`` command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:BITRate:CUSTom + - BUS:B:RS232C:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the custom bit rate. + """ + return self._custom + + +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``. + + Info: + - ``B`` is the number of the bus. + + 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. + - ``.source``: The ``BUS:B:RS232C:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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._source = BusBItemRs232cSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def bitrate(self) -> BusBItemRs232cBitrate: + """Return the ``BUS:B:RS232C:BITRate`` command. + + Description: + - This command sets or queries the RS-232C bit rate for bus, where the bus number is + specified by x. If you select Custom, use ``BUS:BX:RS232C:BITRATE:CUSTOM`` to set the + bit rate. + + 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 {CUSTOM|RATE300|RATE1K|RATE2K|RATE9K|RATE19K|RATE38K|RATE115K|RATE921K} + - BUS:B:RS232C:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.custom``: The ``BUS:B:RS232C:BITRate:CUSTom`` command. + """ # noqa: E501 + 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 sets or queries the RS-232C string delimiter on bus , where the bus + number is specified by x. This command only applies when Packet view is turned On. + + 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|CR|LF|SPace|XFF} + - BUS:B:RS232C:DELIMiter? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NULl`` specifies NULL (0x00 ) delimiting value for a packet. + - ``CR`` specifies CR (0x0D) delimiting value for a packet. + - ``LF`` specifies LF (0x0A) delimiting value for a packet. + - ``XFF`` specifies XFF (0xFF) delimiting value for a packet. + - ``SPace`` specifies SPace delimiting value for a packet. + """ + return self._delimiter + + @property + def displaymode(self) -> BusBItemRs232cDisplaymode: + """Return the ``BUS:B:RS232C:DISplaymode`` command. + + Description: + - This command sets or queries the RS-232C display mode for the specified bus. The bus + is specified by x. + + 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: + - ``B`` is the number of the bus. + - ``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. + """ + 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 sets or queries the RS-232C source polarity for bus , where the bus + number is specified by x. + + 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: + - ``B`` is the number of the bus. + - ``NORmal`` sets the RS-232C bus polarity to positive. + - ``INVERTed`` sets the RS-232C bus polarity to negative. + """ + return self._polarity + + @property + def source(self) -> BusBItemRs232cSource: + """Return the ``BUS:B:RS232C:SOUrce`` command. + + Description: + - This command sets or queries the RS-232C source for bus , where the bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C: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:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:SOUrce {S_Ch_D|CH|CH_D|REF|MATH|REF_D} + - BUS:B:RS232C:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel and the + digital channel as the source. + - ``CH`` specifies an analog channel to use as the RS-232C source. + - ``CH_D`` specifies a digital channel of a specified FlexChannel to use for the + RS-232C source. + - ``MATH`` specifies a math channel to use for the RS-232C source. + - ``REF`` specifies a reference channel to use for the RS-232C source. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified RS-232C bus. + + Sub-properties: + - ``.threshold``: The ``BUS:B:RS232C:SOUrce:THReshold`` command. + """ + return self._source + + +class BusBItemPsifiveThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:THRESHold`` command. + + Description: + - This command sets or queries the PSI5 threshold for the Sensor To ECU specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:THRESHold + - BUS:B:PSIFIVe:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the PSI5 Strobe threshold for the specified bus. The threshold range + is -8 V to +8 V. + """ + + +class BusBItemPsifiveSyncthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:SYNCTHRESHold`` command. + + Description: + - This command sets or queries the PSI5 threshold for the ECU To Sensor specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:SYNCTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:SYNCTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:SYNCTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:SYNCTHRESHold + - BUS:B:PSIFIVe:SYNCTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the PSI5 Strobe threshold for the specified bus. The threshold range + is -8 V to +8 V. + """ + + +class BusBItemPsifiveSyncmode(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:SYNCMODe`` command. + + Description: + - This command sets or queries the PSI5 Sync Mode. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:SYNCMODe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:SYNCMODe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:SYNCMODe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:SYNCMODe {PULSEWIDTh|TOOTHGAP} + - BUS:B:PSIFIVe:SYNCMODe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``PULSEWIDTh`` specifies the Sync Mode as Pulse Width. + - ``TOOTHGAP`` specifies the Sync Mode as Tooth Gap. + """ + + +class BusBItemPsifiveStatus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:STATus`` command. + + Description: + - This command sets or queries the optional status bits of PSI5. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:STATus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:STATus?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:STATus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:STATus + - BUS:B:PSIFIVe:STATus? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the status value in bits. The default status value is 0 bits, + otherwise it ranges between 0 to 2 bits. + """ + + +class BusBItemPsifiveSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:SOUrce`` command. + + Description: + - This command sets or queries serial channel on or off. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:PSIFIVe:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + + +class BusBItemPsifiveMessaging(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:MESSaging`` command. + + Description: + - This command sets or queries the PSI5 optional messaging bits. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:MESSaging?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:MESSaging?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:MESSaging value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:MESSaging {OFF|ON} + - BUS:B:PSIFIVe:MESSaging? + ``` + + Info: + - ``B`` is the number of the bus. + - ``OFF`` specifies the messaging bits as the default value of 0. + - ``ON`` specifies the messaging bits as 2. + """ + + +class BusBItemPsifiveFramecontrol(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:FRAMECONTrol`` command. + + Description: + - This command sets or queries the PSI5 frame optional control bits. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:FRAMECONTrol?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:FRAMECONTrol?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:FRAMECONTrol value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:FRAMECONTrol + - BUS:B:PSIFIVe:FRAMECONTrol? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the frame control value in bits. The default frame control value is 0 + bits, otherwise it ranges between 0 to 4 bits. + """ + + +class BusBItemPsifiveEcusource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:ECUSOURce`` command. + + Description: + - This command sets or queries the ECU to sensor source channel for the specified Bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:ECUSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:ECUSOURce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:ECUSOURce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:ECUSOURce {S_Ch|CH|MATH|REF} + - BUS:B:PSIFIVe:ECUSOURce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + + +class BusBItemPsifiveDataformat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:DATAFORMat`` command. + + Description: + - This command sets or queries the data format in PSI5 Frame2 packet. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:DATAFORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:DATAFORMat?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:DATAFORMat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:DATAFORMat {NIBBLe|BYTe} + - BUS:B:PSIFIVe:DATAFORMat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NIBBLe`` specifies the data format as Nibble. + - ``BYTe`` specifies the data format as Byte. + """ + + +class BusBItemPsifiveDatab(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:DATAB`` command. + + Description: + - This command sets or queries the PSI5 frame optional bits of data region B. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:DATAB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:DATAB?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:DATAB value`` command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:DATAB + - BUS:B:PSIFIVe:DATAB? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the dataA value in bits. The default dataB value is 0 bits, otherwise + it ranges between 0 to 12 bits. + """ + + +class BusBItemPsifiveDataa(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:DATAA`` command. + + Description: + - This command sets or queries the PSI5 frame mandatory data region A. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:DATAA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:DATAA?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:DATAA value`` command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:DATAA + - BUS:B:PSIFIVe:DATAA? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the dataA value in bits. The default dataA value is 10 bits, otherwise + it ranges between 10 to 24 bits. + """ + + +class BusBItemPsifiveCommDirection(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:COMM:DIRection`` command. + + Description: + - This command sets or queries the PSI5 bus communication direction. Communication direction + by default is set to Sensor to ECU. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:COMM:DIRection?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:COMM:DIRection?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:COMM:DIRection value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:COMM:DIRection {SENSORECU|ECUSENSor} + - BUS:B:PSIFIVe:COMM:DIRection? + ``` + + Info: + - ``B`` is the number of the bus. + - ``SENSORECU`` specifies the communication direction to Sensor to ECU. This is the default + value. + - ``ECUSENSor`` specifies the communication direction to ECU to Sensor. + """ + + +class BusBItemPsifiveComm(SCPICmdRead): + """The ``BUS:B:PSIFIVe:COMM`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:COMM?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:COMM?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.direction``: The ``BUS:B:PSIFIVe:COMM:DIRection`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._direction = BusBItemPsifiveCommDirection(device, f"{self._cmd_syntax}:DIRection") + + @property + def direction(self) -> BusBItemPsifiveCommDirection: + """Return the ``BUS:B:PSIFIVe:COMM:DIRection`` command. + + Description: + - This command sets or queries the PSI5 bus communication direction. Communication + direction by default is set to Sensor to ECU. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:COMM:DIRection?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:COMM:DIRection?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PSIFIVe:COMM:DIRection value`` command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:COMM:DIRection {SENSORECU|ECUSENSor} + - BUS:B:PSIFIVe:COMM:DIRection? + ``` + + Info: + - ``B`` is the number of the bus. + - ``SENSORECU`` specifies the communication direction to Sensor to ECU. This is the + default value. + - ``ECUSENSor`` specifies the communication direction to ECU to Sensor. + """ + return self._direction + + +class BusBItemPsifiveBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:BITRate`` command. + + Description: + - This command sets or queries the PSI5 bitrate. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:BITRate {RATE125K|RATE189K|RATE83K} + - BUS:B:PSIFIVe:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + """ + + +class BusBItemPsifiveBitperiod(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PSIFIVe:BITPERiod`` command. + + Description: + - This command sets or queries the PSI5 Bit period bus parameter. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:BITPERiod?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:BITPERiod?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:BITPERiod value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:BITPERiod + - BUS:B:PSIFIVe:BITPERiod? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the bit period. The default bit period is 60 Micro seconds. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemPsifive(SCPICmdRead): + """The ``BUS:B:PSIFIVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitperiod``: The ``BUS:B:PSIFIVe:BITPERiod`` command. + - ``.bitrate``: The ``BUS:B:PSIFIVe:BITRate`` command. + - ``.comm``: The ``BUS:B:PSIFIVe:COMM`` command tree. + - ``.dataa``: The ``BUS:B:PSIFIVe:DATAA`` command. + - ``.datab``: The ``BUS:B:PSIFIVe:DATAB`` command. + - ``.dataformat``: The ``BUS:B:PSIFIVe:DATAFORMat`` command. + - ``.ecusource``: The ``BUS:B:PSIFIVe:ECUSOURce`` command. + - ``.framecontrol``: The ``BUS:B:PSIFIVe:FRAMECONTrol`` command. + - ``.messaging``: The ``BUS:B:PSIFIVe:MESSaging`` command. + - ``.source``: The ``BUS:B:PSIFIVe:SOUrce`` command. + - ``.status``: The ``BUS:B:PSIFIVe:STATus`` command. + - ``.syncmode``: The ``BUS:B:PSIFIVe:SYNCMODe`` command. + - ``.syncthreshold``: The ``BUS:B:PSIFIVe:SYNCTHRESHold`` command. + - ``.threshold``: The ``BUS:B:PSIFIVe:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitperiod = BusBItemPsifiveBitperiod(device, f"{self._cmd_syntax}:BITPERiod") + self._bitrate = BusBItemPsifiveBitrate(device, f"{self._cmd_syntax}:BITRate") + self._comm = BusBItemPsifiveComm(device, f"{self._cmd_syntax}:COMM") + self._dataa = BusBItemPsifiveDataa(device, f"{self._cmd_syntax}:DATAA") + self._datab = BusBItemPsifiveDatab(device, f"{self._cmd_syntax}:DATAB") + self._dataformat = BusBItemPsifiveDataformat(device, f"{self._cmd_syntax}:DATAFORMat") + self._ecusource = BusBItemPsifiveEcusource(device, f"{self._cmd_syntax}:ECUSOURce") + self._framecontrol = BusBItemPsifiveFramecontrol(device, f"{self._cmd_syntax}:FRAMECONTrol") + self._messaging = BusBItemPsifiveMessaging(device, f"{self._cmd_syntax}:MESSaging") + self._source = BusBItemPsifiveSource(device, f"{self._cmd_syntax}:SOUrce") + self._status = BusBItemPsifiveStatus(device, f"{self._cmd_syntax}:STATus") + self._syncmode = BusBItemPsifiveSyncmode(device, f"{self._cmd_syntax}:SYNCMODe") + self._syncthreshold = BusBItemPsifiveSyncthreshold( + device, f"{self._cmd_syntax}:SYNCTHRESHold" + ) + self._threshold = BusBItemPsifiveThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def bitperiod(self) -> BusBItemPsifiveBitperiod: + """Return the ``BUS:B:PSIFIVe:BITPERiod`` command. + + Description: + - This command sets or queries the PSI5 Bit period bus parameter. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:BITPERiod?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:BITPERiod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:BITPERiod value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:BITPERiod + - BUS:B:PSIFIVe:BITPERiod? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the bit period. The default bit period is 60 Micro seconds. + """ + return self._bitperiod + + @property + def bitrate(self) -> BusBItemPsifiveBitrate: + """Return the ``BUS:B:PSIFIVe:BITRate`` command. + + Description: + - This command sets or queries the PSI5 bitrate. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:BITRate {RATE125K|RATE189K|RATE83K} + - BUS:B:PSIFIVe:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + """ + return self._bitrate + + @property + def comm(self) -> BusBItemPsifiveComm: + """Return the ``BUS:B:PSIFIVe:COMM`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:COMM?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:COMM?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.direction``: The ``BUS:B:PSIFIVe:COMM:DIRection`` command. + """ + return self._comm + + @property + def dataa(self) -> BusBItemPsifiveDataa: + """Return the ``BUS:B:PSIFIVe:DATAA`` command. + + Description: + - This command sets or queries the PSI5 frame mandatory data region A. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:DATAA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:DATAA?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:DATAA value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:DATAA + - BUS:B:PSIFIVe:DATAA? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the dataA value in bits. The default dataA value is 10 bits, + otherwise it ranges between 10 to 24 bits. + """ + return self._dataa + + @property + def datab(self) -> BusBItemPsifiveDatab: + """Return the ``BUS:B:PSIFIVe:DATAB`` command. + + Description: + - This command sets or queries the PSI5 frame optional bits of data region B. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:DATAB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:DATAB?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:DATAB value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:DATAB + - BUS:B:PSIFIVe:DATAB? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the dataA value in bits. The default dataB value is 0 bits, + otherwise it ranges between 0 to 12 bits. + """ + return self._datab + + @property + def dataformat(self) -> BusBItemPsifiveDataformat: + """Return the ``BUS:B:PSIFIVe:DATAFORMat`` command. + + Description: + - This command sets or queries the data format in PSI5 Frame2 packet. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:DATAFORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:DATAFORMat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:DATAFORMat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:DATAFORMat {NIBBLe|BYTe} + - BUS:B:PSIFIVe:DATAFORMat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NIBBLe`` specifies the data format as Nibble. + - ``BYTe`` specifies the data format as Byte. + """ + return self._dataformat + + @property + def ecusource(self) -> BusBItemPsifiveEcusource: + """Return the ``BUS:B:PSIFIVe:ECUSOURce`` command. + + Description: + - This command sets or queries the ECU to sensor source channel for the specified Bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:ECUSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:ECUSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:ECUSOURce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:ECUSOURce {S_Ch|CH|MATH|REF} + - BUS:B:PSIFIVe:ECUSOURce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + return self._ecusource + + @property + def framecontrol(self) -> BusBItemPsifiveFramecontrol: + """Return the ``BUS:B:PSIFIVe:FRAMECONTrol`` command. + + Description: + - This command sets or queries the PSI5 frame optional control bits. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:FRAMECONTrol?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:FRAMECONTrol?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PSIFIVe:FRAMECONTrol value`` command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:FRAMECONTrol + - BUS:B:PSIFIVe:FRAMECONTrol? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the frame control value in bits. The default frame control value + is 0 bits, otherwise it ranges between 0 to 4 bits. + """ + return self._framecontrol + + @property + def messaging(self) -> BusBItemPsifiveMessaging: + """Return the ``BUS:B:PSIFIVe:MESSaging`` command. + + Description: + - This command sets or queries the PSI5 optional messaging bits. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:MESSaging?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:MESSaging?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:MESSaging value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:MESSaging {OFF|ON} + - BUS:B:PSIFIVe:MESSaging? + ``` + + Info: + - ``B`` is the number of the bus. + - ``OFF`` specifies the messaging bits as the default value of 0. + - ``ON`` specifies the messaging bits as 2. + """ + return self._messaging + + @property + def source(self) -> BusBItemPsifiveSource: + """Return the ``BUS:B:PSIFIVe:SOUrce`` command. + + Description: + - This command sets or queries serial channel on or off. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:PSIFIVe:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + return self._source + + @property + def status(self) -> BusBItemPsifiveStatus: + """Return the ``BUS:B:PSIFIVe:STATus`` command. + + Description: + - This command sets or queries the optional status bits of PSI5. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:STATus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:STATus?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:STATus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:STATus + - BUS:B:PSIFIVe:STATus? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the status value in bits. The default status value is 0 bits, + otherwise it ranges between 0 to 2 bits. + """ + return self._status + + @property + def syncmode(self) -> BusBItemPsifiveSyncmode: + """Return the ``BUS:B:PSIFIVe:SYNCMODe`` command. + + Description: + - This command sets or queries the PSI5 Sync Mode. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:SYNCMODe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:SYNCMODe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:SYNCMODe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:SYNCMODe {PULSEWIDTh|TOOTHGAP} + - BUS:B:PSIFIVe:SYNCMODe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``PULSEWIDTh`` specifies the Sync Mode as Pulse Width. + - ``TOOTHGAP`` specifies the Sync Mode as Tooth Gap. + """ + return self._syncmode + + @property + def syncthreshold(self) -> BusBItemPsifiveSyncthreshold: + """Return the ``BUS:B:PSIFIVe:SYNCTHRESHold`` command. + + Description: + - This command sets or queries the PSI5 threshold for the ECU To Sensor specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:SYNCTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:SYNCTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PSIFIVe:SYNCTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:SYNCTHRESHold + - BUS:B:PSIFIVe:SYNCTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the PSI5 Strobe threshold for the specified bus. The threshold + range is -8 V to +8 V. + """ + return self._syncthreshold + + @property + def threshold(self) -> BusBItemPsifiveThreshold: + """Return the ``BUS:B:PSIFIVe:THRESHold`` command. + + Description: + - This command sets or queries the PSI5 threshold for the Sensor To ECU specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PSIFIVe:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PSIFIVe:THRESHold + - BUS:B:PSIFIVe:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the PSI5 Strobe threshold for the specified bus. The threshold + range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemParallelClocksourceThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCkSOUrce:THReshold`` command. + + Description: + - This command sets or queries the clock source threshold for the parallel bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCkSOUrce:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:PARallel:CLOCkSOUrce:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCkSOUrce:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCkSOUrce:THReshold + - BUS:B:PARallel:CLOCkSOUrce:THReshold? + ``` + + Info: + - ```` is the clock bit source threshold for the parallel bus. + """ + + +class BusBItemParallelClocksource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCkSOUrce`` command. + + Description: + - This command sets or queries the Parallel clock bit source for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCkSOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCkSOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:CLOCkSOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCkSOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D|NONE} + - BUS:B:PARallel:CLOCkSOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel and the digital + channel as the source. + - ``CH`` specifies an analog FlexChannel to use as the bus clock source. + - ``CH_D`` specifies a digital channel on a specified FlexChannel to use as the bus + clock source. + - ``MATH`` specifies the math channel to use as the bus clock source. + - ``REF`` specifies the reference channel to use as the bus clock source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform for + the specified parallel bus. + - ``NONE`` specifies the reference channel to use as the bus clock source. + + Properties: + - ``.threshold``: The ``BUS:B:PARallel:CLOCkSOUrce:THReshold`` command. + """ # noqa: E501 + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemParallelClocksourceThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + + @property + def threshold(self) -> BusBItemParallelClocksourceThreshold: + """Return the ``BUS:B:PARallel:CLOCkSOUrce:THReshold`` command. + + Description: + - This command sets or queries the clock source threshold for the parallel bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``BUS:B:PARallel:CLOCkSOUrce:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:PARallel:CLOCkSOUrce:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCkSOUrce:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCkSOUrce:THReshold + - BUS:B:PARallel:CLOCkSOUrce:THReshold? + ``` + + Info: + - ```` is the clock bit source threshold for the parallel bus. + """ + return self._threshold + + +class BusBItemParallelClockIsclocked(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk:ISCLOCKED`` command. + + Description: + - This command determines whether the bus operates in a clocked or asynchronous fashion. The + bus is specified by x. + + 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 {OFF|ON|NR1> + - BUS:B:PARallel:CLOCk:ISCLOCKED? + ``` + + Info: + - ``B`` is the number of the bus. + - ``OFF`` argument specifies an asynchronous bus. + - ``ON`` argument specifies a clocked bus. + - ```` = 0 specifies an asynchronous bus; any other value specifies a clocked bus. + """ + + +class BusBItemParallelClockEdge(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk:EDGE`` command. + + Description: + - This command sets or queries the clock edge for the parallel bus. The bus is specified by + x. + + 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 {FALLING|RISING|EITHER} + - BUS:B:PARallel:CLOCk:EDGE? + ``` + + Info: + - ``B`` is the number of the bus. + - ``FALLING`` decodes on the falling edge of the clocked parallel bus signal. + - ``RISING`` decodes on the rising edge of the clocked parallel bus signal. + - ``EITHER`` decodes on the rising or falling edge of the clocked parallel bus signal. + """ + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.edge``: The ``BUS:B:PARallel:CLOCk:EDGE`` command. + - ``.isclocked``: The ``BUS:B:PARallel:CLOCk:ISCLOCKED`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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") + + @property + def edge(self) -> BusBItemParallelClockEdge: + """Return the ``BUS:B:PARallel:CLOCk:EDGE`` command. + + Description: + - This command sets or queries the clock edge for the parallel bus. The bus is specified + by x. + + 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 {FALLING|RISING|EITHER} + - BUS:B:PARallel:CLOCk:EDGE? + ``` + + Info: + - ``B`` is the number of the bus. + - ``FALLING`` decodes on the falling edge of the clocked parallel bus signal. + - ``RISING`` decodes on the rising edge of the clocked parallel bus signal. + - ``EITHER`` decodes on the rising or falling edge of the clocked parallel bus signal. + """ + return self._edge + + @property + def isclocked(self) -> BusBItemParallelClockIsclocked: + """Return the ``BUS:B:PARallel:CLOCk:ISCLOCKED`` command. + + Description: + - This command determines whether the bus operates in a clocked or asynchronous fashion. + The bus is specified by x. + + 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 {OFF|ON|NR1> + - BUS:B:PARallel:CLOCk:ISCLOCKED? + ``` + + Info: + - ``B`` is the number of the bus. + - ``OFF`` argument specifies an asynchronous bus. + - ``ON`` argument specifies a clocked bus. + - ```` = 0 specifies an asynchronous bus; any other value specifies a clocked bus. + """ + return self._isclocked + + +class BusBItemParallelBitsourceItemThreshold(SCPICmdWrite): + """The ``BUS:B:PARallel:BITSOUrce:THReshold`` command. + + Description: + - This command sets or queries the specified bit source threshold for the specified parallel + bus. The bus is specified by x. The bit is specified by n and is an integer in the range + of 1 to 64. + + Usage: + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:BITSOUrce:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:BITSOUrce:THReshold + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the specified bit source threshold for the specified parallel bus. + """ + + +class BusBItemParallelBitsourceItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:BITSOUrce`` command. + + Description: + - This command sets or queries the specified bit source for specified parallel bus. The bus + is specified by x. The bit is specified by n and is an integer in the range of 1 to 64. + + Usage: + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:BITSOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:BITSOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D|NONE} + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel and the digital + channel as the source. + - ``CH`` is the specified bit source. + - ``CH_D`` is the specified bit source. + - ``MATH`` is the specified bit source. + - ``REF`` is the specified bit source. + - ``REF_D`` specifies a digital reference waveform as the bit source waveform for + the specified parallel bus. + - ``NONE`` disables the bit source. + + Properties: + - ``.threshold``: The ``BUS:B:PARallel:BITSOUrce:THReshold`` command. + """ # noqa: E501 + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemParallelBitsourceItemThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + + @property + def threshold(self) -> BusBItemParallelBitsourceItemThreshold: + """Return the ``BUS:B:PARallel:BITSOUrce:THReshold`` command. + + Description: + - This command sets or queries the specified bit source threshold for the specified + parallel bus. The bus is specified by x. The bit is specified by n and is an integer + in the range of 1 to 64. + + Usage: + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:BITSOUrce:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:BITSOUrce:THReshold + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the specified bit source threshold for the specified parallel bus. + """ + return self._threshold + + +class BusBItemParallelAllthresholdsApply(SCPICmdWriteNoArguments): + """The ``BUS:B:PARallel:ALLTHResholds:APPly`` command. + + Description: + - This command sets all of the data source thresholds to the value set by + ``BUS:BX:PARALLEL:ALLTHRESHOLDS`` for the parallel bus. The bus is specified by x. + + Usage: + - Using the ``.write()`` method will send the ``BUS:B:PARallel:ALLTHResholds:APPly`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:ALLTHResholds:APPly + ``` + + Info: + - ``B`` is the Bus number. + """ + + +class BusBItemParallelAllthresholds(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:ALLTHResholds`` command. + + Description: + - This command sets or queries a threshold value for sources for the parallel bus. Use the + ``BUS:BX:PARALLEL:ALLTHRESHOLDS:APPLY`` command to set the thresholds to this value. The + bus is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:ALLTHResholds value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:ALLTHResholds + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the source threshold. + + Properties: + - ``.apply``: The ``BUS:B:PARallel:ALLTHResholds:APPly`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._apply = BusBItemParallelAllthresholdsApply(device, f"{self._cmd_syntax}:APPly") + + @property + def apply(self) -> BusBItemParallelAllthresholdsApply: + """Return the ``BUS:B:PARallel:ALLTHResholds:APPly`` command. + + Description: + - This command sets all of the data source thresholds to the value set by + ``BUS:BX:PARALLEL:ALLTHRESHOLDS`` for the parallel bus. The bus is specified by x. + + Usage: + - Using the ``.write()`` method will send the ``BUS:B:PARallel:ALLTHResholds:APPly`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:ALLTHResholds:APPly + ``` + + Info: + - ``B`` is the Bus number. + """ + return self._apply + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.allthresholds``: The ``BUS:B:PARallel:ALLTHResholds`` command. + - ``.bitsource``: The ``BUS:B:PARallel:BITSOUrce`` command. + - ``.clock``: The ``BUS:B:PARallel:CLOCk`` command tree. + - ``.clocksource``: The ``BUS:B:PARallel:CLOCkSOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._allthresholds = BusBItemParallelAllthresholds( + device, f"{self._cmd_syntax}:ALLTHResholds" + ) + self._bitsource: Dict[int, BusBItemParallelBitsourceItem] = DefaultDictPassKeyToFactory( + lambda x: BusBItemParallelBitsourceItem(device, f"{self._cmd_syntax}:BIT{x}SOUrce") + ) + self._clock = BusBItemParallelClock(device, f"{self._cmd_syntax}:CLOCk") + self._clocksource = BusBItemParallelClocksource(device, f"{self._cmd_syntax}:CLOCkSOUrce") + + @property + def allthresholds(self) -> BusBItemParallelAllthresholds: + """Return the ``BUS:B:PARallel:ALLTHResholds`` command. + + Description: + - This command sets or queries a threshold value for sources for the parallel bus. Use + the ``BUS:BX:PARALLEL:ALLTHRESHOLDS:APPLY`` command to set the thresholds to this + value. The bus is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:ALLTHResholds value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:ALLTHResholds + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the source threshold. + + Sub-properties: + - ``.apply``: The ``BUS:B:PARallel:ALLTHResholds:APPly`` command. + """ + return self._allthresholds + + @property + def bitsource(self) -> Dict[int, BusBItemParallelBitsourceItem]: + """Return the ``BUS:B:PARallel:BITSOUrce`` command. + + Description: + - This command sets or queries the specified bit source for specified parallel bus. The + bus is specified by x. The bit is specified by n and is an integer in the range of 1 + to 64. + + Usage: + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:BITSOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:BITSOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D|NONE} + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel and the + digital channel as the source. + - ``CH`` is the specified bit source. + - ``CH_D`` is the specified bit source. + - ``MATH`` is the specified bit source. + - ``REF`` is the specified bit source. + - ``REF_D`` specifies a digital reference waveform as the bit source waveform + for the specified parallel bus. + - ``NONE`` disables the bit source. + + Sub-properties: + - ``.threshold``: The ``BUS:B:PARallel:BITSOUrce:THReshold`` command. + """ # noqa: E501 + return self._bitsource + + @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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.edge``: The ``BUS:B:PARallel:CLOCk:EDGE`` command. + - ``.isclocked``: The ``BUS:B:PARallel:CLOCk:ISCLOCKED`` command. + """ + return self._clock + + @property + def clocksource(self) -> BusBItemParallelClocksource: + """Return the ``BUS:B:PARallel:CLOCkSOUrce`` command. + + Description: + - This command sets or queries the Parallel clock bit source for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCkSOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCkSOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCkSOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCkSOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D|NONE} + - BUS:B:PARallel:CLOCkSOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel and the + digital channel as the source. + - ``CH`` specifies an analog FlexChannel to use as the bus clock source. + - ``CH_D`` specifies a digital channel on a specified FlexChannel to use as the + bus clock source. + - ``MATH`` specifies the math channel to use as the bus clock source. + - ``REF`` specifies the reference channel to use as the bus clock source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform + for the specified parallel bus. + - ``NONE`` specifies the reference channel to use as the bus clock source. + + Sub-properties: + - ``.threshold``: The ``BUS:B:PARallel:CLOCkSOUrce:THReshold`` command. + """ # noqa: E501 + return self._clocksource + + +class BusBItemOnewireMode(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ONEWIRe:MODe`` command. + + Description: + - This command sets or queries the mode for the specified ONEWIRe bus. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe:MODe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ONEWIRe:MODe value`` command. + + SCPI Syntax: + ``` + - BUS:B:ONEWIRe:MODe {STAndard|OVErdrive} + - BUS:B:ONEWIRe:MODe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``STAndard`` specifies the mode as standard. Standard is the default mode whose value is + 15.4 kbs. + - ``OVErdrive`` specifies the mode as overdrive. + """ + + +class BusBItemOnewireDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ONEWIRe:DATA:THReshold`` command. + + Description: + - This command sets or queries the ONEWIRe data source threshold for the specified bus. The + bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe:DATA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe:DATA:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ONEWIRe:DATA:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ONEWIRe:DATA:THReshold + - BUS:B:ONEWIRe:DATA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the ONEWIRe Strobe threshold for the specified bus in volts. The valid range + is -8 V to +8 V. The default value is 1.25 V. + """ + + +class BusBItemOnewireDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ONEWIRe:DATA:SOUrce`` command. + + Description: + - This command sets or queries the ONEWIRe source for the specified bus. This command + specifies the source channel. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe: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:ONEWIRe:DATA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ONEWIRe:DATA:SOUrce {S_Ch|CH|MATH|REF] + - BUS:B:ONEWIRe:DATA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + + +class BusBItemOnewireData(SCPICmdRead): + """The ``BUS:B:ONEWIRe:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:ONEWIRe:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ONEWIRe:DATA:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemOnewireDataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemOnewireDataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemOnewireDataSource: + """Return the ``BUS:B:ONEWIRe:DATA:SOUrce`` command. + + Description: + - This command sets or queries the ONEWIRe source for the specified bus. This command + specifies the source channel. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe: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:ONEWIRe:DATA:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:ONEWIRe:DATA:SOUrce {S_Ch|CH|MATH|REF] + - BUS:B:ONEWIRe:DATA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemOnewireDataThreshold: + """Return the ``BUS:B:ONEWIRe:DATA:THReshold`` command. + + Description: + - This command sets or queries the ONEWIRe data source threshold for the specified bus. + The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe:DATA:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe:DATA:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ONEWIRe:DATA:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ONEWIRe:DATA:THReshold + - BUS:B:ONEWIRe:DATA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the ONEWIRe Strobe threshold for the specified bus in volts. The valid + range is -8 V to +8 V. The default value is 1.25 V. + """ + return self._threshold + + +class BusBItemOnewire(SCPICmdRead): + """The ``BUS:B:ONEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.data``: The ``BUS:B:ONEWIRe:DATA`` command tree. + - ``.mode``: The ``BUS:B:ONEWIRe:MODe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = BusBItemOnewireData(device, f"{self._cmd_syntax}:DATA") + self._mode = BusBItemOnewireMode(device, f"{self._cmd_syntax}:MODe") + + @property + def data(self) -> BusBItemOnewireData: + """Return the ``BUS:B:ONEWIRe:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:ONEWIRe:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ONEWIRe:DATA:THReshold`` command. + """ + return self._data + + @property + def mode(self) -> BusBItemOnewireMode: + """Return the ``BUS:B:ONEWIRe:MODe`` command. + + Description: + - This command sets or queries the mode for the specified ONEWIRe bus. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe:MODe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ONEWIRe:MODe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ONEWIRe:MODe {STAndard|OVErdrive} + - BUS:B:ONEWIRe:MODe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``STAndard`` specifies the mode as standard. Standard is the default mode whose value + is 15.4 kbs. + - ``OVErdrive`` specifies the mode as overdrive. + """ + return self._mode + + +class BusBItemNrzThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:NRZ:THReshold`` command. + + Description: + - This command sets or queries the NRZ threshold for the specified bus. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:THReshold?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:THReshold + - BUS:B:NRZ:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the NRZ Strobe threshold for the specified bus in volts. The valid range is + -8 V to +8 V. + """ + + +class BusBItemNrzSpmiVersion(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:NRZ:SPMI:VERsion`` command. + + Description: + - This command sets or queries the Version for the specified bus. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:SPMI:VERsion?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:SPMI:VERsion?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:SPMI:VERsion value`` + command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:SPMI:VERsion {v} + - BUS:B:NRZ:SPMI:VERsion? + ``` + + Info: + - ``B`` is the number of the bus. + - ``v1`` specifies version 1. + - ``v2`` specifies version 2. + """ + + +class BusBItemNrzSpmi(SCPICmdRead): + """The ``BUS:B:NRZ:SPMI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:SPMI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:SPMI?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.version``: The ``BUS:B:NRZ:SPMI:VERsion`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._version = BusBItemNrzSpmiVersion(device, f"{self._cmd_syntax}:VERsion") + + @property + def version(self) -> BusBItemNrzSpmiVersion: + """Return the ``BUS:B:NRZ:SPMI:VERsion`` command. + + Description: + - This command sets or queries the Version for the specified bus. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:SPMI:VERsion?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:SPMI:VERsion?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:SPMI:VERsion value`` + command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:SPMI:VERsion {v} + - BUS:B:NRZ:SPMI:VERsion? + ``` + + Info: + - ``B`` is the number of the bus. + - ``v1`` specifies version 1. + - ``v2`` specifies version 2. + """ + return self._version + + +class BusBItemNrzSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:NRZ:SOUrce`` command. + + Description: + - This command sets or queries the NRZ source for the specified bus. This command specifies + the source channel. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:SOUrce?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:SOUrce {S_Ch|CH|MATH|REF] + - BUS:B:NRZ:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + + +class BusBItemNrzPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:NRZ:POLarity`` command. + + Description: + - This command sets or queries the NRZ source polarity for the specified bus. The bus number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:POLarity {INVerted|NORmal} + - BUS:B:NRZ:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``INVerted`` specifies inverted polarity. + - ``NORmal`` specifies normal polarity. + """ + + +class BusBItemNrzBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:NRZ:BITRate`` command. + + Description: + - This command sets or queries the NRZ bus bit rate. The bus number is specified by . + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:BITRate + - BUS:B:NRZ:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the bit rate up to 1 G. + """ + + +class BusBItemNrzBitorder(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:NRZ:BITOrder`` command. + + Description: + - This command sets or queries the NRZ bit order for the specified bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:BITOrder?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:BITOrder value`` command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:BITOrder {LSB|MSB} + - BUS:B:NRZ:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus. + - ``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. + """ + + +class BusBItemNrz(SCPICmdRead): + """The ``BUS:B:NRZ`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitorder``: The ``BUS:B:NRZ:BITOrder`` command. + - ``.bitrate``: The ``BUS:B:NRZ:BITRate`` command. + - ``.polarity``: The ``BUS:B:NRZ:POLarity`` command. + - ``.source``: The ``BUS:B:NRZ:SOUrce`` command. + - ``.spmi``: The ``BUS:B:NRZ:SPMI`` command tree. + - ``.threshold``: The ``BUS:B:NRZ:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitorder = BusBItemNrzBitorder(device, f"{self._cmd_syntax}:BITOrder") + self._bitrate = BusBItemNrzBitrate(device, f"{self._cmd_syntax}:BITRate") + self._polarity = BusBItemNrzPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemNrzSource(device, f"{self._cmd_syntax}:SOUrce") + self._spmi = BusBItemNrzSpmi(device, f"{self._cmd_syntax}:SPMI") + self._threshold = BusBItemNrzThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def bitorder(self) -> BusBItemNrzBitorder: + """Return the ``BUS:B:NRZ:BITOrder`` command. + + Description: + - This command sets or queries the NRZ bit order for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:BITOrder?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:BITOrder value`` + command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:BITOrder {LSB|MSB} + - BUS:B:NRZ:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus. + - ``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 bitrate(self) -> BusBItemNrzBitrate: + """Return the ``BUS:B:NRZ:BITRate`` command. + + Description: + - This command sets or queries the NRZ bus bit rate. The bus number is specified by . + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:BITRate + - BUS:B:NRZ:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the bit rate up to 1 G. + """ + return self._bitrate + + @property + def polarity(self) -> BusBItemNrzPolarity: + """Return the ``BUS:B:NRZ:POLarity`` command. + + Description: + - This command sets or queries the NRZ source polarity for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:POLarity {INVerted|NORmal} + - BUS:B:NRZ:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``INVerted`` specifies inverted polarity. + - ``NORmal`` specifies normal polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemNrzSource: + """Return the ``BUS:B:NRZ:SOUrce`` command. + + Description: + - This command sets or queries the NRZ source for the specified bus. This command + specifies the source channel. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:SOUrce {S_Ch|CH|MATH|REF] + - BUS:B:NRZ:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math waveform as the source. + - ``REF`` specifies a digital reference waveform as the source. + """ + return self._source + + @property + def spmi(self) -> BusBItemNrzSpmi: + """Return the ``BUS:B:NRZ:SPMI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:SPMI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:SPMI?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.version``: The ``BUS:B:NRZ:SPMI:VERsion`` command. + """ + return self._spmi + + @property + def threshold(self) -> BusBItemNrzThreshold: + """Return the ``BUS:B:NRZ:THReshold`` command. + + Description: + - This command sets or queries the NRZ threshold for the specified bus. The bus number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:NRZ:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:NRZ:THReshold + - BUS:B:NRZ:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the NRZ Strobe threshold for the specified bus in volts. The valid range + is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemMil1553bThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:THRESHold`` command. + + Description: + - This command sets or queries the MIL-STD-1553 upper threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:THRESHold + - BUS:B:MIL1553B:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the MIL-STD-1553 upper threshold for the specified bus. + """ + + +class BusBItemMil1553bSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:SOUrce`` command. + + Description: + - This command sets or queries the source for the specified MIL-STD-1553 bus. The bus is + specified by x. + + 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 {S_Ch|CH|MATH|REF} + - BUS:B:MIL1553B:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source waveform for the MIL-STD-1553 bus. + - ``Math`` specifies a math waveform as the source waveform for the MIL-STD-1553 bus. + - ``REF`` specifies a reference waveform as the source waveform for the MIL-STD-1553 bus. + """ + + +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["PIDevice"], 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 BusBItemMil1553bLowthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:LOWTHRESHold`` command. + + Description: + - This command sets or queries the MIL-STD-1553 lower threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:LOWTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:LOWTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:LOWTHRESHold + - BUS:B:MIL1553B:LOWTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the MIL-STD-1553 lower threshold for the specified bus. + """ + + +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: + - ``.lowthreshold``: The ``BUS:B:MIL1553B:LOWTHRESHold`` command. + - ``.polarity``: The ``BUS:B:MIL1553B:POLarity`` command. + - ``.responsetime``: The ``BUS:B:MIL1553B:RESPonsetime`` command tree. + - ``.source``: The ``BUS:B:MIL1553B:SOUrce`` command. + - ``.threshold``: The ``BUS:B:MIL1553B:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._lowthreshold = BusBItemMil1553bLowthreshold( + device, f"{self._cmd_syntax}:LOWTHRESHold" + ) + 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") + self._threshold = BusBItemMil1553bThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def lowthreshold(self) -> BusBItemMil1553bLowthreshold: + """Return the ``BUS:B:MIL1553B:LOWTHRESHold`` command. + + Description: + - This command sets or queries the MIL-STD-1553 lower threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:LOWTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MIL1553B:LOWTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:LOWTHRESHold + - BUS:B:MIL1553B:LOWTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the MIL-STD-1553 lower threshold for the specified bus. + """ + return self._lowthreshold + + @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 sets or queries the source for the specified MIL-STD-1553 bus. The bus is + specified by x. + + 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 {S_Ch|CH|MATH|REF} + - BUS:B:MIL1553B:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source waveform for the MIL-STD-1553 bus. + - ``Math`` specifies a math waveform as the source waveform for the MIL-STD-1553 bus. + - ``REF`` specifies a reference waveform as the source waveform for the MIL-STD-1553 + bus. + """ + return self._source + + @property + def threshold(self) -> BusBItemMil1553bThreshold: + """Return the ``BUS:B:MIL1553B:THRESHold`` command. + + Description: + - This command sets or queries the MIL-STD-1553 upper threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:THRESHold + - BUS:B:MIL1553B:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the MIL-STD-1553 upper threshold for the specified bus. + """ + return self._threshold + + +class BusBItemMdioDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MDIO:DATA:THReshold`` command. + + Description: + - This command sets or queries the MDIO Data source threshold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:DATA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO:DATA:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MDIO:DATA:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MDIO:DATA:THReshold + - BUS:B:MDIO:DATA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the data source threshold for the specified bus. The argument range is -8V to + +8V. + """ + + +class BusBItemMdioDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MDIO:DATA:SOUrce`` command. + + Description: + - This command sets or queries the data for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO: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:MDIO:DATA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MDIO:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:MDIO:DATA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the data source. + - ``Math`` specifies a math waveform as the data source. + - ``REF`` specifies a reference waveform as the data source. + """ + + +class BusBItemMdioData(SCPICmdRead): + """The ``BUS:B:MDIO:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO:DATA?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:MDIO:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:MDIO:DATA:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemMdioDataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemMdioDataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemMdioDataSource: + """Return the ``BUS:B:MDIO:DATA:SOUrce`` command. + + Description: + - This command sets or queries the data for the specified bus. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:DATA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO: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:MDIO:DATA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MDIO:DATA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:MDIO:DATA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the data source. + - ``Math`` specifies a math waveform as the data source. + - ``REF`` specifies a reference waveform as the data source. + """ + return self._source + + @property + def threshold(self) -> BusBItemMdioDataThreshold: + """Return the ``BUS:B:MDIO:DATA:THReshold`` command. + + Description: + - This command sets or queries the MDIO Data source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:DATA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO:DATA:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MDIO:DATA:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:MDIO:DATA:THReshold + - BUS:B:MDIO:DATA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the data source threshold for the specified bus. The argument range is + -8V to +8V. + """ + return self._threshold + + +class BusBItemMdioClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MDIO:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the MDIO clock source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO:CLOCk:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MDIO:CLOCk:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MDIO:CLOCk:THReshold + - BUS:B:MDIO:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the clock source threshold for the specified bus. The argument range is -8V + to +8V. + """ + + +class BusBItemMdioClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MDIO:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the MDIO Clock source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO: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:MDIO:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MDIO:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:MDIO:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the Clock source. + - ``Math`` specifies a math waveform as the Clock source. + - ``REF`` specifies a reference waveform as the Clock source. + """ + + +class BusBItemMdioClock(SCPICmdRead): + """The ``BUS:B:MDIO:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO:CLOCk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:MDIO:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:MDIO:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemMdioClockSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemMdioClockThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemMdioClockSource: + """Return the ``BUS:B:MDIO:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the MDIO Clock source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO: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:MDIO:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MDIO:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:MDIO:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the Clock source. + - ``Math`` specifies a math waveform as the Clock source. + - ``REF`` specifies a reference waveform as the Clock source. + """ + return self._source + + @property + def threshold(self) -> BusBItemMdioClockThreshold: + """Return the ``BUS:B:MDIO:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the MDIO clock source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO:CLOCk:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MDIO:CLOCk:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:MDIO:CLOCk:THReshold + - BUS:B:MDIO:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the clock source threshold for the specified bus. The argument range is + -8V to +8V. + """ + return self._threshold + + +class BusBItemMdio(SCPICmdRead): + """The ``BUS:B:MDIO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.clock``: The ``BUS:B:MDIO:CLOCk`` command tree. + - ``.data``: The ``BUS:B:MDIO:DATA`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._clock = BusBItemMdioClock(device, f"{self._cmd_syntax}:CLOCk") + self._data = BusBItemMdioData(device, f"{self._cmd_syntax}:DATA") + + @property + def clock(self) -> BusBItemMdioClock: + """Return the ``BUS:B:MDIO:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:MDIO:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:MDIO:CLOCk:THReshold`` command. + """ + return self._clock + + @property + def data(self) -> BusBItemMdioData: + """Return the ``BUS:B:MDIO:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:MDIO:DATA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:MDIO:DATA:THReshold`` command. + """ + return self._data + + +class BusBItemManchesterParity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:parity`` command. + + Description: + - This command sets or queries the Manchester bus Parity. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:parity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:parity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:parity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:parity {ODD|EVEN|NONE} + - BUS:B:MANChester:parity? + ``` + + Info: + - ``ODD`` sets the number of 1's to odd. + - ``EVEN`` sets the number of 1's to even. + - ``NONE`` specifies that Parity is not considered. + """ + + +class BusBItemManchesterWordsize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:WORDSIZe`` command. + + Description: + - This command sets or queries the Manchester word size in bits. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:WORDSIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:WORDSIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:WORDSIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:WORDSIZe + - BUS:B:MANChester:WORDSIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the word size in bits. + """ + + +class BusBItemManchesterWordCount(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:WORD:COUNt`` command. + + Description: + - This command sets or queries the Manchester word count in bits. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:WORD:COUNt?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:WORD:COUNt?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:WORD:COUNt value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:WORD:COUNt + - BUS:B:MANChester:WORD:COUNt? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the word count in bits. + """ + + +class BusBItemManchesterWord(SCPICmdRead): + """The ``BUS:B:MANChester:WORD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:WORD?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:WORD?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.count``: The ``BUS:B:MANChester:WORD:COUNt`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._count = BusBItemManchesterWordCount(device, f"{self._cmd_syntax}:COUNt") + + @property + def count(self) -> BusBItemManchesterWordCount: + """Return the ``BUS:B:MANChester:WORD:COUNt`` command. + + Description: + - This command sets or queries the Manchester word count in bits. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:WORD:COUNt?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:WORD:COUNt?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:WORD:COUNt value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:WORD:COUNt + - BUS:B:MANChester:WORD:COUNt? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the word count in bits. + """ + return self._count + + +class BusBItemManchesterTrailerLength(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:TRAiler:LENGth`` command. + + Description: + - This command sets or queries the Manchester trailer length in bits. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TRAiler:LENGth?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:TRAiler:LENGth?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:TRAiler:LENGth value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:TRAiler:LENGth + - BUS:B:MANChester:TRAiler:LENGth? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the trailer length in bits. + """ + + +class BusBItemManchesterTrailer(SCPICmdRead): + """The ``BUS:B:MANChester:TRAiler`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TRAiler?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:TRAiler?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.length``: The ``BUS:B:MANChester:TRAiler:LENGth`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._length = BusBItemManchesterTrailerLength(device, f"{self._cmd_syntax}:LENGth") + + @property + def length(self) -> BusBItemManchesterTrailerLength: + """Return the ``BUS:B:MANChester:TRAiler:LENGth`` command. + + Description: + - This command sets or queries the Manchester trailer length in bits. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TRAiler:LENGth?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MANChester:TRAiler:LENGth?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:TRAiler:LENGth value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:TRAiler:LENGth + - BUS:B:MANChester:TRAiler:LENGth? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the trailer length in bits. + """ + return self._length + + +class BusBItemManchesterTranstionZero(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:TRANstion:ZERo`` command. + + Description: + - This command sets or queries the Manchester bus for zero falling or rising. Manchester bit + are defined by transition in the middle of the bit. Depending on the transition, + conventions are defined. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TRANstion:ZERo?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:TRANstion:ZERo?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:TRANstion:ZERo value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:TRANstion:ZERo {FALLing|RISing} + - BUS:B:MANChester:TRANstion:ZERo? + ``` + + Info: + - ``B`` is the number of the bus. + - ``FALLing`` sets Falling as 0. + - ``RISing`` sets Rising as 0. + """ + + +class BusBItemManchesterTranstion(SCPICmdRead): + """The ``BUS:B:MANChester:TRANstion`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TRANstion?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:TRANstion?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.zero``: The ``BUS:B:MANChester:TRANstion:ZERo`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._zero = BusBItemManchesterTranstionZero(device, f"{self._cmd_syntax}:ZERo") + + @property + def zero(self) -> BusBItemManchesterTranstionZero: + """Return the ``BUS:B:MANChester:TRANstion:ZERo`` command. + + Description: + - This command sets or queries the Manchester bus for zero falling or rising. Manchester + bit are defined by transition in the middle of the bit. Depending on the transition, + conventions are defined. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TRANstion:ZERo?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MANChester:TRANstion:ZERo?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:TRANstion:ZERo value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:TRANstion:ZERo {FALLing|RISing} + - BUS:B:MANChester:TRANstion:ZERo? + ``` + + Info: + - ``B`` is the number of the bus. + - ``FALLing`` sets Falling as 0. + - ``RISing`` sets Rising as 0. + """ + return self._zero + + +class BusBItemManchesterTolerance(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:TOLerance`` command. + + Description: + - This command sets or queries the Tolerance bus parameter. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TOLerance?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:TOLerance?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:TOLerance value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:TOLerance + - BUS:B:MANChester:TOLerance? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the Tolerance bus parameter. + """ + + +class BusBItemManchesterThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:THReshold`` command. + + Description: + - This command sets or queries the Manchester threshold for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:THReshold + - BUS:B:MANChester:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the Manchester Strobe threshold for the specified bus in Volts. The + argument range is -8V to +8V. + """ + + +class BusBItemManchesterSyncSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:SYNC:SIZe`` command. + + Description: + - This command sets or queries the Manchester sync Bit Size in bits. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:SYNC:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:SYNC:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:SYNC:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:SYNC:SIZe + - BUS:B:MANChester:SYNC:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the Bit Size in bits. + """ + + +class BusBItemManchesterSync(SCPICmdRead): + """The ``BUS:B:MANChester:SYNC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:SYNC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:SYNC?`` 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:MANChester:SYNC:SIZe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = BusBItemManchesterSyncSize(device, f"{self._cmd_syntax}:SIZe") + + @property + def size(self) -> BusBItemManchesterSyncSize: + """Return the ``BUS:B:MANChester:SYNC:SIZe`` command. + + Description: + - This command sets or queries the Manchester sync Bit Size in bits. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:SYNC:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:SYNC:SIZe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:SYNC:SIZe value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:SYNC:SIZe + - BUS:B:MANChester:SYNC:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the Bit Size in bits. + """ + return self._size + + +class BusBItemManchesterStartIndex(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:START:INDex`` command. + + Description: + - This command sets or queries the Manchester start Index in bits. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:START:INDex?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:START:INDex?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:START:INDex value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:START:INDex + - BUS:B:MANChester:START:INDex? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the start Index in bits. + """ + + +class BusBItemManchesterStart(SCPICmdRead): + """The ``BUS:B:MANChester:START`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:START?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:START?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.index``: The ``BUS:B:MANChester:START:INDex`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._index = BusBItemManchesterStartIndex(device, f"{self._cmd_syntax}:INDex") + + @property + def index(self) -> BusBItemManchesterStartIndex: + """Return the ``BUS:B:MANChester:START:INDex`` command. + + Description: + - This command sets or queries the Manchester start Index in bits. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:START:INDex?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:START:INDex?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:START:INDex value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:START:INDex + - BUS:B:MANChester:START:INDex? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the start Index in bits. + """ + return self._index + + +class BusBItemManchesterSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:SOUrce`` command. + + Description: + - This command sets or queries the Manchester source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:MANChester:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemManchesterIdleBits(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:IDLE:BITS`` command. + + Description: + - This command sets or queries the Manchester idle bit size in bits. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:IDLE:BITS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:IDLE:BITS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:IDLE:BITS value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:IDLE:BITS + - BUS:B:MANChester:IDLE:BITS? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the idle bit size. + """ + + +class BusBItemManchesterIdle(SCPICmdRead): + """The ``BUS:B:MANChester:IDLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:IDLE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:IDLE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bits``: The ``BUS:B:MANChester:IDLE:BITS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bits = BusBItemManchesterIdleBits(device, f"{self._cmd_syntax}:BITS") + + @property + def bits(self) -> BusBItemManchesterIdleBits: + """Return the ``BUS:B:MANChester:IDLE:BITS`` command. + + Description: + - This command sets or queries the Manchester idle bit size in bits. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:IDLE:BITS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:IDLE:BITS?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:IDLE:BITS value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:IDLE:BITS + - BUS:B:MANChester:IDLE:BITS? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the idle bit size. + """ + return self._bits + + +class BusBItemManchesterHeaderLength(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:HEADer:LENGth`` command. + + Description: + - This command sets or queries the Manchester header length in bits. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:HEADer:LENGth?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:HEADer:LENGth?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:HEADer:LENGth value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:HEADer:LENGth + - BUS:B:MANChester:HEADer:LENGth? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the header length in bits. + """ + + +class BusBItemManchesterHeader(SCPICmdRead): + """The ``BUS:B:MANChester:HEADer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:HEADer?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:HEADer?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.length``: The ``BUS:B:MANChester:HEADer:LENGth`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._length = BusBItemManchesterHeaderLength(device, f"{self._cmd_syntax}:LENGth") + + @property + def length(self) -> BusBItemManchesterHeaderLength: + """Return the ``BUS:B:MANChester:HEADer:LENGth`` command. + + Description: + - This command sets or queries the Manchester header length in bits. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:HEADer:LENGth?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MANChester:HEADer:LENGth?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:HEADer:LENGth value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:HEADer:LENGth + - BUS:B:MANChester:HEADer:LENGth? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the header length in bits. + """ + return self._length + + +class BusBItemManchesterDisplaymode(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:DISplaymode`` command. + + Description: + - This command sets or queries the Manchester bus Packet View. The bus number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:DISplaymode?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:DISplaymode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:DISplaymode value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:DISplaymode {BITS|PACKET} + - BUS:B:MANChester:DISplaymode? + ``` + + Info: + - ``B`` is the number of the bus. + - ``BITS`` sets the PacketView to off and the data to be seen as single bits formats. + - ``PACKET`` sets the PacketView to on and the data to be seen in the form of fields. + """ + + +class BusBItemManchesterBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:BITRate`` command. + + Description: + - This command sets or queries the Manchester bus bit rate. The bus number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:BITRate + - BUS:B:MANChester:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the bit rate up to 1 Gbps. + """ + + +class BusBItemManchesterBitorder(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MANChester:BITORDer`` command. + + Description: + - This command sets or queries the Manchester bus Bit Order. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:BITORDer?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:BITORDer?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:BITORDer value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:BITORDer {LSB|MSB} + - BUS:B:MANChester:BITORDer? + ``` + + Info: + - ``B`` is the number of the bus. + - ``LSB`` arranges the bits in LSB format, least significant bits first. + - ``MSB`` arranges the bits in MSB format, most significant bits first. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemManchester(SCPICmdRead): + """The ``BUS:B:MANChester`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitorder``: The ``BUS:B:MANChester:BITORDer`` command. + - ``.bitrate``: The ``BUS:B:MANChester:BITRate`` command. + - ``.displaymode``: The ``BUS:B:MANChester:DISplaymode`` command. + - ``.header``: The ``BUS:B:MANChester:HEADer`` command tree. + - ``.idle``: The ``BUS:B:MANChester:IDLE`` command tree. + - ``.source``: The ``BUS:B:MANChester:SOUrce`` command. + - ``.start``: The ``BUS:B:MANChester:START`` command tree. + - ``.sync``: The ``BUS:B:MANChester:SYNC`` command tree. + - ``.threshold``: The ``BUS:B:MANChester:THReshold`` command. + - ``.tolerance``: The ``BUS:B:MANChester:TOLerance`` command. + - ``.transtion``: The ``BUS:B:MANChester:TRANstion`` command tree. + - ``.trailer``: The ``BUS:B:MANChester:TRAiler`` command tree. + - ``.word``: The ``BUS:B:MANChester:WORD`` command tree. + - ``.wordsize``: The ``BUS:B:MANChester:WORDSIZe`` command. + - ``.parity``: The ``BUS:B:MANChester:parity`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitorder = BusBItemManchesterBitorder(device, f"{self._cmd_syntax}:BITORDer") + self._bitrate = BusBItemManchesterBitrate(device, f"{self._cmd_syntax}:BITRate") + self._displaymode = BusBItemManchesterDisplaymode(device, f"{self._cmd_syntax}:DISplaymode") + self._header = BusBItemManchesterHeader(device, f"{self._cmd_syntax}:HEADer") + self._idle = BusBItemManchesterIdle(device, f"{self._cmd_syntax}:IDLE") + self._source = BusBItemManchesterSource(device, f"{self._cmd_syntax}:SOUrce") + self._start = BusBItemManchesterStart(device, f"{self._cmd_syntax}:START") + self._sync = BusBItemManchesterSync(device, f"{self._cmd_syntax}:SYNC") + self._threshold = BusBItemManchesterThreshold(device, f"{self._cmd_syntax}:THReshold") + self._tolerance = BusBItemManchesterTolerance(device, f"{self._cmd_syntax}:TOLerance") + self._transtion = BusBItemManchesterTranstion(device, f"{self._cmd_syntax}:TRANstion") + self._trailer = BusBItemManchesterTrailer(device, f"{self._cmd_syntax}:TRAiler") + self._word = BusBItemManchesterWord(device, f"{self._cmd_syntax}:WORD") + self._wordsize = BusBItemManchesterWordsize(device, f"{self._cmd_syntax}:WORDSIZe") + self._parity = BusBItemManchesterParity(device, f"{self._cmd_syntax}:parity") + + @property + def bitorder(self) -> BusBItemManchesterBitorder: + """Return the ``BUS:B:MANChester:BITORDer`` command. + + Description: + - This command sets or queries the Manchester bus Bit Order. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:BITORDer?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:BITORDer?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:BITORDer value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:BITORDer {LSB|MSB} + - BUS:B:MANChester:BITORDer? + ``` + + Info: + - ``B`` is the number of the bus. + - ``LSB`` arranges the bits in LSB format, least significant bits first. + - ``MSB`` arranges the bits in MSB format, most significant bits first. + """ + return self._bitorder + + @property + def bitrate(self) -> BusBItemManchesterBitrate: + """Return the ``BUS:B:MANChester:BITRate`` command. + + Description: + - This command sets or queries the Manchester bus bit rate. The bus number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:BITRate?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:BITRate + - BUS:B:MANChester:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the bit rate up to 1 Gbps. + """ + return self._bitrate + + @property + def displaymode(self) -> BusBItemManchesterDisplaymode: + """Return the ``BUS:B:MANChester:DISplaymode`` command. + + Description: + - This command sets or queries the Manchester bus Packet View. The bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:DISplaymode?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:DISplaymode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:DISplaymode value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:DISplaymode {BITS|PACKET} + - BUS:B:MANChester:DISplaymode? + ``` + + Info: + - ``B`` is the number of the bus. + - ``BITS`` sets the PacketView to off and the data to be seen as single bits formats. + - ``PACKET`` sets the PacketView to on and the data to be seen in the form of fields. + """ + return self._displaymode + + @property + def header(self) -> BusBItemManchesterHeader: + """Return the ``BUS:B:MANChester:HEADer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:HEADer?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:HEADer?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.length``: The ``BUS:B:MANChester:HEADer:LENGth`` command. + """ + return self._header + + @property + def idle(self) -> BusBItemManchesterIdle: + """Return the ``BUS:B:MANChester:IDLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:IDLE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:IDLE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bits``: The ``BUS:B:MANChester:IDLE:BITS`` command. + """ + return self._idle + + @property + def source(self) -> BusBItemManchesterSource: + """Return the ``BUS:B:MANChester:SOUrce`` command. + + Description: + - This command sets or queries the Manchester source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:MANChester:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def start(self) -> BusBItemManchesterStart: + """Return the ``BUS:B:MANChester:START`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:START?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:START?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.index``: The ``BUS:B:MANChester:START:INDex`` command. + """ + return self._start + + @property + def sync(self) -> BusBItemManchesterSync: + """Return the ``BUS:B:MANChester:SYNC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:SYNC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:SYNC?`` 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:MANChester:SYNC:SIZe`` command. + """ + return self._sync + + @property + def threshold(self) -> BusBItemManchesterThreshold: + """Return the ``BUS:B:MANChester:THReshold`` command. + + Description: + - This command sets or queries the Manchester threshold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:THReshold + - BUS:B:MANChester:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the Manchester Strobe threshold for the specified bus in Volts. The + argument range is -8V to +8V. + """ + return self._threshold + + @property + def tolerance(self) -> BusBItemManchesterTolerance: + """Return the ``BUS:B:MANChester:TOLerance`` command. + + Description: + - This command sets or queries the Tolerance bus parameter. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TOLerance?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:TOLerance?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:TOLerance value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:TOLerance + - BUS:B:MANChester:TOLerance? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the Tolerance bus parameter. + """ + return self._tolerance + + @property + def transtion(self) -> BusBItemManchesterTranstion: + """Return the ``BUS:B:MANChester:TRANstion`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TRANstion?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:TRANstion?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.zero``: The ``BUS:B:MANChester:TRANstion:ZERo`` command. + """ + return self._transtion + + @property + def trailer(self) -> BusBItemManchesterTrailer: + """Return the ``BUS:B:MANChester:TRAiler`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:TRAiler?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:TRAiler?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.length``: The ``BUS:B:MANChester:TRAiler:LENGth`` command. + """ + return self._trailer + + @property + def word(self) -> BusBItemManchesterWord: + """Return the ``BUS:B:MANChester:WORD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:WORD?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:WORD?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.count``: The ``BUS:B:MANChester:WORD:COUNt`` command. + """ + return self._word + + @property + def wordsize(self) -> BusBItemManchesterWordsize: + """Return the ``BUS:B:MANChester:WORDSIZe`` command. + + Description: + - This command sets or queries the Manchester word size in bits. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:WORDSIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:WORDSIZe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MANChester:WORDSIZe value`` command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:WORDSIZe + - BUS:B:MANChester:WORDSIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` sets the word size in bits. + """ + return self._wordsize + + @property + def parity(self) -> BusBItemManchesterParity: + """Return the ``BUS:B:MANChester:parity`` command. + + Description: + - This command sets or queries the Manchester bus Parity. The bus number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester:parity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester:parity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MANChester:parity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MANChester:parity {ODD|EVEN|NONE} + - BUS:B:MANChester:parity? + ``` + + Info: + - ``ODD`` sets the number of 1's to odd. + - ``EVEN`` sets the number of 1's to even. + - ``NONE`` specifies that Parity is not considered. + """ + return self._parity + + +class BusBItemLinStandard(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:STANDard`` command. + + Description: + - This command sets or queries the LIN bus standard for the specified bus. The bus number is + specified by x. + + 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 {MIXed|V1X|V2X} + - BUS:B:LIN:STANDard? + ``` + + Info: + - ``B`` is the number of the bus. + - ``MIXed`` specifies both versions 1.x and 2.x of the LIN standard. + - ``V1X`` specifies version 1.x of the LIN standard. + - ``V2X`` specifies version 2.x of the LIN standard. + """ + + +class BusBItemLinSourceThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:SOUrce:THReshold`` command. + + Description: + - This command sets or queries the LIN source threshold for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SOUrce:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SOUrce:THReshold?`` 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SOUrce:THReshold + - BUS:B:LIN:SOUrce:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` the LIN source threshold for the specified bus. + """ + + +class BusBItemLinSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:SOUrce`` command. + + Description: + - This command sets or queries the LIN data source for the specified bus. The bus number is + specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:LIN:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.threshold``: The ``BUS:B:LIN:SOUrce:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemLinSourceThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def threshold(self) -> BusBItemLinSourceThreshold: + """Return the ``BUS:B:LIN:SOUrce:THReshold`` command. + + Description: + - This command sets or queries the LIN source threshold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SOUrce:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SOUrce:THReshold?`` + 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:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SOUrce:THReshold + - BUS:B:LIN:SOUrce:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` the LIN source threshold for the specified bus. + """ + return self._threshold + + +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: + - This command sets or queries the LIN source polarity for the specified bus. The bus number + is specified by x. + + 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 {INVerted|NORmal} + - BUS:B:LIN:POLarity? + ``` + + Info: + - ``B`` is the number of the 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 BusBItemLinBitrateCustom(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:BITRate:CUSTom`` command. + + Description: + - This command sets or queries LIN custom bit rate for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:BITRate:CUSTom?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:BITRate:CUSTom?`` 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:CUSTom value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:BITRate:CUSTom + - BUS:B:LIN:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the LIN custom bit rate for the specified bus. + """ + + +class BusBItemLinBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:BITRate`` command. + + Description: + - This command sets or queries the LIN bus bit rate. The bus number is specified by x. If + you select Custom, use ``BUS:BX:LIN:BITRATE:CUSTOM`` to set the bit rate. + + 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 {RATE10K|RATE1K|RATE19K|RATE2K|RATE4K|RATE9K|CUSTom} + - BUS:B:LIN:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.custom``: The ``BUS:B:LIN:BITRate:CUSTom`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._custom = BusBItemLinBitrateCustom(device, f"{self._cmd_syntax}:CUSTom") + + @property + def custom(self) -> BusBItemLinBitrateCustom: + """Return the ``BUS:B:LIN:BITRate:CUSTom`` command. + + Description: + - This command sets or queries LIN custom bit rate for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:BITRate:CUSTom?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:BITRate:CUSTom?`` + 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:CUSTom value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:BITRate:CUSTom + - BUS:B:LIN:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the LIN custom bit rate for the specified bus. + """ + return self._custom + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitrate``: The ``BUS:B:LIN:BITRate`` command. + - ``.idformat``: The ``BUS:B:LIN:IDFORmat`` 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["PIDevice"], 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._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: + - This command sets or queries the LIN bus bit rate. The bus number is specified by x. + If you select Custom, use ``BUS:BX:LIN:BITRATE:CUSTOM`` to set the bit rate. + + 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 {RATE10K|RATE1K|RATE19K|RATE2K|RATE4K|RATE9K|CUSTom} + - BUS:B:LIN:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.custom``: The ``BUS:B:LIN:BITRate:CUSTom`` command. + """ + 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 polarity(self) -> BusBItemLinPolarity: + """Return the ``BUS:B:LIN:POLarity`` command. + + Description: + - This command sets or queries the LIN source polarity for the specified bus. The bus + number is specified by x. + + 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 {INVerted|NORmal} + - BUS:B:LIN:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + """ + 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: + - This command sets or queries the LIN data source for the specified bus. The bus number + is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:LIN:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.threshold``: The ``BUS:B:LIN:SOUrce:THReshold`` command. + """ + return self._source + + @property + def standard(self) -> BusBItemLinStandard: + """Return the ``BUS:B:LIN:STANDard`` command. + + Description: + - This command sets or queries the LIN bus standard for the specified bus. The bus + number is specified by x. + + 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 {MIXed|V1X|V2X} + - BUS:B:LIN:STANDard? + ``` + + Info: + - ``B`` is the number of the bus. + - ``MIXed`` specifies both versions 1.x and 2.x of the LIN standard. + - ``V1X`` specifies version 1.x of the LIN standard. + - ``V2X`` specifies version 2.x of the LIN standard. + """ + return self._standard + + +class BusBItemLabelName(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel:name`` command. + + Description: + - This command sets or queries the label for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:name?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:name?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:name value`` command. + + SCPI Syntax: + ``` + - BUS:B:LABel:name + - BUS:B:LABel:name? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is an alphanumeric string of text enclosed in quotes. The text string is + limited to 30 characters. It contains the text label information for the bus. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class BusBItemLabelYpos(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:YPOS?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:YPOS value`` command. + + SCPI Syntax: + ``` + - BUS:B:LABel:YPOS + - BUS:B:LABel:YPOS? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the y-position, in pixels relative to the baseline of the waveform, of the + specified bus label. + """ + + +class BusBItemLabelXpos(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel:XPOS`` command. + + Description: + - This command sets or queries the x-position of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:XPOS?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:XPOS value`` command. + + SCPI Syntax: + ``` + - BUS:B:LABel:XPOS + - BUS:B:LABel:XPOS? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the x-position, in pixels relative to the left edge of the screen of the + specified bus label. + """ + + +class BusBItemLabelFontUnderline(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:UNDERline?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:UNDERline?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:FONT:UNDERline value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:UNDERline {ON|OFF|1|0} + - BUS:B:LABel:FONT:UNDERline? + ``` + + Info: + - ``B`` is the number of the bus. + - ``ON`` displays the label in underlined font. + - ``OFF`` does not display the label in underlined font. + - ``1`` displays the label in underlined font. + - ``0`` does not display the label in underlined font. + """ + + +class BusBItemLabelFontType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified bus label, such as Arial or + Times New Roman. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:TYPE?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:TYPE + - BUS:B:LABel:FONT:TYPE? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the specified font type. Available fonts include: DejaVu Sans, DejaVu + Sans Mono, DejaVu Serif, Frutiger LT Std, Monospace, Sans Serif, Serif, Ubuntu, Ubuntu + Condensed, and Ubuntu Mono. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class BusBItemLabelFontSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:SIZE?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:SIZE + - BUS:B:LABel:FONT:SIZE? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the font size. + """ + + +class BusBItemLabelFontItalic(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:ITALic?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:ITALic {ON|OFF|1|0} + - BUS:B:LABel:FONT:ITALic? + ``` + + Info: + - ``B`` is the number of the bus. + - ``ON`` displays the label in italic font. + - ``OFF`` does not display the label in italic font. + - ``1`` displays the label in italic font. + - ``0`` does not display the label in italic font. + """ + + +class BusBItemLabelFontBold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:BOLD?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:BOLD {ON|OFF|1|0} + - BUS:B:LABel:FONT:BOLD? + ``` + + Info: + - ``B`` is the number of the bus. + - ``ON`` displays the label in bold font. + - ``OFF`` does not display the label in bold font. + - ``1`` displays the label in bold font. + - ``0`` does not display the label in bold font. + """ + + +class BusBItemLabelFont(SCPICmdRead): + """The ``BUS:B:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bold``: The ``BUS:B:LABel:FONT:BOLD`` command. + - ``.italic``: The ``BUS:B:LABel:FONT:ITALic`` command. + - ``.size``: The ``BUS:B:LABel:FONT:SIZE`` command. + - ``.type``: The ``BUS:B:LABel:FONT:TYPE`` command. + - ``.underline``: The ``BUS:B:LABel:FONT:UNDERline`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = BusBItemLabelFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = BusBItemLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") + self._size = BusBItemLabelFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = BusBItemLabelFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = BusBItemLabelFontUnderline(device, f"{self._cmd_syntax}:UNDERline") + + @property + def bold(self) -> BusBItemLabelFontBold: + """Return the ``BUS:B:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:BOLD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:BOLD {ON|OFF|1|0} + - BUS:B:LABel:FONT:BOLD? + ``` + + Info: + - ``B`` is the number of the bus. + - ``ON`` displays the label in bold font. + - ``OFF`` does not display the label in bold font. + - ``1`` displays the label in bold font. + - ``0`` does not display the label in bold font. + """ + return self._bold + + @property + def italic(self) -> BusBItemLabelFontItalic: + """Return the ``BUS:B:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:ITALic?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:ITALic {ON|OFF|1|0} + - BUS:B:LABel:FONT:ITALic? + ``` + + Info: + - ``B`` is the number of the bus. + - ``ON`` displays the label in italic font. + - ``OFF`` does not display the label in italic font. + - ``1`` displays the label in italic font. + - ``0`` does not display the label in italic font. + """ + return self._italic + + @property + def size(self) -> BusBItemLabelFontSize: + """Return the ``BUS:B:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:SIZE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:SIZE + - BUS:B:LABel:FONT:SIZE? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the font size. + """ + return self._size + + @property + def type(self) -> BusBItemLabelFontType: + """Return the ``BUS:B:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified bus label, such as Arial + or Times New Roman. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:TYPE + - BUS:B:LABel:FONT:TYPE? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the specified font type. Available fonts include: DejaVu Sans, DejaVu + Sans Mono, DejaVu Serif, Frutiger LT Std, Monospace, Sans Serif, Serif, Ubuntu, Ubuntu + Condensed, and Ubuntu Mono. + """ + return self._type + + @property + def underline(self) -> BusBItemLabelFontUnderline: + """Return the ``BUS:B:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified bus label. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT:UNDERline?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT:UNDERline?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - BUS:B:LABel:FONT:UNDERline {ON|OFF|1|0} + - BUS:B:LABel:FONT:UNDERline? + ``` + + Info: + - ``B`` is the number of the bus. + - ``ON`` displays the label in underlined font. + - ``OFF`` does not display the label in underlined font. + - ``1`` displays the label in underlined font. + - ``0`` does not display the label in underlined font. + """ + return self._underline + + +class BusBItemLabelColor(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified bus label. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:COLor?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:COLor value`` command. + + SCPI Syntax: + ``` + - BUS:B:LABel:COLor + - BUS:B:LABel:COLor? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the bus label color. To return the color to the default color, send an + empty string as in this example: ``:BUS:B1:LABEL:COLOR`` ''. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class BusBItemLabel(SCPICmdRead): + """The ``BUS:B:LABel`` command tree. + + 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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.color``: The ``BUS:B:LABel:COLor`` command. + - ``.font``: The ``BUS:B:LABel:FONT`` command tree. + - ``.xpos``: The ``BUS:B:LABel:XPOS`` command. + - ``.ypos``: The ``BUS:B:LABel:YPOS`` command. + - ``.name``: The ``BUS:B:LABel:name`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._color = BusBItemLabelColor(device, f"{self._cmd_syntax}:COLor") + self._font = BusBItemLabelFont(device, f"{self._cmd_syntax}:FONT") + self._xpos = BusBItemLabelXpos(device, f"{self._cmd_syntax}:XPOS") + self._ypos = BusBItemLabelYpos(device, f"{self._cmd_syntax}:YPOS") + self._name = BusBItemLabelName(device, f"{self._cmd_syntax}:name") + + @property + def color(self) -> BusBItemLabelColor: + """Return the ``BUS:B:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:COLor?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:COLor + - BUS:B:LABel:COLor? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the bus label color. To return the color to the default color, send + an empty string as in this example: ``:BUS:B1:LABEL:COLOR`` ''. + """ + return self._color + + @property + def font(self) -> BusBItemLabelFont: + """Return the ``BUS:B:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bold``: The ``BUS:B:LABel:FONT:BOLD`` command. + - ``.italic``: The ``BUS:B:LABel:FONT:ITALic`` command. + - ``.size``: The ``BUS:B:LABel:FONT:SIZE`` command. + - ``.type``: The ``BUS:B:LABel:FONT:TYPE`` command. + - ``.underline``: The ``BUS:B:LABel:FONT:UNDERline`` command. + """ + return self._font + + @property + def xpos(self) -> BusBItemLabelXpos: + """Return the ``BUS:B:LABel:XPOS`` command. + + Description: + - This command sets or queries the x-position of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:XPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:XPOS value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:XPOS + - BUS:B:LABel:XPOS? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the x-position, in pixels relative to the left edge of the screen of the + specified bus label. + """ + return self._xpos + + @property + def ypos(self) -> BusBItemLabelYpos: + """Return the ``BUS:B:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the specified bus label. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:YPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:YPOS value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:YPOS + - BUS:B:LABel:YPOS? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the y-position, in pixels relative to the baseline of the waveform, of + the specified bus label. + """ + return self._ypos + + @property + def name(self) -> BusBItemLabelName: + """Return the ``BUS:B:LABel:name`` command. + + Description: + - This command sets or queries the label for the specified bus. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel:name?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel:name?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel:name value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LABel:name + - BUS:B:LABel:name? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is an alphanumeric string of text enclosed in quotes. The text string is + limited to 30 characters. It contains the text label information for the bus. + """ + return self._name + + +class BusBItemI3cDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I3C:DATa:THReshold`` command. + + Description: + - This command sets or queries the I3C clock (SDA) data threshold level for the specified + bus. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:DATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C:DATa:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I3C:DATa:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I3C:DATa:THReshold {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I3C:DATa:THReshold? + ``` + + Info: + - ``B`` specifies the bus number. + - ```` is the threshold value for I3C Data Clock (SDA) source of the specified bus. + """ + + +class BusBItemI3cDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I3C:DATa:SOUrce`` command. + + Description: + - This command sets or queries the I3C data clock (SDA) source for the specified bus. + Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C: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:I3C:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I3C:DATa:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I3C:DATa:SOUrce? + ``` + + Info: + - ``B`` specifies the bus number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies the analog channel to use as the I3C SDA source. + - ``CH_D`` specifies the digital channel to use as the I3C SDA source. + - ``Math`` specifies the math waveform to use as the I3C SDA source. + - ``REF`` specifies the reference waveform to use as the I3C SDA source. + - ``REF_D`` specifies the digital reference waveform to use as the I3C SDA source. + """ + + +class BusBItemI3cData(SCPICmdRead): + """The ``BUS:B:I3C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C:DATa?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` specifies the bus number. + + Properties: + - ``.source``: The ``BUS:B:I3C:DATa:SOUrce`` command. + - ``.threshold``: The ``BUS:B:I3C:DATa:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI3cDataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemI3cDataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemI3cDataSource: + """Return the ``BUS:B:I3C:DATa:SOUrce`` command. + + Description: + - This command sets or queries the I3C data clock (SDA) source for the specified bus. + Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C: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:I3C:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I3C:DATa:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I3C:DATa:SOUrce? + ``` + + Info: + - ``B`` specifies the bus number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies the analog channel to use as the I3C SDA source. + - ``CH_D`` specifies the digital channel to use as the I3C SDA source. + - ``Math`` specifies the math waveform to use as the I3C SDA source. + - ``REF`` specifies the reference waveform to use as the I3C SDA source. + - ``REF_D`` specifies the digital reference waveform to use as the I3C SDA source. + """ + return self._source + + @property + def threshold(self) -> BusBItemI3cDataThreshold: + """Return the ``BUS:B:I3C:DATa:THReshold`` command. + + Description: + - This command sets or queries the I3C clock (SDA) data threshold level for the + specified bus. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:DATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C:DATa:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I3C:DATa:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I3C:DATa:THReshold {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I3C:DATa:THReshold? + ``` + + Info: + - ``B`` specifies the bus number. + - ```` is the threshold value for I3C Data Clock (SDA) source of the specified bus. + """ # noqa: E501 + return self._threshold + + +class BusBItemI3cClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I3C:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the I3C clock (SCLK) source threshold level for the specified + bus. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C:CLOCk:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I3C:CLOCk:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I3C:CLOCk:THReshold + - BUS:B:I3C:CLOCk:THReshold? + ``` + + Info: + - ``B`` specifies the bus number. + - ```` is the threshold value for I3C Clock (SCLK) source of the specified bus. + """ + + +class BusBItemI3cClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I3C:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the I3C clock (SCLK) source for the specified bus. Requires + purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C: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:I3C:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I3C:CLOCk:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I3C:CLOCk:SOUrce? + ``` + + Info: + - ``B`` specifies the bus number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies the analog channel to use as the I3C SCLK source. + - ``CH_D`` specifies the digital channel to use as the I3C SCLK source. + - ``Math`` specifies the math waveform to use as the I3C SCLK source. + - ``REF`` specifies the reference waveform to use as the I3C SCLK source. + - ``REF_D`` specifies the digital reference waveform to use as the I3C SCLK source. + """ + + +class BusBItemI3cClock(SCPICmdRead): + """The ``BUS:B:I3C:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C:CLOCk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` specifies the bus number. + + Properties: + - ``.source``: The ``BUS:B:I3C:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:I3C:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI3cClockSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemI3cClockThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemI3cClockSource: + """Return the ``BUS:B:I3C:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the I3C clock (SCLK) source for the specified bus. + Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C: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:I3C:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I3C:CLOCk:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I3C:CLOCk:SOUrce? + ``` + + Info: + - ``B`` specifies the bus number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies the analog channel to use as the I3C SCLK source. + - ``CH_D`` specifies the digital channel to use as the I3C SCLK source. + - ``Math`` specifies the math waveform to use as the I3C SCLK source. + - ``REF`` specifies the reference waveform to use as the I3C SCLK source. + - ``REF_D`` specifies the digital reference waveform to use as the I3C SCLK + source. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> BusBItemI3cClockThreshold: + """Return the ``BUS:B:I3C:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the I3C clock (SCLK) source threshold level for the + specified bus. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C:CLOCk:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:I3C:CLOCk:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:I3C:CLOCk:THReshold + - BUS:B:I3C:CLOCk:THReshold? + ``` + + Info: + - ``B`` specifies the bus number. + - ```` is the threshold value for I3C Clock (SCLK) source of the specified bus. + """ + return self._threshold + + +class BusBItemI3c(SCPICmdRead): + """The ``BUS:B:I3C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` specifies the bus number. + + Properties: + - ``.clock``: The ``BUS:B:I3C:CLOCk`` command tree. + - ``.data``: The ``BUS:B:I3C:DATa`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._clock = BusBItemI3cClock(device, f"{self._cmd_syntax}:CLOCk") + self._data = BusBItemI3cData(device, f"{self._cmd_syntax}:DATa") + + @property + def clock(self) -> BusBItemI3cClock: + """Return the ``BUS:B:I3C:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` specifies the bus number. + + Sub-properties: + - ``.source``: The ``BUS:B:I3C:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:I3C:CLOCk:THReshold`` command. + """ + return self._clock + + @property + def data(self) -> BusBItemI3cData: + """Return the ``BUS:B:I3C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` specifies the bus number. + + Sub-properties: + - ``.source``: The ``BUS:B:I3C:DATa:SOUrce`` command. + - ``.threshold``: The ``BUS:B:I3C:DATa:THReshold`` command. + """ + return self._data + + +class BusBItemI2cRwinaddr(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:RWINADDR`` command. + + Description: + - This command sets or queries the manner in which seven-bit I2C addresses are represented + in the busform display of the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:RWINADDR?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:RWINADDR?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:RWINADDR value`` command. + + SCPI Syntax: + ``` + - BUS:B:I2C:RWINADDR {0|1} + - BUS:B:I2C:RWINADDR? + ``` + + Info: + - ``B`` is the number of the bus. + - ``0`` displays seven-bit slave addresses as integers in the range of 0 to 127, with the + state of the R/W* bit from the LSB of the slave address byte. For example, the slave + address byte of 0b10100101 is displayed as the value 0x52 R. + - ``1`` displays the entire slave address byte as a number, with the R/W* signal as its LSB + (bit 0) and the slave address in bits 7..1. For example, the slave address byte of + 0b10100101 is displayed as the value 0xA5 R. + """ + + +class BusBItemI2cDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:DATa:THReshold`` command. + + Description: + - This command sets or queries the I2C Data (SDA) source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa:THReshold?`` 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:DATa:THReshold + - BUS:B:I2C:DATa:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the I2C Data (SDA) source threshold for the specified bus. + """ + + +class BusBItemI2cDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:DATa:SOUrce`` command. + + Description: + - This command sets or queries the I2C data (SDA) source for the specified I2C bus. The bus + is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I2C:DATa:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel to use as the I2C SDA source. + - ``CH_D`` specifies a digital channel to use as the I2C SDA source. + - ``MATH`` specifies a math waveform to use as the I2C SDA source. + - ``REF`` specifies a reference waveform to use as the I2C SDA source. + - ``REF_D`` specifies a digital reference waveform as the data source waveform for the + specified I2C bus. + """ + + +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. + - ``.threshold``: The ``BUS:B:I2C:DATa:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cDataSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemI2cDataThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemI2cDataSource: + """Return the ``BUS:B:I2C:DATa:SOUrce`` command. + + Description: + - This command sets or queries the I2C data (SDA) source for the specified I2C bus. The + bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I2C:DATa:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel to use as the I2C SDA source. + - ``CH_D`` specifies a digital channel to use as the I2C SDA source. + - ``MATH`` specifies a math waveform to use as the I2C SDA source. + - ``REF`` specifies a reference waveform to use as the I2C SDA source. + - ``REF_D`` specifies a digital reference waveform as the data source waveform for + the specified I2C bus. + """ + return self._source + + @property + def threshold(self) -> BusBItemI2cDataThreshold: + """Return the ``BUS:B:I2C:DATa:THReshold`` command. + + Description: + - This command sets or queries the I2C Data (SDA) source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa:THReshold?`` + 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:DATa:THReshold + - BUS:B:I2C:DATa:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the I2C Data (SDA) source threshold for the specified bus. + """ + return self._threshold + + +class BusBItemI2cClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the I2C Clock (SCLK) source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk:THReshold?`` 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:CLOCk:THReshold + - BUS:B:I2C:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the I2C Clock (SCLK) source threshold for the specified bus. + """ + + +class BusBItemI2cClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the I2C clock (SCLK) source for the specified bus. The bus is + specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I2C:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel to use as the I2C SCLK source. + - ``CH_D`` specifies a digital channel to use as the I2C SCLK source. + - ``MATH`` specifies a math waveform to use as the I2C SCLK source. + - ``REF`` specifies a reference waveform to use as the I2C SCLK source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform for + the specified I2C bus. + """ + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:I2C:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:I2C:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cClockSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemI2cClockThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemI2cClockSource: + """Return the ``BUS:B:I2C:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the I2C clock (SCLK) source for the specified bus. The + bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:I2C:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel to use as the I2C SCLK source. + - ``CH_D`` specifies a digital channel to use as the I2C SCLK source. + - ``MATH`` specifies a math waveform to use as the I2C SCLK source. + - ``REF`` specifies a reference waveform to use as the I2C SCLK source. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform + for the specified I2C bus. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> BusBItemI2cClockThreshold: + """Return the ``BUS:B:I2C:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the I2C Clock (SCLK) source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk:THReshold?`` + 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:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:I2C:CLOCk:THReshold + - BUS:B:I2C:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the I2C Clock (SCLK) source threshold for the specified bus. + """ + return self._threshold + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.clock``: The ``BUS:B:I2C:CLOCk`` command tree. + - ``.data``: The ``BUS:B:I2C:DATa`` command tree. + - ``.rwinaddr``: The ``BUS:B:I2C:RWINADDR`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._clock = BusBItemI2cClock(device, f"{self._cmd_syntax}:CLOCk") + self._data = BusBItemI2cData(device, f"{self._cmd_syntax}:DATa") + self._rwinaddr = BusBItemI2cRwinaddr(device, f"{self._cmd_syntax}:RWINADDR") + + @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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:I2C:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:I2C:CLOCk:THReshold`` command. + """ + return self._clock + + @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. + - ``.threshold``: The ``BUS:B:I2C:DATa:THReshold`` command. + """ + return self._data + + @property + def rwinaddr(self) -> BusBItemI2cRwinaddr: + """Return the ``BUS:B:I2C:RWINADDR`` command. + + Description: + - This command sets or queries the manner in which seven-bit I2C addresses are + represented in the busform display of the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:RWINADDR?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:RWINADDR?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:RWINADDR value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:RWINADDR {0|1} + - BUS:B:I2C:RWINADDR? + ``` + + Info: + - ``B`` is the number of the bus. + - ``0`` displays seven-bit slave addresses as integers in the range of 0 to 127, with + the state of the R/W* bit from the LSB of the slave address byte. For example, the + slave address byte of 0b10100101 is displayed as the value 0x52 R. + - ``1`` displays the entire slave address byte as a number, with the R/W* signal as its + LSB (bit 0) and the slave address in bits 7..1. For example, the slave address byte of + 0b10100101 is displayed as the value 0xA5 R. + """ + return self._rwinaddr + + +class BusBItemFlexrayTxrxthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:TXRXTHRESHold`` command. + + Description: + - This command sets or queries the FlexRay data source TxRx threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:TXRXTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:TXRXTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:TXRXTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:TXRXTHRESHold + - BUS:B:FLEXray:TXRXTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the TxRx threshold. + """ + + +class BusBItemFlexrayThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:THRESHold`` command. + + Description: + - This command sets or queries the FlexRay data source high threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:THRESHold + - BUS:B:FLEXray:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the FlexRay data source high threshold for the specified bus. + """ + + +class BusBItemFlexraySourceTxrx(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:SOUrce:TXRX`` command. + + Description: + - This command sets or queries the FlexRay TxRx data source for the specified bus when the + signal type is TXRX. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SOUrce:TXRX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SOUrce:TXRX?`` 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:TXRX value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SOUrce:TXRX {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:FLEXray:SOUrce:TXRX? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel and the digital + channel as the source. + - ``CH_D`` specifies an analog channel and the digital channel as the source. + - ``REF_D`` specifies a reference waveform and the digital channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemFlexraySource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:SOUrce`` command. + + Description: + - This command sets or queries the Flexray bus data source for the specified bus when the + signal type is BDIFFBP or BM. The bus number is specified by x. + + 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 {S_Ch|CH|MATH|REF} + - BUS:B:FLEXray:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + + Properties: + - ``.txrx``: The ``BUS:B:FLEXray:SOUrce:TXRX`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._txrx = BusBItemFlexraySourceTxrx(device, f"{self._cmd_syntax}:TXRX") + + @property + def txrx(self) -> BusBItemFlexraySourceTxrx: + """Return the ``BUS:B:FLEXray:SOUrce:TXRX`` command. + + Description: + - This command sets or queries the FlexRay TxRx data source for the specified bus when + the signal type is TXRX. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SOUrce:TXRX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SOUrce:TXRX?`` + 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:TXRX value`` command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SOUrce:TXRX {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:FLEXray:SOUrce:TXRX? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel and the + digital channel as the source. + - ``CH_D`` specifies an analog channel and the digital channel as the source. + - ``REF_D`` specifies a reference waveform and the digital channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ # noqa: E501 + return self._txrx + + +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 BusBItemFlexrayLowthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:LOWTHRESHold`` command. + + Description: + - This command sets or queries the FlexRay data source low threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:LOWTHRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:LOWTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:LOWTHRESHold + - BUS:B:FLEXray:LOWTHRESHold? + ``` + + Info: + - ```` is the FlexRay data source low threshold for the specified bus. + - ``B`` is the number of the bus. + """ + + +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 BusBItemFlexrayBitrateCustom(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:BITRate:CUSTom`` command. + + Description: + - This command sets or queries the FlexRay custom bit rate for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:BITRate:CUSTom?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:BITRate:CUSTom?`` + 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:CUSTom value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:BITRate:CUSTom + - BUS:B:FLEXray:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the FlexRay custom bit rate for the specified bus. + """ + + +class BusBItemFlexrayBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:BITRate`` command. + + Description: + - This command sets or queries the FlexRay bus bit rate. The bus is specified by x. If you + select Custom, use ``BUS:BX:FLEXRAY:BITRATE:CUSTOM`` to set the bit rate. + + 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 {CUSTOM|RATE2M|RATE5M|RATE10M} + - BUS:B:FLEXray:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.custom``: The ``BUS:B:FLEXray:BITRate:CUSTom`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._custom = BusBItemFlexrayBitrateCustom(device, f"{self._cmd_syntax}:CUSTom") + + @property + def custom(self) -> BusBItemFlexrayBitrateCustom: + """Return the ``BUS:B:FLEXray:BITRate:CUSTom`` command. + + Description: + - This command sets or queries the FlexRay custom bit rate for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:BITRate:CUSTom?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:BITRate:CUSTom?`` + 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:CUSTom value`` command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:BITRate:CUSTom + - BUS:B:FLEXray:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the FlexRay custom bit rate for the specified bus. + """ + return self._custom + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitrate``: The ``BUS:B:FLEXray:BITRate`` command. + - ``.channel``: The ``BUS:B:FLEXray:CHannel`` command. + - ``.lowthreshold``: The ``BUS:B:FLEXray:LOWTHRESHold`` command. + - ``.signal``: The ``BUS:B:FLEXray:SIGnal`` command. + - ``.source``: The ``BUS:B:FLEXray:SOUrce`` command. + - ``.threshold``: The ``BUS:B:FLEXray:THRESHold`` command. + - ``.txrxthreshold``: The ``BUS:B:FLEXray:TXRXTHRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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._lowthreshold = BusBItemFlexrayLowthreshold(device, f"{self._cmd_syntax}:LOWTHRESHold") + self._signal = BusBItemFlexraySignal(device, f"{self._cmd_syntax}:SIGnal") + self._source = BusBItemFlexraySource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemFlexrayThreshold(device, f"{self._cmd_syntax}:THRESHold") + self._txrxthreshold = BusBItemFlexrayTxrxthreshold( + device, f"{self._cmd_syntax}:TXRXTHRESHold" + ) + + @property + def bitrate(self) -> BusBItemFlexrayBitrate: + """Return the ``BUS:B:FLEXray:BITRate`` command. + + Description: + - This command sets or queries the FlexRay bus bit rate. The bus is specified by x. If + you select Custom, use ``BUS:BX:FLEXRAY:BITRATE:CUSTOM`` to set the bit rate. + + 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 {CUSTOM|RATE2M|RATE5M|RATE10M} + - BUS:B:FLEXray:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.custom``: The ``BUS:B:FLEXray:BITRate:CUSTom`` command. + """ + 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 lowthreshold(self) -> BusBItemFlexrayLowthreshold: + """Return the ``BUS:B:FLEXray:LOWTHRESHold`` command. + + Description: + - This command sets or queries the FlexRay data source low threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:LOWTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:FLEXray:LOWTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:LOWTHRESHold + - BUS:B:FLEXray:LOWTHRESHold? + ``` + + Info: + - ```` is the FlexRay data source low threshold for the specified bus. + - ``B`` is the number of the bus. + """ + return self._lowthreshold + + @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: + - This command sets or queries the Flexray bus data source for the specified bus when + the signal type is BDIFFBP or BM. The bus number is specified by x. + + 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 {S_Ch|CH|MATH|REF} + - BUS:B:FLEXray:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + + Sub-properties: + - ``.txrx``: The ``BUS:B:FLEXray:SOUrce:TXRX`` command. + """ + return self._source + + @property + def threshold(self) -> BusBItemFlexrayThreshold: + """Return the ``BUS:B:FLEXray:THRESHold`` command. + + Description: + - This command sets or queries the FlexRay data source high threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:THRESHold + - BUS:B:FLEXray:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the FlexRay data source high threshold for the specified bus. + """ + return self._threshold + + @property + def txrxthreshold(self) -> BusBItemFlexrayTxrxthreshold: + """Return the ``BUS:B:FLEXray:TXRXTHRESHold`` command. + + Description: + - This command sets or queries the FlexRay data source TxRx threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:TXRXTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:TXRXTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:FLEXray:TXRXTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:TXRXTHRESHold + - BUS:B:FLEXray:TXRXTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the TxRx threshold. + """ + return self._txrxthreshold + + +class BusBItemEusbThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:THRESHold`` command. + + Description: + - This command sets or queries the eUSB source High threshold for the specified bus when + signal type is Diff. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:THRESHold?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:THRESHold + - BUS:B:EUSB:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB Strobe threshold for the specified bus. The argument range is -8 V + to +8 V. + """ + + +class BusBItemEusbSourceDplus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the eUSB dataPlus (SDATAPLUS) source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB: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:EUSB:SOUrce:DPLUs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:EUSB:SOUrce:DPLUs? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEusbSourceDminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the eUSB DataMinus (SDATAMINUS) source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SOUrce:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB: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:EUSB:SOUrce:DMINus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:EUSB:SOUrce:DMINus? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEusbSourceDiff(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:SOUrce:DIFF`` command. + + Description: + - This command sets or queries the eUSB Diff source for the specified bus when signal type + is Diff. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SOUrce:DIFF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:SOUrce:DIFF?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:SOUrce:DIFF value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:SOUrce:DIFF {S_Ch|CH|MATH|REF} + - BUS:B:EUSB:SOUrce:DIFF? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEusbSource(SCPICmdRead): + """The ``BUS:B:EUSB:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.diff``: The ``BUS:B:EUSB:SOUrce:DIFF`` command. + - ``.dminus``: The ``BUS:B:EUSB:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:EUSB:SOUrce:DPLUs`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._diff = BusBItemEusbSourceDiff(device, f"{self._cmd_syntax}:DIFF") + self._dminus = BusBItemEusbSourceDminus(device, f"{self._cmd_syntax}:DMINus") + self._dplus = BusBItemEusbSourceDplus(device, f"{self._cmd_syntax}:DPLUs") + + @property + def diff(self) -> BusBItemEusbSourceDiff: + """Return the ``BUS:B:EUSB:SOUrce:DIFF`` command. + + Description: + - This command sets or queries the eUSB Diff source for the specified bus when signal + type is Diff. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SOUrce:DIFF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:SOUrce:DIFF?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:SOUrce:DIFF value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:SOUrce:DIFF {S_Ch|CH|MATH|REF} + - BUS:B:EUSB:SOUrce:DIFF? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._diff + + @property + def dminus(self) -> BusBItemEusbSourceDminus: + """Return the ``BUS:B:EUSB:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the eUSB DataMinus (SDATAMINUS) source for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SOUrce:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB: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:EUSB:SOUrce:DMINus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:EUSB:SOUrce:DMINus? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._dminus + + @property + def dplus(self) -> BusBItemEusbSourceDplus: + """Return the ``BUS:B:EUSB:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the eUSB dataPlus (SDATAPLUS) source for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB: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:EUSB:SOUrce:DPLUs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:EUSB:SOUrce:DPLUs? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._dplus + + +class BusBItemEusbSignaltype(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:SIGNALTYpe`` command. + + Description: + - This command sets or queries the eUSB signal type for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:SIGNALTYpe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:SIGNALTYpe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:EUSB:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus. + """ + + +class BusBItemEusbOperatingMode(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:OPERating:MODe`` command. + + Description: + - This command sets or queries the eUSB mode for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:OPERating:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:OPERating:MODe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:OPERating:MODe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:OPERating:MODe {NATive|REPEATERHOSt|REPEATERPERIPHERAL} + - BUS:B:EUSB:OPERating:MODe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NATive`` sets the operating mode as native. + - ``REPEATERHOSt`` sets the operating mode as repeater host. + - ``REPEATERPERIPHERAL`` sets the operating mode as repeater peripheral. + """ + + +class BusBItemEusbOperating(SCPICmdRead): + """The ``BUS:B:EUSB:OPERating`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:OPERating?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:OPERating?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.mode``: The ``BUS:B:EUSB:OPERating:MODe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._mode = BusBItemEusbOperatingMode(device, f"{self._cmd_syntax}:MODe") + + @property + def mode(self) -> BusBItemEusbOperatingMode: + """Return the ``BUS:B:EUSB:OPERating:MODe`` command. + + Description: + - This command sets or queries the eUSB mode for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:OPERating:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:OPERating:MODe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:EUSB:OPERating:MODe value`` command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:OPERating:MODe {NATive|REPEATERHOSt|REPEATERPERIPHERAL} + - BUS:B:EUSB:OPERating:MODe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NATive`` sets the operating mode as native. + - ``REPEATERHOSt`` sets the operating mode as repeater host. + - ``REPEATERPERIPHERAL`` sets the operating mode as repeater peripheral. + """ + return self._mode + + +class BusBItemEusbLowthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:LOWTHRESHold`` command. + + Description: + - This command sets or queries the eUSB source Low threshold for the specified bus when + signal type is Differential. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:LOWTHRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:LOWTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:LOWTHRESHold + - BUS:B:EUSB:LOWTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB Strobe threshold for the specified bus. The argument range is -8 V + to +8 V. + """ + + +class BusBItemEusbDataplusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the eUSB DATA Plus source threshold for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAPLUSTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAPLUSTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:DATAPLUSTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:DATAPLUSTHRESHold + - BUS:B:EUSB:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB DATA Plus source threshold. The argument range is -8 V to +8 V. + """ + + +class BusBItemEusbDataplusDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold`` command. + + Description: + - This command sets or queries the eUSB D+ Input Source Data Threshold for Data line decode + for specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:DATAPLUS:DATA:THRESHold + - BUS:B:EUSB:DATAPLUS:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB Strobe threshold for the specified bus. The argument range is -8 V + to +8 V. + """ + + +class BusBItemEusbDataplusData(SCPICmdRead): + """The ``BUS:B:EUSB:DATAPLUS:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAPLUS:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAPLUS:DATA?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.threshold``: The ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemEusbDataplusDataThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def threshold(self) -> BusBItemEusbDataplusDataThreshold: + """Return the ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold`` command. + + Description: + - This command sets or queries the eUSB D+ Input Source Data Threshold for Data line + decode for specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:DATAPLUS:DATA:THRESHold + - BUS:B:EUSB:DATAPLUS:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB Strobe threshold for the specified bus. The argument range is -8 + V to +8 V. + """ + return self._threshold + + +class BusBItemEusbDataplus(SCPICmdRead): + """The ``BUS:B:EUSB:DATAPLUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAPLUS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAPLUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.data``: The ``BUS:B:EUSB:DATAPLUS:DATA`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = BusBItemEusbDataplusData(device, f"{self._cmd_syntax}:DATA") + + @property + def data(self) -> BusBItemEusbDataplusData: + """Return the ``BUS:B:EUSB:DATAPLUS:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAPLUS:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAPLUS:DATA?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.threshold``: The ``BUS:B:EUSB:DATAPLUS:DATA:THRESHold`` command. + """ + return self._data + + +class BusBItemEusbDataminusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:DATAMINUSTHRESHold`` command. + + Description: + - This command sets or queries the eUSB D- Input Source Data Threshold for Data line decode + for specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAMINUSTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAMINUSTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:EUSB:DATAMINUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:DATAMINUSTHRESHold + - BUS:B:EUSB:DATAMINUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB DATA Minus source threshold. The argument range is -8 V to +8 V. + """ + + +class BusBItemEusbDataminusDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold`` command. + + Description: + - This command sets or queries the eUSB D- Input Source Data Threshold for Data line decode + for specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:DATAMINUS:DATA:THRESHold + - BUS:B:EUSB:DATAMINUS:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the EUSB Strobe threshold for the specified bus. The argument range is -8 V + to +8 V. + """ + + +class BusBItemEusbDataminusData(SCPICmdRead): + """The ``BUS:B:EUSB:DATAMINUS:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAMINUS:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAMINUS:DATA?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.threshold``: The ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemEusbDataminusDataThreshold( + device, f"{self._cmd_syntax}:THRESHold" + ) + + @property + def threshold(self) -> BusBItemEusbDataminusDataThreshold: + """Return the ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold`` command. + + Description: + - This command sets or queries the eUSB D- Input Source Data Threshold for Data line + decode for specified bus. + + Usage: + - Using the ``.query()`` method will send the + ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:DATAMINUS:DATA:THRESHold + - BUS:B:EUSB:DATAMINUS:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the EUSB Strobe threshold for the specified bus. The argument range is -8 + V to +8 V. + """ + return self._threshold + + +class BusBItemEusbDataminus(SCPICmdRead): + """The ``BUS:B:EUSB:DATAMINUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAMINUS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAMINUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.data``: The ``BUS:B:EUSB:DATAMINUS:DATA`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = BusBItemEusbDataminusData(device, f"{self._cmd_syntax}:DATA") + + @property + def data(self) -> BusBItemEusbDataminusData: + """Return the ``BUS:B:EUSB:DATAMINUS:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAMINUS:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAMINUS:DATA?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.threshold``: The ``BUS:B:EUSB:DATAMINUS:DATA:THRESHold`` command. + """ + return self._data + + +class BusBItemEusbBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:EUSB:BITRate`` command. + + Description: + - This command sets or queries the eUSB data rate for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:BITRate {HIGH|FULL|LOW} + - BUS:B:EUSB:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ``HIGH`` sets the bit rate to Bit Rate to 480 Mbps. + - ``FULL`` sets the bit rate to Bit Rate to 12 Mbps. + - ``LOW`` sets the bit rate to Bit Rate to 1.5 Mbps. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemEusb(SCPICmdRead): + """The ``BUS:B:EUSB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitrate``: The ``BUS:B:EUSB:BITRate`` command. + - ``.dataminus``: The ``BUS:B:EUSB:DATAMINUS`` command tree. + - ``.dataminusthreshold``: The ``BUS:B:EUSB:DATAMINUSTHRESHold`` command. + - ``.dataplus``: The ``BUS:B:EUSB:DATAPLUS`` command tree. + - ``.dataplusthreshold``: The ``BUS:B:EUSB:DATAPLUSTHRESHold`` command. + - ``.lowthreshold``: The ``BUS:B:EUSB:LOWTHRESHold`` command. + - ``.operating``: The ``BUS:B:EUSB:OPERating`` command tree. + - ``.signaltype``: The ``BUS:B:EUSB:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:EUSB:SOUrce`` command tree. + - ``.threshold``: The ``BUS:B:EUSB:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemEusbBitrate(device, f"{self._cmd_syntax}:BITRate") + self._dataminus = BusBItemEusbDataminus(device, f"{self._cmd_syntax}:DATAMINUS") + self._dataminusthreshold = BusBItemEusbDataminusthreshold( + device, f"{self._cmd_syntax}:DATAMINUSTHRESHold" + ) + self._dataplus = BusBItemEusbDataplus(device, f"{self._cmd_syntax}:DATAPLUS") + self._dataplusthreshold = BusBItemEusbDataplusthreshold( + device, f"{self._cmd_syntax}:DATAPLUSTHRESHold" + ) + self._lowthreshold = BusBItemEusbLowthreshold(device, f"{self._cmd_syntax}:LOWTHRESHold") + self._operating = BusBItemEusbOperating(device, f"{self._cmd_syntax}:OPERating") + self._signaltype = BusBItemEusbSignaltype(device, f"{self._cmd_syntax}:SIGNALTYpe") + self._source = BusBItemEusbSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemEusbThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def bitrate(self) -> BusBItemEusbBitrate: + """Return the ``BUS:B:EUSB:BITRate`` command. + + Description: + - This command sets or queries the eUSB data rate for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:BITRate {HIGH|FULL|LOW} + - BUS:B:EUSB:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ``HIGH`` sets the bit rate to Bit Rate to 480 Mbps. + - ``FULL`` sets the bit rate to Bit Rate to 12 Mbps. + - ``LOW`` sets the bit rate to Bit Rate to 1.5 Mbps. + """ + return self._bitrate + + @property + def dataminus(self) -> BusBItemEusbDataminus: + """Return the ``BUS:B:EUSB:DATAMINUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAMINUS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAMINUS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.data``: The ``BUS:B:EUSB:DATAMINUS:DATA`` command tree. + """ + return self._dataminus + + @property + def dataminusthreshold(self) -> BusBItemEusbDataminusthreshold: + """Return the ``BUS:B:EUSB:DATAMINUSTHRESHold`` command. + + Description: + - This command sets or queries the eUSB D- Input Source Data Threshold for Data line + decode for specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAMINUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:EUSB:DATAMINUSTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:EUSB:DATAMINUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:DATAMINUSTHRESHold + - BUS:B:EUSB:DATAMINUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB DATA Minus source threshold. The argument range is -8 V to +8 V. + """ + return self._dataminusthreshold + + @property + def dataplus(self) -> BusBItemEusbDataplus: + """Return the ``BUS:B:EUSB:DATAPLUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAPLUS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAPLUS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.data``: The ``BUS:B:EUSB:DATAPLUS:DATA`` command tree. + """ + return self._dataplus + + @property + def dataplusthreshold(self) -> BusBItemEusbDataplusthreshold: + """Return the ``BUS:B:EUSB:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the eUSB DATA Plus source threshold for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:DATAPLUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:DATAPLUSTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:EUSB:DATAPLUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:DATAPLUSTHRESHold + - BUS:B:EUSB:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB DATA Plus source threshold. The argument range is -8 V to +8 V. + """ + return self._dataplusthreshold + + @property + def lowthreshold(self) -> BusBItemEusbLowthreshold: + """Return the ``BUS:B:EUSB:LOWTHRESHold`` command. + + Description: + - This command sets or queries the eUSB source Low threshold for the specified bus when + signal type is Differential. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:LOWTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:LOWTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:LOWTHRESHold + - BUS:B:EUSB:LOWTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB Strobe threshold for the specified bus. The argument range is -8 + V to +8 V. + """ + return self._lowthreshold + + @property + def operating(self) -> BusBItemEusbOperating: + """Return the ``BUS:B:EUSB:OPERating`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:OPERating?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:OPERating?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.mode``: The ``BUS:B:EUSB:OPERating:MODe`` command. + """ + return self._operating + + @property + def signaltype(self) -> BusBItemEusbSignaltype: + """Return the ``BUS:B:EUSB:SIGNALTYpe`` command. + + Description: + - This command sets or queries the eUSB signal type for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:SIGNALTYpe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:SIGNALTYpe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:EUSB:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus. + """ + return self._signaltype + + @property + def source(self) -> BusBItemEusbSource: + """Return the ``BUS:B:EUSB:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.diff``: The ``BUS:B:EUSB:SOUrce:DIFF`` command. + - ``.dminus``: The ``BUS:B:EUSB:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:EUSB:SOUrce:DPLUs`` command. + """ + return self._source + + @property + def threshold(self) -> BusBItemEusbThreshold: + """Return the ``BUS:B:EUSB:THRESHold`` command. + + Description: + - This command sets or queries the eUSB source High threshold for the specified bus when + signal type is Diff. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:EUSB:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:EUSB:THRESHold + - BUS:B:EUSB:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the eUSB Strobe threshold for the specified bus. The argument range is -8 + V to +8 V. + """ + return self._threshold + + +class BusBItemEthernetType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:TYPe`` command. + + Description: + - This command specifies the Ethernet standard speed. The bus number is specified by x. + + 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 {TENBASET|HUNDREDBASETX} + - BUS:B:ETHERnet:TYPe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``TENBASET`` specifies the Ethernet speed as 10Base-T. + - ``HUNDREDBASETX`` specifies the Ethernet speed as 100Base-T. + """ + + +class BusBItemEthernetThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:THRESHold`` command. + + Description: + - This command sets or queries the Ethernet DATA source High threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:THRESHold + - BUS:B:ETHERnet:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the Ethernet DATA source High threshold for the specified bus. + """ + + +class BusBItemEthernetSourceDplus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the Ethernet D+ source for the specified bus. this command + specifies the source channel to use when the signal type is single ended. The bus is + specified by x. + + 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 {S_Ch|CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DPLUs? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEthernetSourceDminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the Ethernet D- source for the specified bus. this command + specifies the source channel to use when the signal type is single ended. The bus is + specified by x. + + 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 {S_Ch|CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DMINus? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEthernetSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce`` command. + + Description: + - This command sets or queries the Ethernet data (SDATA) source for the specified bus. This + command controls the source channel when the signal type is differential. The bus number + is specified by x. + + 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``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies to use one of the analog channels as the Ethernet data source for + differential input. + - ``MATH`` specifies to use a math waveform as the source for Ethernet data differential + input. + - ``REF`` specifies to use one of the reference waveforms as the Ethernet data source for + differential input. + + Properties: + - ``.dminus``: The ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:ETHERnet:SOUrce:DPLUs`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dminus = BusBItemEthernetSourceDminus(device, f"{self._cmd_syntax}:DMINus") + self._dplus = BusBItemEthernetSourceDplus(device, f"{self._cmd_syntax}:DPLUs") + + @property + def dminus(self) -> BusBItemEthernetSourceDminus: + """Return the ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the Ethernet D- source for the specified bus. this + command specifies the source channel to use when the signal type is single ended. The + bus is specified by x. + + 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 {S_Ch|CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DMINus? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._dminus + + @property + def dplus(self) -> BusBItemEthernetSourceDplus: + """Return the ``BUS:B:ETHERnet:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the Ethernet D+ source for the specified bus. this + command specifies the source channel to use when the signal type is single ended. The + bus is specified by x. + + 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 {S_Ch|CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DPLUs? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._dplus + + +class BusBItemEthernetSignaltype(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:SIGNALTYpe`` command. + + Description: + - This command sets or queries the Ethernet signal type for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SIGNALTYpe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:SIGNALTYpe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:ETHERnet:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``SINGLE`` specifies single-ended signals. + - ``DIFF`` specifies differential signals. + """ + + +class BusBItemEthernetQtagging(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:QTAGGING`` command. + + Description: + - This command sets or queries whether Q-Tagging packets are available for triggering on + Ethernet. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:QTAGGING?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:QTAGGING?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:QTAGGING value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:QTAGGING {YES|NO} + - BUS:B:ETHERnet:QTAGGING? + ``` + + Info: + - ``B`` is the number of the bus. + - ``YES`` specifies that Q-Tagging packets are available. + - ``NO`` specifies that Q-Tagging packets are not available. + """ + + +class BusBItemEthernetLowthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:LOWTHRESHold`` command. + + Description: + - This command sets or queries the Ethernet source Low threshold for the specified bus. This + threshold only applies when the Ethernet signal type is differential. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:LOWTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:LOWTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:LOWTHRESHold + - BUS:B:ETHERnet:LOWTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the Ethernet source Low threshold for the specified bus. + """ + + +class BusBItemEthernetIpvfour(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:IPVFOUR`` command. + + Description: + - This command sets or queries whether IPV4 packets are available for triggering on + Ethernet. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:IPVFOUR?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:IPVFOUR?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:IPVFOUR value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:IPVFOUR {YES|NO} + - BUS:B:ETHERnet:IPVFOUR? + ``` + + Info: + - ``B`` is the number of the bus. + - ``YES`` specifies that IPV4 packets are available. + - ``NO`` specifies that IPV4 packets are not available. + """ + + +class BusBItemEthernetDataplusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the Ethernet D+ source threshold for the specified bus. This + threshold only applies when the Ethernet signal type is single ended. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:DATAPLUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:DATAPLUSTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:DATAPLUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:DATAPLUSTHRESHold + - BUS:B:ETHERnet:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` is the Ethernet D+ source threshold for the specified bus. + """ + + +class BusBItemEthernetDataminusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:DATAMINUSTHRESHold`` command. + + Description: + - This command sets or queries the Ethernet D- source threshold for the specified bus. This + threshold only applies when the Ethernet signal type is single ended. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:DATAMINUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERnet:DATAMINUSTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:DATAMINUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:DATAMINUSTHRESHold + - BUS:B:ETHERnet:DATAMINUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the Ethernet D- source threshold for the specified bus. + """ + + +# pylint: disable=too-many-instance-attributes +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.dataminusthreshold``: The ``BUS:B:ETHERnet:DATAMINUSTHRESHold`` command. + - ``.dataplusthreshold``: The ``BUS:B:ETHERnet:DATAPLUSTHRESHold`` command. + - ``.ipvfour``: The ``BUS:B:ETHERnet:IPVFOUR`` command. + - ``.lowthreshold``: The ``BUS:B:ETHERnet:LOWTHRESHold`` command. + - ``.qtagging``: The ``BUS:B:ETHERnet:QTAGGING`` command. + - ``.signaltype``: The ``BUS:B:ETHERnet:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:ETHERnet:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ETHERnet:THRESHold`` command. + - ``.type``: The ``BUS:B:ETHERnet:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dataminusthreshold = BusBItemEthernetDataminusthreshold( + device, f"{self._cmd_syntax}:DATAMINUSTHRESHold" + ) + self._dataplusthreshold = BusBItemEthernetDataplusthreshold( + device, f"{self._cmd_syntax}:DATAPLUSTHRESHold" + ) + self._ipvfour = BusBItemEthernetIpvfour(device, f"{self._cmd_syntax}:IPVFOUR") + self._lowthreshold = BusBItemEthernetLowthreshold( + device, f"{self._cmd_syntax}:LOWTHRESHold" + ) + self._qtagging = BusBItemEthernetQtagging(device, f"{self._cmd_syntax}:QTAGGING") + self._signaltype = BusBItemEthernetSignaltype(device, f"{self._cmd_syntax}:SIGNALTYpe") + self._source = BusBItemEthernetSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemEthernetThreshold(device, f"{self._cmd_syntax}:THRESHold") + self._type = BusBItemEthernetType(device, f"{self._cmd_syntax}:TYPe") + + @property + def dataminusthreshold(self) -> BusBItemEthernetDataminusthreshold: + """Return the ``BUS:B:ETHERnet:DATAMINUSTHRESHold`` command. + + Description: + - This command sets or queries the Ethernet D- source threshold for the specified bus. + This threshold only applies when the Ethernet signal type is single ended. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:DATAMINUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERnet:DATAMINUSTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:DATAMINUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:DATAMINUSTHRESHold + - BUS:B:ETHERnet:DATAMINUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the Ethernet D- source threshold for the specified bus. + """ + return self._dataminusthreshold + + @property + def dataplusthreshold(self) -> BusBItemEthernetDataplusthreshold: + """Return the ``BUS:B:ETHERnet:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the Ethernet D+ source threshold for the specified bus. + This threshold only applies when the Ethernet signal type is single ended. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:DATAPLUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERnet:DATAPLUSTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:DATAPLUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:DATAPLUSTHRESHold + - BUS:B:ETHERnet:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` is the Ethernet D+ source threshold for the specified bus. + """ + return self._dataplusthreshold + + @property + def ipvfour(self) -> BusBItemEthernetIpvfour: + """Return the ``BUS:B:ETHERnet:IPVFOUR`` command. + + Description: + - This command sets or queries whether IPV4 packets are available for triggering on + Ethernet. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:IPVFOUR?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:IPVFOUR?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:IPVFOUR value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:IPVFOUR {YES|NO} + - BUS:B:ETHERnet:IPVFOUR? + ``` + + Info: + - ``B`` is the number of the bus. + - ``YES`` specifies that IPV4 packets are available. + - ``NO`` specifies that IPV4 packets are not available. + """ + return self._ipvfour + + @property + def lowthreshold(self) -> BusBItemEthernetLowthreshold: + """Return the ``BUS:B:ETHERnet:LOWTHRESHold`` command. + + Description: + - This command sets or queries the Ethernet source Low threshold for the specified bus. + This threshold only applies when the Ethernet signal type is differential. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:LOWTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:LOWTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:LOWTHRESHold + - BUS:B:ETHERnet:LOWTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the Ethernet source Low threshold for the specified bus. + """ + return self._lowthreshold + + @property + def qtagging(self) -> BusBItemEthernetQtagging: + """Return the ``BUS:B:ETHERnet:QTAGGING`` command. + + Description: + - This command sets or queries whether Q-Tagging packets are available for triggering on + Ethernet. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:QTAGGING?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:QTAGGING?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:QTAGGING value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:QTAGGING {YES|NO} + - BUS:B:ETHERnet:QTAGGING? + ``` + + Info: + - ``B`` is the number of the bus. + - ``YES`` specifies that Q-Tagging packets are available. + - ``NO`` specifies that Q-Tagging packets are not available. + """ + return self._qtagging + + @property + def signaltype(self) -> BusBItemEthernetSignaltype: + """Return the ``BUS:B:ETHERnet:SIGNALTYpe`` command. + + Description: + - This command sets or queries the Ethernet signal type for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SIGNALTYpe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:SIGNALTYpe value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:ETHERnet:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``SINGLE`` specifies single-ended signals. + - ``DIFF`` specifies differential signals. + """ + return self._signaltype + + @property + def source(self) -> BusBItemEthernetSource: + """Return the ``BUS:B:ETHERnet:SOUrce`` command. + + Description: + - This command sets or queries the Ethernet data (SDATA) source for the specified bus. + This command controls the source channel when the signal type is differential. The bus + number is specified by x. + + 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``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies to use one of the analog channels as the Ethernet data source for + differential input. + - ``MATH`` specifies to use a math waveform as the source for Ethernet data + differential input. + - ``REF`` specifies to use one of the reference waveforms as the Ethernet data source + for differential input. + + Sub-properties: + - ``.dminus``: The ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:ETHERnet:SOUrce:DPLUs`` command. + """ + return self._source + + @property + def threshold(self) -> BusBItemEthernetThreshold: + """Return the ``BUS:B:ETHERnet:THRESHold`` command. + + Description: + - This command sets or queries the Ethernet DATA source High threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:THRESHold + - BUS:B:ETHERnet:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the Ethernet DATA source High threshold for the specified bus. + """ + return self._threshold + + @property + def type(self) -> BusBItemEthernetType: + """Return the ``BUS:B:ETHERnet:TYPe`` command. + + Description: + - This command specifies the Ethernet standard speed. The bus number is specified by x. + + 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 {TENBASET|HUNDREDBASETX} + - BUS:B:ETHERnet:TYPe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``TENBASET`` specifies the Ethernet speed as 10Base-T. + - ``HUNDREDBASETX`` specifies the Ethernet speed as 100Base-T. + """ + return self._type + + +class BusBItemEthercatThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERCAT:THRESHold`` command. + + Description: + - This command sets or queries the differential source threshold for the specified EtherCAT + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERCAT:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:THRESHold + - BUS:B:ETHERCAT:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the EtherCAT differential Source threshold for the specified bus. The + default value is 0 V. The valid range is -8 V to +8 V. + """ + + +class BusBItemEthercatSourceDplus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERCAT:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the DataPlus (SDATAPLUS) source for the specified EtherCAT + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT: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:ETHERCAT:SOUrce:DPLUs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:ETHERCAT:SOUrce:DPLUs? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies to use one of the analog channels as the DataPlus source. + - ``MATH`` specifies to use a math waveform as the DataPlus source. + - ``REF`` specifies to use one of the reference waveforms as the DataPlus source. + """ + + +class BusBItemEthercatSourceDminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERCAT:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the DataMinus (SDATAMINUS) source for the specified EtherCAT + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SOUrce:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT: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:ETHERCAT:SOUrce:DMINus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:ETHERCAT:SOUrce:DMINus? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies to use one of the analog channels as the DataMinus source. + - ``MATH`` specifies to use a math waveform as the DataMinus source. + - ``REF`` specifies to use one of the reference waveforms as the DataMinus source. + """ + + +class BusBItemEthercatSourceDiff(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERCAT:SOUrce:DIFF`` command. + + Description: + - This command sets or queries the differential source for the specified EtherCAT bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SOUrce:DIFF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT:SOUrce:DIFF?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERCAT:SOUrce:DIFF value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:SOUrce:DIFF {S_Ch|CH|MATH|REF} + - BUS:B:ETHERCAT:SOUrce:DIFF? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies to use one of the analog channels as the differential source. + - ``MATH`` specifies to use a math waveform as the differential source. + - ``REF`` specifies to use one of the reference waveforms as the differential source. + """ + + +class BusBItemEthercatSource(SCPICmdRead): + """The ``BUS:B:ETHERCAT:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.diff``: The ``BUS:B:ETHERCAT:SOUrce:DIFF`` command. + - ``.dminus``: The ``BUS:B:ETHERCAT:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:ETHERCAT:SOUrce:DPLUs`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._diff = BusBItemEthercatSourceDiff(device, f"{self._cmd_syntax}:DIFF") + self._dminus = BusBItemEthercatSourceDminus(device, f"{self._cmd_syntax}:DMINus") + self._dplus = BusBItemEthercatSourceDplus(device, f"{self._cmd_syntax}:DPLUs") + + @property + def diff(self) -> BusBItemEthercatSourceDiff: + """Return the ``BUS:B:ETHERCAT:SOUrce:DIFF`` command. + + Description: + - This command sets or queries the differential source for the specified EtherCAT bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SOUrce:DIFF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT:SOUrce:DIFF?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERCAT:SOUrce:DIFF value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:SOUrce:DIFF {S_Ch|CH|MATH|REF} + - BUS:B:ETHERCAT:SOUrce:DIFF? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies to use one of the analog channels as the differential source. + - ``MATH`` specifies to use a math waveform as the differential source. + - ``REF`` specifies to use one of the reference waveforms as the differential source. + """ + return self._diff + + @property + def dminus(self) -> BusBItemEthercatSourceDminus: + """Return the ``BUS:B:ETHERCAT:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the DataMinus (SDATAMINUS) source for the specified + EtherCAT bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SOUrce:DMINus?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT: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:ETHERCAT:SOUrce:DMINus value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:ETHERCAT:SOUrce:DMINus? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies to use one of the analog channels as the DataMinus source. + - ``MATH`` specifies to use a math waveform as the DataMinus source. + - ``REF`` specifies to use one of the reference waveforms as the DataMinus source. + """ + return self._dminus + + @property + def dplus(self) -> BusBItemEthercatSourceDplus: + """Return the ``BUS:B:ETHERCAT:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the DataPlus (SDATAPLUS) source for the specified + EtherCAT bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT: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:ETHERCAT:SOUrce:DPLUs value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:ETHERCAT:SOUrce:DPLUs? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies to use one of the analog channels as the DataPlus source. + - ``MATH`` specifies to use a math waveform as the DataPlus source. + - ``REF`` specifies to use one of the reference waveforms as the DataPlus source. + """ + return self._dplus + + +class BusBItemEthercatSignaltype(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERCAT:SIGNALTYpe`` command. + + Description: + - This command sets or queries the signal type for the specified EtherCAT bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT:SIGNALTYpe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERCAT:SIGNALTYpe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:ETHERCAT:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``SINGLE`` specifies single-ended signals. + - ``DIFF`` specifies differential signals. + """ + + +class BusBItemEthercatDataplusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERCAT:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the DATA Plus source threshold for the specified EtherCAT + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:DATAPLUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT:DATAPLUSTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERCAT:DATAPLUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:DATAPLUSTHRESHold + - BUS:B:ETHERCAT:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the EtherCAT DataPinus source threshold for the specified bus. The valid + range is -8V to +8V. The default value is 0 V. + """ + + +class BusBItemEthercatDataminusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERCAT:DATAMINUSTHRESHold`` command. + + Description: + - This command sets or queries the DATA Minus source threshold for the specified EtherCAT + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:DATAMINUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERCAT:DATAMINUSTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERCAT:DATAMINUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:DATAMINUSTHRESHold + - BUS:B:ETHERCAT:DATAMINUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the EtherCAT DataMinus source threshold for the specified bus. The valid + range is -8V to +8V. The default value is 0 V. + """ + + +class BusBItemEthercat(SCPICmdRead): + """The ``BUS:B:ETHERCAT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.dataminusthreshold``: The ``BUS:B:ETHERCAT:DATAMINUSTHRESHold`` command. + - ``.dataplusthreshold``: The ``BUS:B:ETHERCAT:DATAPLUSTHRESHold`` command. + - ``.signaltype``: The ``BUS:B:ETHERCAT:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:ETHERCAT:SOUrce`` command tree. + - ``.threshold``: The ``BUS:B:ETHERCAT:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dataminusthreshold = BusBItemEthercatDataminusthreshold( + device, f"{self._cmd_syntax}:DATAMINUSTHRESHold" + ) + self._dataplusthreshold = BusBItemEthercatDataplusthreshold( + device, f"{self._cmd_syntax}:DATAPLUSTHRESHold" + ) + self._signaltype = BusBItemEthercatSignaltype(device, f"{self._cmd_syntax}:SIGNALTYpe") + self._source = BusBItemEthercatSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemEthercatThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def dataminusthreshold(self) -> BusBItemEthercatDataminusthreshold: + """Return the ``BUS:B:ETHERCAT:DATAMINUSTHRESHold`` command. + + Description: + - This command sets or queries the DATA Minus source threshold for the specified + EtherCAT bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:DATAMINUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERCAT:DATAMINUSTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERCAT:DATAMINUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:DATAMINUSTHRESHold + - BUS:B:ETHERCAT:DATAMINUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the EtherCAT DataMinus source threshold for the specified bus. The valid + range is -8V to +8V. The default value is 0 V. + """ + return self._dataminusthreshold + + @property + def dataplusthreshold(self) -> BusBItemEthercatDataplusthreshold: + """Return the ``BUS:B:ETHERCAT:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the DATA Plus source threshold for the specified EtherCAT + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:DATAPLUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERCAT:DATAPLUSTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERCAT:DATAPLUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:DATAPLUSTHRESHold + - BUS:B:ETHERCAT:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the EtherCAT DataPinus source threshold for the specified bus. The valid + range is -8V to +8V. The default value is 0 V. + """ + return self._dataplusthreshold + + @property + def signaltype(self) -> BusBItemEthercatSignaltype: + """Return the ``BUS:B:ETHERCAT:SIGNALTYpe`` command. + + Description: + - This command sets or queries the signal type for the specified EtherCAT bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT:SIGNALTYpe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERCAT:SIGNALTYpe value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:ETHERCAT:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``SINGLE`` specifies single-ended signals. + - ``DIFF`` specifies differential signals. + """ + return self._signaltype + + @property + def source(self) -> BusBItemEthercatSource: + """Return the ``BUS:B:ETHERCAT:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.diff``: The ``BUS:B:ETHERCAT:SOUrce:DIFF`` command. + - ``.dminus``: The ``BUS:B:ETHERCAT:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:ETHERCAT:SOUrce:DPLUs`` command. + """ + return self._source + + @property + def threshold(self) -> BusBItemEthercatThreshold: + """Return the ``BUS:B:ETHERCAT:THRESHold`` command. + + Description: + - This command sets or queries the differential source threshold for the specified + EtherCAT bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERCAT:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERCAT:THRESHold + - BUS:B:ETHERCAT:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the EtherCAT differential Source threshold for the specified bus. + The default value is 0 V. The valid range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemEspiIomode(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:IOMODe`` command. + + Description: + - This command sets or queries the ESPI Input/Output mode for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:IOMODe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:IOMODe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:IOMODe value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:IOMODe {SINGle|DUAL} + - BUS:B:ESPI:IOMODe? + ``` + + Info: + - ``B`` is the Bus number. + - ``SINGle`` displays the command and response decode in two lanes. + - ``DUAL`` displays the decode in a single data lane. + """ + + +class BusBItemEspiDatatwoThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:DATATWO:THReshold`` command. + + Description: + - This command sets or queries the response (single mode)/ IO[1] (dual mode) Data source + threshold for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATATWO:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATATWO:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:DATATWO:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATATWO:THReshold + - BUS:B:ESPI:DATATWO:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the command/data threshold for the specified bus. The valid range is -8V to + +8V. + """ + + +class BusBItemEspiDatatwoSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:DATATWO:SOUrce`` command. + + Description: + - This command sets or queries the response (single mode)/ IO[1] (dual mode) Data source for + the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATATWO:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATATWO:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:DATATWO:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATATWO:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:DATATWO:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEspiDatatwoPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:DATATWO:POLarity`` command. + + Description: + - This command sets or queries the ESPI response (single mode)/ IO[1] (dual mode) polarity + for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATATWO:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATATWO:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:DATATWO:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATATWO:POLarity {HIGH|LOW} + - BUS:B:ESPI:DATATWO:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``HIGH`` sets the ESPI data polarity to active high. + - ``LOW`` sets the ESPI data polarity to active low. + """ + + +class BusBItemEspiDatatwo(SCPICmdRead): + """The ``BUS:B:ESPI:DATATWO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATATWO?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATATWO?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.polarity``: The ``BUS:B:ESPI:DATATWO:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:DATATWO:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:DATATWO:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemEspiDatatwoPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemEspiDatatwoSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemEspiDatatwoThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def polarity(self) -> BusBItemEspiDatatwoPolarity: + """Return the ``BUS:B:ESPI:DATATWO:POLarity`` command. + + Description: + - This command sets or queries the ESPI response (single mode)/ IO[1] (dual mode) + polarity for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATATWO:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATATWO:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:DATATWO:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATATWO:POLarity {HIGH|LOW} + - BUS:B:ESPI:DATATWO:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``HIGH`` sets the ESPI data polarity to active high. + - ``LOW`` sets the ESPI data polarity to active low. + """ + return self._polarity + + @property + def source(self) -> BusBItemEspiDatatwoSource: + """Return the ``BUS:B:ESPI:DATATWO:SOUrce`` command. + + Description: + - This command sets or queries the response (single mode)/ IO[1] (dual mode) Data source + for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATATWO:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATATWO:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:DATATWO:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATATWO:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:DATATWO:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemEspiDatatwoThreshold: + """Return the ``BUS:B:ESPI:DATATWO:THReshold`` command. + + Description: + - This command sets or queries the response (single mode)/ IO[1] (dual mode) Data source + threshold for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATATWO:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATATWO:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:DATATWO:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATATWO:THReshold + - BUS:B:ESPI:DATATWO:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the command/data threshold for the specified bus. The valid range is + -8V to +8V. + """ + return self._threshold + + +class BusBItemEspiDataoneThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:DATAONE:THReshold`` command. + + Description: + - This command sets or queries the command (single mode)/ IO[0] (dual mode) Data source + threshold for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATAONE:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATAONE:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:DATAONE:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATAONE:THReshold + - BUS:B:ESPI:DATAONE:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the command/data threshold for the specified bus. The valid range is -8V to + +8V. + """ + + +class BusBItemEspiDataoneSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:DATAONE:SOUrce`` command. + + Description: + - This command sets or queries the command (single mode)/ IO[0] (dual mode) Data source for + the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATAONE:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATAONE:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:DATAONE:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATAONE:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:DATAONE:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEspiDataonePolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:DATAONE:POLarity`` command. + + Description: + - This command sets or queries the ESPI command (single mode)/ IO[0] (dual mode) polarity + for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATAONE:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATAONE:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:DATAONE:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATAONE:POLarity {HIGH|LOW} + - BUS:B:ESPI:DATAONE:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``HIGH`` sets the ESPI data polarity to active high. + - ``LOW`` sets the ESPI data polarity to active low. + """ + + +class BusBItemEspiDataone(SCPICmdRead): + """The ``BUS:B:ESPI:DATAONE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATAONE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATAONE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.polarity``: The ``BUS:B:ESPI:DATAONE:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:DATAONE:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:DATAONE:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemEspiDataonePolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemEspiDataoneSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemEspiDataoneThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def polarity(self) -> BusBItemEspiDataonePolarity: + """Return the ``BUS:B:ESPI:DATAONE:POLarity`` command. + + Description: + - This command sets or queries the ESPI command (single mode)/ IO[0] (dual mode) + polarity for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATAONE:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATAONE:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:DATAONE:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATAONE:POLarity {HIGH|LOW} + - BUS:B:ESPI:DATAONE:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``HIGH`` sets the ESPI data polarity to active high. + - ``LOW`` sets the ESPI data polarity to active low. + """ + return self._polarity + + @property + def source(self) -> BusBItemEspiDataoneSource: + """Return the ``BUS:B:ESPI:DATAONE:SOUrce`` command. + + Description: + - This command sets or queries the command (single mode)/ IO[0] (dual mode) Data source + for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATAONE:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATAONE:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:DATAONE:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATAONE:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:DATAONE:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemEspiDataoneThreshold: + """Return the ``BUS:B:ESPI:DATAONE:THReshold`` command. + + Description: + - This command sets or queries the command (single mode)/ IO[0] (dual mode) Data source + threshold for the specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATAONE:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATAONE:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:DATAONE:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:DATAONE:THReshold + - BUS:B:ESPI:DATAONE:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the command/data threshold for the specified bus. The valid range is + -8V to +8V. + """ + return self._threshold + + +class BusBItemEspiClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the Clock source threshold for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CLOCk:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:CLOCk:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CLOCk:THReshold + - BUS:B:ESPI:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the clock threshold for the specified bus. The valid range is -8V to +8V. + """ + + +class BusBItemEspiClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the Clock source for the specified bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI: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:ESPI:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:CLOCk:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEspiClockPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:CLOCk:POLarity`` command. + + Description: + - This command sets or queries the ESPI Clock (SCLK) source polarity for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI: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:ESPI:CLOCk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CLOCk:POLarity {FALL|RISE} + - BUS:B:ESPI:CLOCk:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``FALL`` sets the ESPI clock polarity to fall. + - ``RISE`` sets the ESPI clock polarity to rise. + """ + + +class BusBItemEspiClock(SCPICmdRead): + """The ``BUS:B:ESPI:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CLOCk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.polarity``: The ``BUS:B:ESPI:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemEspiClockPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemEspiClockSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemEspiClockThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def polarity(self) -> BusBItemEspiClockPolarity: + """Return the ``BUS:B:ESPI:CLOCk:POLarity`` command. + + Description: + - This command sets or queries the ESPI Clock (SCLK) source polarity for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI: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:ESPI:CLOCk:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CLOCk:POLarity {FALL|RISE} + - BUS:B:ESPI:CLOCk:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``FALL`` sets the ESPI clock polarity to fall. + - ``RISE`` sets the ESPI clock polarity to rise. + """ + return self._polarity + + @property + def source(self) -> BusBItemEspiClockSource: + """Return the ``BUS:B:ESPI:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the Clock source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI: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:ESPI:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:CLOCk:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemEspiClockThreshold: + """Return the ``BUS:B:ESPI:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the Clock source threshold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CLOCk:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:CLOCk:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CLOCk:THReshold + - BUS:B:ESPI:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the clock threshold for the specified bus. The valid range is -8V to + +8V. + """ + return self._threshold + + +class BusBItemEspiChipselectThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:CHIPSELect:THReshold`` command. + + Description: + - This command sets or queries the chip select source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CHIPSELect:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CHIPSELect:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:CHIPSELect:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CHIPSELect:THReshold + - BUS:B:ESPI:CHIPSELect:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the chip select threshold for the specified bus. The valid range is -8V to + +8V. + """ + + +class BusBItemEspiChipselectSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:CHIPSELect:SOUrce`` command. + + Description: + - This command sets or queries the chip select source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CHIPSELect:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CHIPSELect:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:CHIPSELect:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CHIPSELect:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:CHIPSELect:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEspiChipselectPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:CHIPSELect:POLarity`` command. + + Description: + - This command sets or queries the ESPI chip select polarity for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CHIPSELect:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CHIPSELect:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:CHIPSELect:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CHIPSELect:POLarity {HIGH|LOW} + - BUS:B:ESPI:CHIPSELect:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``HIGH`` sets the ESPI chip select polarity to active high. + - ``LOW`` sets the ESPI chip select polarity to active low. + """ + + +class BusBItemEspiChipselect(SCPICmdRead): + """The ``BUS:B:ESPI:CHIPSELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CHIPSELect?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CHIPSELect?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.polarity``: The ``BUS:B:ESPI:CHIPSELect:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:CHIPSELect:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:CHIPSELect:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemEspiChipselectPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemEspiChipselectSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemEspiChipselectThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def polarity(self) -> BusBItemEspiChipselectPolarity: + """Return the ``BUS:B:ESPI:CHIPSELect:POLarity`` command. + + Description: + - This command sets or queries the ESPI chip select polarity for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CHIPSELect:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ESPI:CHIPSELect:POLarity?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:CHIPSELect:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CHIPSELect:POLarity {HIGH|LOW} + - BUS:B:ESPI:CHIPSELect:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``HIGH`` sets the ESPI chip select polarity to active high. + - ``LOW`` sets the ESPI chip select polarity to active low. + """ + return self._polarity + + @property + def source(self) -> BusBItemEspiChipselectSource: + """Return the ``BUS:B:ESPI:CHIPSELect:SOUrce`` command. + + Description: + - This command sets or queries the chip select source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CHIPSELect:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CHIPSELect:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:CHIPSELect:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CHIPSELect:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:CHIPSELect:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemEspiChipselectThreshold: + """Return the ``BUS:B:ESPI:CHIPSELect:THReshold`` command. + + Description: + - This command sets or queries the chip select source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CHIPSELect:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ESPI:CHIPSELect:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:CHIPSELect:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:CHIPSELect:THReshold + - BUS:B:ESPI:CHIPSELect:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the chip select threshold for the specified bus. The valid range is -8V + to +8V. + """ + return self._threshold + + +class BusBItemEspiAlertThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:ALERt:THReshold`` command. + + Description: + - This command sets or queries the alert source threshold for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERt:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERt:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:ALERt:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:ALERt:THReshold + - BUS:B:ESPI:ALERt:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the alert threshold for the specified bus. The valid range is -8V to +8V. + """ + + +class BusBItemEspiAlertSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:ALERt:SOUrce`` command. + + Description: + - This command sets or queries the alert source for the specified bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERt:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERt:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:ALERt:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:ALERt:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:ALERt:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemEspiAlertPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:ALERt:POLarity`` command. + + Description: + - This command sets or queries the ESPI alert polarity for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERt:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERt:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:ALERt:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:ALERt:POLarity {HIGH|LOW} + - BUS:B:ESPI:ALERt:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``HIGH`` sets the ESPI alert polarity to active high. + - ``LOW`` sets the ESPI alert polarity to active low. + """ + + +class BusBItemEspiAlert(SCPICmdRead): + """The ``BUS:B:ESPI:ALERt`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERt?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERt?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.polarity``: The ``BUS:B:ESPI:ALERt:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:ALERt:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:ALERt:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemEspiAlertPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemEspiAlertSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemEspiAlertThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def polarity(self) -> BusBItemEspiAlertPolarity: + """Return the ``BUS:B:ESPI:ALERt:POLarity`` command. + + Description: + - This command sets or queries the ESPI alert polarity for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERt:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERt:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:ALERt:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:ALERt:POLarity {HIGH|LOW} + - BUS:B:ESPI:ALERt:POLarity? + ``` + + Info: + - ``B`` is the Bus number. + - ``HIGH`` sets the ESPI alert polarity to active high. + - ``LOW`` sets the ESPI alert polarity to active low. + """ + return self._polarity + + @property + def source(self) -> BusBItemEspiAlertSource: + """Return the ``BUS:B:ESPI:ALERt:SOUrce`` command. + + Description: + - This command sets or queries the alert source for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERt:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERt:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:ALERt:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:ALERt:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:ESPI:ALERt:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemEspiAlertThreshold: + """Return the ``BUS:B:ESPI:ALERt:THReshold`` command. + + Description: + - This command sets or queries the alert source threshold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERt:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERt:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ESPI:ALERt:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:ALERt:THReshold + - BUS:B:ESPI:ALERt:THReshold? + ``` + + Info: + - ``B`` is the Bus number. + - ```` sets the alert threshold for the specified bus. The valid range is -8V to + +8V. + """ + return self._threshold + + +class BusBItemEspiAlertview(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ESPI:ALERTVIEW`` command. + + Description: + - This command sets or queries the ESPI alert view for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERTVIEW?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERTVIEW?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:ALERTVIEW value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:ALERTVIEW {ON|OFF} + - BUS:B:ESPI:ALERTVIEW? + ``` + + Info: + - ``B`` is the Bus number. + - ``ON`` turns the alert source on. + - ``OFF`` turns the alert source on. + """ + + +class BusBItemEspi(SCPICmdRead): + """The ``BUS:B:ESPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.alertview``: The ``BUS:B:ESPI:ALERTVIEW`` command. + - ``.alert``: The ``BUS:B:ESPI:ALERt`` command tree. + - ``.chipselect``: The ``BUS:B:ESPI:CHIPSELect`` command tree. + - ``.clock``: The ``BUS:B:ESPI:CLOCk`` command tree. + - ``.dataone``: The ``BUS:B:ESPI:DATAONE`` command tree. + - ``.datatwo``: The ``BUS:B:ESPI:DATATWO`` command tree. + - ``.iomode``: The ``BUS:B:ESPI:IOMODe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._alertview = BusBItemEspiAlertview(device, f"{self._cmd_syntax}:ALERTVIEW") + self._alert = BusBItemEspiAlert(device, f"{self._cmd_syntax}:ALERt") + self._chipselect = BusBItemEspiChipselect(device, f"{self._cmd_syntax}:CHIPSELect") + self._clock = BusBItemEspiClock(device, f"{self._cmd_syntax}:CLOCk") + self._dataone = BusBItemEspiDataone(device, f"{self._cmd_syntax}:DATAONE") + self._datatwo = BusBItemEspiDatatwo(device, f"{self._cmd_syntax}:DATATWO") + self._iomode = BusBItemEspiIomode(device, f"{self._cmd_syntax}:IOMODe") + + @property + def alertview(self) -> BusBItemEspiAlertview: + """Return the ``BUS:B:ESPI:ALERTVIEW`` command. + + Description: + - This command sets or queries the ESPI alert view for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERTVIEW?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERTVIEW?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:ALERTVIEW value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:ALERTVIEW {ON|OFF} + - BUS:B:ESPI:ALERTVIEW? + ``` + + Info: + - ``B`` is the Bus number. + - ``ON`` turns the alert source on. + - ``OFF`` turns the alert source on. + """ + return self._alertview + + @property + def alert(self) -> BusBItemEspiAlert: + """Return the ``BUS:B:ESPI:ALERt`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:ALERt?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:ALERt?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.polarity``: The ``BUS:B:ESPI:ALERt:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:ALERt:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:ALERt:THReshold`` command. + """ + return self._alert + + @property + def chipselect(self) -> BusBItemEspiChipselect: + """Return the ``BUS:B:ESPI:CHIPSELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CHIPSELect?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CHIPSELect?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.polarity``: The ``BUS:B:ESPI:CHIPSELect:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:CHIPSELect:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:CHIPSELect:THReshold`` command. + """ + return self._chipselect + + @property + def clock(self) -> BusBItemEspiClock: + """Return the ``BUS:B:ESPI:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.polarity``: The ``BUS:B:ESPI:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:CLOCk:THReshold`` command. + """ + return self._clock + + @property + def dataone(self) -> BusBItemEspiDataone: + """Return the ``BUS:B:ESPI:DATAONE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATAONE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATAONE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.polarity``: The ``BUS:B:ESPI:DATAONE:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:DATAONE:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:DATAONE:THReshold`` command. + """ + return self._dataone + + @property + def datatwo(self) -> BusBItemEspiDatatwo: + """Return the ``BUS:B:ESPI:DATATWO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:DATATWO?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:DATATWO?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.polarity``: The ``BUS:B:ESPI:DATATWO:POLarity`` command. + - ``.source``: The ``BUS:B:ESPI:DATATWO:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ESPI:DATATWO:THReshold`` command. + """ + return self._datatwo + + @property + def iomode(self) -> BusBItemEspiIomode: + """Return the ``BUS:B:ESPI:IOMODe`` command. + + Description: + - This command sets or queries the ESPI Input/Output mode for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI:IOMODe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI:IOMODe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ESPI:IOMODe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ESPI:IOMODe {SINGle|DUAL} + - BUS:B:ESPI:IOMODe? + ``` + + Info: + - ``B`` is the Bus number. + - ``SINGle`` displays the command and response decode in two lanes. + - ``DUAL`` displays the decode in a single data lane. + """ + return self._iomode + + +class BusBItemDphySignalEncoding(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:SIGNal:ENCoding`` command. + + Description: + - This command sets or queries the 8b9b encoding for DPHY bus decode. By default 8b9b + encoding is set to false. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:SIGNal:ENCoding?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:SIGNal:ENCoding?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:SIGNal:ENCoding value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:SIGNal:ENCoding {false|true} + - BUS:B:DPHY:SIGNal:ENCoding? + ``` + + Info: + - ``B`` is the Bus number. + - ``false`` specifies the 8b9b encoding disabled. + - ``true`` specifies 8b9b encoding disabled. + """ + + +class BusBItemDphySignal(SCPICmdRead): + """The ``BUS:B:DPHY:SIGNal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:SIGNal?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:SIGNal?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.encoding``: The ``BUS:B:DPHY:SIGNal:ENCoding`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._encoding = BusBItemDphySignalEncoding(device, f"{self._cmd_syntax}:ENCoding") + + @property + def encoding(self) -> BusBItemDphySignalEncoding: + """Return the ``BUS:B:DPHY:SIGNal:ENCoding`` command. + + Description: + - This command sets or queries the 8b9b encoding for DPHY bus decode. By default 8b9b + encoding is set to false. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:SIGNal:ENCoding?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:SIGNal:ENCoding?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:DPHY:SIGNal:ENCoding value`` command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:SIGNal:ENCoding {false|true} + - BUS:B:DPHY:SIGNal:ENCoding? + ``` + + Info: + - ``B`` is the Bus number. + - ``false`` specifies the 8b9b encoding disabled. + - ``true`` specifies 8b9b encoding disabled. + """ + return self._encoding + + +class BusBItemDphyProtocolType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:PROTocol:TYPe`` command. + + Description: + - This command sets or queries the protocol type for DPHY bus decode. The default type is + CSI. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:PROTocol:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:PROTocol:TYPe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:PROTocol:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:PROTocol:TYPe {CSI|DSI} + - BUS:B:DPHY:PROTocol:TYPe? + ``` + + Info: + - ``B`` is the Bus number. + - ``CSI`` specifies the protocol type as CSI. + - ``DSI`` specifies the protocol type as DSI. + """ + + +class BusBItemDphyProtocol(SCPICmdRead): + """The ``BUS:B:DPHY:PROTocol`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:PROTocol?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:PROTocol?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.type``: The ``BUS:B:DPHY:PROTocol:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = BusBItemDphyProtocolType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> BusBItemDphyProtocolType: + """Return the ``BUS:B:DPHY:PROTocol:TYPe`` command. + + Description: + - This command sets or queries the protocol type for DPHY bus decode. The default type + is CSI. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:PROTocol:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:PROTocol:TYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:PROTocol:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:PROTocol:TYPe {CSI|DSI} + - BUS:B:DPHY:PROTocol:TYPe? + ``` + + Info: + - ``B`` is the Bus number. + - ``CSI`` specifies the protocol type as CSI. + - ``DSI`` specifies the protocol type as DSI. + """ + return self._type + + +class BusBItemDphyLpDirection(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:LP:DIRection`` command. + + Description: + - This command sets or queries the DPHY bus direction in low power. By default lp direction + is set to forward. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:LP:DIRection?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:LP:DIRection?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:LP:DIRection value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:LP:DIRection {forward|reverse} + - BUS:B:DPHY:LP:DIRection? + ``` + + Info: + - ``B`` is the Bus number. + - ``forward`` specifies the direction as forward. + - ``reverse`` specifies the direction as reverse. + """ + + +class BusBItemDphyLp(SCPICmdRead): + """The ``BUS:B:DPHY:LP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:LP?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:LP?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.direction``: The ``BUS:B:DPHY:LP:DIRection`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._direction = BusBItemDphyLpDirection(device, f"{self._cmd_syntax}:DIRection") + + @property + def direction(self) -> BusBItemDphyLpDirection: + """Return the ``BUS:B:DPHY:LP:DIRection`` command. + + Description: + - This command sets or queries the DPHY bus direction in low power. By default lp + direction is set to forward. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:LP:DIRection?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:LP:DIRection?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:LP:DIRection value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:LP:DIRection {forward|reverse} + - BUS:B:DPHY:LP:DIRection? + ``` + + Info: + - ``B`` is the Bus number. + - ``forward`` specifies the direction as forward. + - ``reverse`` specifies the direction as reverse. + """ + return self._direction + + +class BusBItemDphyDplusSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:DPlus:SOUrce`` command. + + Description: + - This command sets or queries the DPHY D+ source for the specified bus line. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DPlus:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DPlus:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:DPlus:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DPlus:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:DPHY:DPlus:SOUrce? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source, where is the channel number. + - ``MATH`` specifies a math channel as the source, where is the math waveform number. + - ``REF`` specifies a reference waveform as the source, where is the reference + waveform number. + """ + + +class BusBItemDphyDplusLpthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:DPlus:LPTHRESHold`` command. + + Description: + - This command sets or queries the DPHY D+ source low power threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DPlus:LPTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DPlus:LPTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:DPlus:LPTHRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DPlus:LPTHRESHold + - BUS:B:DPHY:DPlus:LPTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY D+ source low power threshold for the specified bus. The argument + range is -8V to +8V. + """ + + +class BusBItemDphyDplusDatathreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:DPlus:DATATHRESHold`` command. + + Description: + - This command sets or queries the D+ source data threshold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DPlus:DATATHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DPlus:DATATHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:DPHY:DPlus:DATATHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DPlus:DATATHRESHold + - BUS:B:DPHY:DPlus:DATATHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY D+ source data threshold for the specified bus. The argument range + is -8V to +8V. + """ + + +class BusBItemDphyDplus(SCPICmdRead): + """The ``BUS:B:DPHY:DPlus`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DPlus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DPlus?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.datathreshold``: The ``BUS:B:DPHY:DPlus:DATATHRESHold`` command. + - ``.lpthreshold``: The ``BUS:B:DPHY:DPlus:LPTHRESHold`` command. + - ``.source``: The ``BUS:B:DPHY:DPlus:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._datathreshold = BusBItemDphyDplusDatathreshold( + device, f"{self._cmd_syntax}:DATATHRESHold" + ) + self._lpthreshold = BusBItemDphyDplusLpthreshold(device, f"{self._cmd_syntax}:LPTHRESHold") + self._source = BusBItemDphyDplusSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def datathreshold(self) -> BusBItemDphyDplusDatathreshold: + """Return the ``BUS:B:DPHY:DPlus:DATATHRESHold`` command. + + Description: + - This command sets or queries the D+ source data threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DPlus:DATATHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:DPHY:DPlus:DATATHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:DPHY:DPlus:DATATHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DPlus:DATATHRESHold + - BUS:B:DPHY:DPlus:DATATHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY D+ source data threshold for the specified bus. The argument + range is -8V to +8V. + """ + return self._datathreshold + + @property + def lpthreshold(self) -> BusBItemDphyDplusLpthreshold: + """Return the ``BUS:B:DPHY:DPlus:LPTHRESHold`` command. + + Description: + - This command sets or queries the DPHY D+ source low power threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DPlus:LPTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DPlus:LPTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:DPHY:DPlus:LPTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DPlus:LPTHRESHold + - BUS:B:DPHY:DPlus:LPTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY D+ source low power threshold for the specified bus. The + argument range is -8V to +8V. + """ + return self._lpthreshold + + @property + def source(self) -> BusBItemDphyDplusSource: + """Return the ``BUS:B:DPHY:DPlus:SOUrce`` command. + + Description: + - This command sets or queries the DPHY D+ source for the specified bus line. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DPlus:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DPlus:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:DPlus:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DPlus:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:DPHY:DPlus:SOUrce? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source, where is the channel number. + - ``MATH`` specifies a math channel as the source, where is the math waveform + number. + - ``REF`` specifies a reference waveform as the source, where is the reference + waveform number. + """ + return self._source + + +class BusBItemDphyDminusSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:DMINus:SOUrce`` command. + + Description: + - This command sets or queries the DPHY D- source for the specified bus line. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DMINus:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DMINus:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:DMINus:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DMINus:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:DPHY:DMINus:SOUrce? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source, where is the channel number. + - ``MATH`` specifies a math channel as the source, where is the math waveform number. + - ``REF`` specifies a reference waveform as the source, where is the reference + waveform number. + """ + + +class BusBItemDphyDminusLpthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:DMINus:LPTHRESHold`` command. + + Description: + - This command sets or queries the DPHY D- source low power threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DMINus:LPTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DMINus:LPTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:DPHY:DMINus:LPTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DMINus:LPTHRESHold + - BUS:B:DPHY:DMINus:LPTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY D- source low power threshold for the specified bus. The argument + range is -8V to +8V. + """ + + +class BusBItemDphyDminusDatathreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:DMINus:DATATHRESHold`` command. + + Description: + - This command sets or queries the DPHY D- source data threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DMINus:DATATHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DMINus:DATATHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:DPHY:DMINus:DATATHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DMINus:DATATHRESHold + - BUS:B:DPHY:DMINus:DATATHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY D- source data threshold for the specified bus. The argument range + is -8V to +8V. + """ + + +class BusBItemDphyDminus(SCPICmdRead): + """The ``BUS:B:DPHY:DMINus`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DMINus?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.datathreshold``: The ``BUS:B:DPHY:DMINus:DATATHRESHold`` command. + - ``.lpthreshold``: The ``BUS:B:DPHY:DMINus:LPTHRESHold`` command. + - ``.source``: The ``BUS:B:DPHY:DMINus:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._datathreshold = BusBItemDphyDminusDatathreshold( + device, f"{self._cmd_syntax}:DATATHRESHold" + ) + self._lpthreshold = BusBItemDphyDminusLpthreshold(device, f"{self._cmd_syntax}:LPTHRESHold") + self._source = BusBItemDphyDminusSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def datathreshold(self) -> BusBItemDphyDminusDatathreshold: + """Return the ``BUS:B:DPHY:DMINus:DATATHRESHold`` command. + + Description: + - This command sets or queries the DPHY D- source data threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DMINus:DATATHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:DPHY:DMINus:DATATHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:DPHY:DMINus:DATATHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DMINus:DATATHRESHold + - BUS:B:DPHY:DMINus:DATATHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY D- source data threshold for the specified bus. The argument + range is -8V to +8V. + """ + return self._datathreshold + + @property + def lpthreshold(self) -> BusBItemDphyDminusLpthreshold: + """Return the ``BUS:B:DPHY:DMINus:LPTHRESHold`` command. + + Description: + - This command sets or queries the DPHY D- source low power threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DMINus:LPTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:DPHY:DMINus:LPTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:DPHY:DMINus:LPTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DMINus:LPTHRESHold + - BUS:B:DPHY:DMINus:LPTHRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY D- source low power threshold for the specified bus. The + argument range is -8V to +8V. + """ + return self._lpthreshold + + @property + def source(self) -> BusBItemDphyDminusSource: + """Return the ``BUS:B:DPHY:DMINus:SOUrce`` command. + + Description: + - This command sets or queries the DPHY D- source for the specified bus line. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DMINus:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DMINus:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:DMINus:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:DMINus:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:DPHY:DMINus:SOUrce? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source, where is the channel number. + - ``MATH`` specifies a math channel as the source, where is the math waveform + number. + - ``REF`` specifies a reference waveform as the source, where is the reference + waveform number. + """ + return self._source + + +class BusBItemDphyClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:CLOCk:THRESHold`` command. + + Description: + - This command sets or queries the DPHY Clock source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:CLOCk:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:CLOCk:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DPHY:CLOCk:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:CLOCk:THRESHold + - BUS:B:DPHY:CLOCk:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY clock high threshold for the specified bus. The argument range is + -8V to +8V. + """ + + +class BusBItemDphyClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DPHY:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the DPHY Clock source for the specified bus line. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY: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:DPHY:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:DPHY:CLOCk:SOUrce? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source, where is the channel number. + - ``MATH`` specifies a math channel as the source, where is the math waveform number. + - ``REF`` specifies a reference waveform as the source, where is the reference + waveform number. + """ + + +class BusBItemDphyClock(SCPICmdRead): + """The ``BUS:B:DPHY:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:CLOCk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:DPHY:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:DPHY:CLOCk:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemDphyClockSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemDphyClockThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def source(self) -> BusBItemDphyClockSource: + """Return the ``BUS:B:DPHY:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the DPHY Clock source for the specified bus line. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY: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:DPHY:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:CLOCk:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:DPHY:CLOCk:SOUrce? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source, where is the channel number. + - ``MATH`` specifies a math channel as the source, where is the math waveform + number. + - ``REF`` specifies a reference waveform as the source, where is the reference + waveform number. + """ + return self._source + + @property + def threshold(self) -> BusBItemDphyClockThreshold: + """Return the ``BUS:B:DPHY:CLOCk:THRESHold`` command. + + Description: + - This command sets or queries the DPHY Clock source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:CLOCk:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:CLOCk:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:DPHY:CLOCk:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:DPHY:CLOCk:THRESHold + - BUS:B:DPHY:CLOCk:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the DPHY clock high threshold for the specified bus. The argument range + is -8V to +8V. + """ + return self._threshold + + +class BusBItemDphy(SCPICmdRead): + """The ``BUS:B:DPHY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.clock``: The ``BUS:B:DPHY:CLOCk`` command tree. + - ``.dminus``: The ``BUS:B:DPHY:DMINus`` command tree. + - ``.dplus``: The ``BUS:B:DPHY:DPlus`` command tree. + - ``.lp``: The ``BUS:B:DPHY:LP`` command tree. + - ``.protocol``: The ``BUS:B:DPHY:PROTocol`` command tree. + - ``.signal``: The ``BUS:B:DPHY:SIGNal`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._clock = BusBItemDphyClock(device, f"{self._cmd_syntax}:CLOCk") + self._dminus = BusBItemDphyDminus(device, f"{self._cmd_syntax}:DMINus") + self._dplus = BusBItemDphyDplus(device, f"{self._cmd_syntax}:DPlus") + self._lp = BusBItemDphyLp(device, f"{self._cmd_syntax}:LP") + self._protocol = BusBItemDphyProtocol(device, f"{self._cmd_syntax}:PROTocol") + self._signal = BusBItemDphySignal(device, f"{self._cmd_syntax}:SIGNal") + + @property + def clock(self) -> BusBItemDphyClock: + """Return the ``BUS:B:DPHY:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:DPHY:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:DPHY:CLOCk:THRESHold`` command. + """ + return self._clock + + @property + def dminus(self) -> BusBItemDphyDminus: + """Return the ``BUS:B:DPHY:DMINus`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DMINus?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.datathreshold``: The ``BUS:B:DPHY:DMINus:DATATHRESHold`` command. + - ``.lpthreshold``: The ``BUS:B:DPHY:DMINus:LPTHRESHold`` command. + - ``.source``: The ``BUS:B:DPHY:DMINus:SOUrce`` command. + """ + return self._dminus + + @property + def dplus(self) -> BusBItemDphyDplus: + """Return the ``BUS:B:DPHY:DPlus`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:DPlus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:DPlus?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.datathreshold``: The ``BUS:B:DPHY:DPlus:DATATHRESHold`` command. + - ``.lpthreshold``: The ``BUS:B:DPHY:DPlus:LPTHRESHold`` command. + - ``.source``: The ``BUS:B:DPHY:DPlus:SOUrce`` command. + """ + return self._dplus + + @property + def lp(self) -> BusBItemDphyLp: + """Return the ``BUS:B:DPHY:LP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:LP?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:LP?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.direction``: The ``BUS:B:DPHY:LP:DIRection`` command. + """ + return self._lp + + @property + def protocol(self) -> BusBItemDphyProtocol: + """Return the ``BUS:B:DPHY:PROTocol`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:PROTocol?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:PROTocol?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.type``: The ``BUS:B:DPHY:PROTocol:TYPe`` command. + """ + return self._protocol + + @property + def signal(self) -> BusBItemDphySignal: + """Return the ``BUS:B:DPHY:SIGNal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY:SIGNal?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY:SIGNal?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.encoding``: The ``BUS:B:DPHY:SIGNal:ENCoding`` command. + """ + return self._signal + + +class BusBItemDisplayLayout(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DISplay:LAYout`` command. + + Description: + - This command sets or queries what to display for the specified bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:LAYout?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:LAYout?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:LAYout value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:LAYout {BUS|BUSANDWAVEFORM} + - BUS:B:DISplay:LAYout? + ``` + + Info: + - ``B`` is the number of the bus. + - ``BUS`` specifies displaying the bus form only. + - ``BUSANDWAVEFORM`` specifies displaying the bus form and the constituent source + waveform(s). This argument is not available for some bus types and some bus + configurations. + """ + + +class BusBItemDisplayFormat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DISplay:FORMat`` command. + + Description: + - This command sets or queries how the data is represented in the bus form for the specified + bus. The bus is specified by x. + + 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 {HEX|BINARY|MIXEDASCII|MIXEDHEX|ASCII|DECIMAL|MIXED} + - BUS:B:DISplay:FORMat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``HEX`` specifies hexadecimal format. + - ``BINARY`` specifies binary format. + - ``MIXEDASCII`` specifies mixed ASCII format. + - ``MIXEDHEX`` specifies mixed hexadecimal format. + - ``ASCII`` specifies ASCII format. + - ``DECIMAL`` specifies decimal format. + - ``MIXED`` specifies mixed format. + """ + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.format``: The ``BUS:B:DISplay:FORMat`` command. + - ``.layout``: The ``BUS:B:DISplay:LAYout`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._format = BusBItemDisplayFormat(device, f"{self._cmd_syntax}:FORMat") + self._layout = BusBItemDisplayLayout(device, f"{self._cmd_syntax}:LAYout") + + @property + def format(self) -> BusBItemDisplayFormat: + """Return the ``BUS:B:DISplay:FORMat`` command. + + Description: + - This command sets or queries how the data is represented in the bus form for the + specified bus. The bus is specified by x. + + 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 {HEX|BINARY|MIXEDASCII|MIXEDHEX|ASCII|DECIMAL|MIXED} + - BUS:B:DISplay:FORMat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``HEX`` specifies hexadecimal format. + - ``BINARY`` specifies binary format. + - ``MIXEDASCII`` specifies mixed ASCII format. + - ``MIXEDHEX`` specifies mixed hexadecimal format. + - ``ASCII`` specifies ASCII format. + - ``DECIMAL`` specifies decimal format. + - ``MIXED`` specifies mixed format. + """ + return self._format + + @property + def layout(self) -> BusBItemDisplayLayout: + """Return the ``BUS:B:DISplay:LAYout`` command. + + Description: + - This command sets or queries what to display for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:LAYout?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:LAYout?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:LAYout value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:LAYout {BUS|BUSANDWAVEFORM} + - BUS:B:DISplay:LAYout? + ``` + + Info: + - ``B`` is the number of the bus. + - ``BUS`` specifies displaying the bus form only. + - ``BUSANDWAVEFORM`` specifies displaying the bus form and the constituent source + waveform(s). This argument is not available for some bus types and some bus + configurations. + """ + return self._layout + + +class BusBItemCxpiSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CXPI:SOUrce`` command. + + Description: + - This command sets or queries the source channel for the specified CXPI bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CXPI:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:CXPI:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CXPI:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source, where is the channel number. + - ``MATH`` specifies a math channel as the source, where is the math waveform number. + - ``REF`` specifies a digital reference waveform as the source, where is the + reference waveform number. + """ + + +class BusBItemCxpiRecThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CXPI:REC:THReshold`` command. + + Description: + - This command sets or queries the source channel recessive threshold for the specified CXPI + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI:REC:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI:REC:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CXPI:REC:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CXPI:REC:THReshold + - BUS:B:CXPI:REC:THReshold? + ``` + + Info: + - ```` sets the CXPI Source recessive threshold for the specified bus. The default + value is 0 V and the valid range is -12 V to +12 V. + """ + + +class BusBItemCxpiRec(SCPICmdRead): + """The ``BUS:B:CXPI:REC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI:REC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI:REC?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.threshold``: The ``BUS:B:CXPI:REC:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemCxpiRecThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def threshold(self) -> BusBItemCxpiRecThreshold: + """Return the ``BUS:B:CXPI:REC:THReshold`` command. + + Description: + - This command sets or queries the source channel recessive threshold for the specified + CXPI bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI:REC:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI:REC:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CXPI:REC:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CXPI:REC:THReshold + - BUS:B:CXPI:REC:THReshold? + ``` + + Info: + - ```` sets the CXPI Source recessive threshold for the specified bus. The default + value is 0 V and the valid range is -12 V to +12 V. + """ + return self._threshold + + +class BusBItemCxpiBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CXPI:BITRate`` command. + + Description: + - This command sets or queries the bit rate for the specified CXPI bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CXPI:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:CXPI:BITRate + - BUS:B:CXPI:BITRate? + ``` + + Info: + - ```` sets the CXPI Source bit rate for the specified bus. The default value is 19.2 + kbps and the valid range is 1 bps to 20 kbps. + """ + + +class BusBItemCxpi(SCPICmdRead): + """The ``BUS:B:CXPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:CXPI:BITRate`` command. + - ``.rec``: The ``BUS:B:CXPI:REC`` command tree. + - ``.source``: The ``BUS:B:CXPI:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemCxpiBitrate(device, f"{self._cmd_syntax}:BITRate") + self._rec = BusBItemCxpiRec(device, f"{self._cmd_syntax}:REC") + self._source = BusBItemCxpiSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def bitrate(self) -> BusBItemCxpiBitrate: + """Return the ``BUS:B:CXPI:BITRate`` command. + + Description: + - This command sets or queries the bit rate for the specified CXPI bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CXPI:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CXPI:BITRate + - BUS:B:CXPI:BITRate? + ``` + + Info: + - ```` sets the CXPI Source bit rate for the specified bus. The default value is + 19.2 kbps and the valid range is 1 bps to 20 kbps. + """ + return self._bitrate + + @property + def rec(self) -> BusBItemCxpiRec: + """Return the ``BUS:B:CXPI:REC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI:REC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI:REC?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.threshold``: The ``BUS:B:CXPI:REC:THReshold`` command. + """ + return self._rec + + @property + def source(self) -> BusBItemCxpiSource: + """Return the ``BUS:B:CXPI:SOUrce`` command. + + Description: + - This command sets or queries the source channel for the specified CXPI bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CXPI:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CXPI:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CXPI:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source, where is the channel number. + - ``MATH`` specifies a math channel as the source, where is the math waveform + number. + - ``REF`` specifies a digital reference waveform as the source, where is the + reference waveform number. + """ + return self._source + + +class BusBItemCphySubtype(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:SUBTYPe`` command. + + Description: + - This command sets or queries the sub type for CPHY bus decode. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:SUBTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:SUBTYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:SUBTYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:SUBTYPe {CSI|DSI|Word|Symbol} + - BUS:B:CPHY:SUBTYPe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``CSI`` specifies the protocol type to CSI. The default type is CSI. + - ``DSI`` specifies the protocol type to DSI. + - ``Word`` specifies the protocol type to word. + - ``Symbol`` specifies the protocol type to symbol. + """ + + +class BusBItemCphySignaltype(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:SIGNALTYpe`` command. + + Description: + - This command sets or queries the signal type for CPHY bus decode. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:SIGNALTYpe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:SIGNALTYpe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:CPHY:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``SINGLE`` specifies the signal type to single ended. + - ``DIFF`` specifies the signal type to differential. The default type is differential. + """ + + +class BusBItemCphyLpDirection(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:LP:DIRection`` command. + + Description: + - This command sets or queries the CPHY bus direction in low power. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:LP:DIRection?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:LP:DIRection?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:LP:DIRection value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:LP:DIRection {forward|reverse} + - BUS:B:CPHY:LP:DIRection? + ``` + + Info: + - ``B`` is the number of the bus. + - ``forward`` specifies the direction in low power to forward. The default direction is + forward. + - ``reverse`` specifies the direction in low power to reverse. + """ + + +class BusBItemCphyLp(SCPICmdRead): + """The ``BUS:B:CPHY:LP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:LP?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:LP?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.direction``: The ``BUS:B:CPHY:LP:DIRection`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._direction = BusBItemCphyLpDirection(device, f"{self._cmd_syntax}:DIRection") + + @property + def direction(self) -> BusBItemCphyLpDirection: + """Return the ``BUS:B:CPHY:LP:DIRection`` command. + + Description: + - This command sets or queries the CPHY bus direction in low power. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:LP:DIRection?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:LP:DIRection?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:LP:DIRection value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:LP:DIRection {forward|reverse} + - BUS:B:CPHY:LP:DIRection? + ``` + + Info: + - ``B`` is the number of the bus. + - ``forward`` specifies the direction in low power to forward. The default direction is + forward. + - ``reverse`` specifies the direction in low power to reverse. + """ + return self._direction + + +class BusBItemCphyCgndThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:CGND:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential CGND source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CGND:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CGND:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:CGND:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:CGND:THReshold + - BUS:B:CPHY:CGND:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential C GND threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + + +class BusBItemCphyCgndSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:CGND:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential CGND source for the specified bus line. + The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CGND:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CGND:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:CGND:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:CGND:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:CGND:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + + +class BusBItemCphyCgnd(SCPICmdRead): + """The ``BUS:B:CPHY:CGND`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CGND?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CGND?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:CPHY:CGND:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:CGND:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemCphyCgndSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemCphyCgndThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemCphyCgndSource: + """Return the ``BUS:B:CPHY:CGND:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential CGND source for the specified bus + line. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CGND:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CGND:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:CGND:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:CGND:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:CGND:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemCphyCgndThreshold: + """Return the ``BUS:B:CPHY:CGND:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential CGND source threshold for the + specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CGND:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CGND:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:CPHY:CGND:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:CGND:THReshold + - BUS:B:CPHY:CGND:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential C GND threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyCaThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:CA:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential CA source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CA:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:CA:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:CA:THReshold + - BUS:B:CPHY:CA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential CA threshold for the specified bus. The argument range + is -8 V to +8 V. + """ + + +class BusBItemCphyCaSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:CA:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential CA source for the specified bus line. + The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CA:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:CA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:CA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:CA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + + +class BusBItemCphyCa(SCPICmdRead): + """The ``BUS:B:CPHY:CA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CA?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:CPHY:CA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:CA:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemCphyCaSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemCphyCaThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemCphyCaSource: + """Return the ``BUS:B:CPHY:CA:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential CA source for the specified bus + line. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CA:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CA:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:CA:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:CA:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:CA:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemCphyCaThreshold: + """Return the ``BUS:B:CPHY:CA:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential CA source threshold for the + specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CA:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CA:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:CA:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:CA:THReshold + - BUS:B:CPHY:CA:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential CA threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyCSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:C:SOUrce`` command. + + Description: + - This command sets or queries the CPHY Single Ended C source for the specified bus line. + The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:C:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:C:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:C:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog reference waveform as the source. + """ + + +class BusBItemCphyCLpThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:C:LP:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended C LP threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:LP:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:LP:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:C:LP:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:C:LP:THRESHold + - BUS:B:CPHY:C:LP:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended C LP threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + + +class BusBItemCphyCLp(SCPICmdRead): + """The ``BUS:B:CPHY:C:LP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:LP?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:LP?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.threshold``: The ``BUS:B:CPHY:C:LP:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemCphyCLpThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def threshold(self) -> BusBItemCphyCLpThreshold: + """Return the ``BUS:B:CPHY:C:LP:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended C LP threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:LP:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:LP:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:CPHY:C:LP:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:C:LP:THRESHold + - BUS:B:CPHY:C:LP:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended C LP threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyCDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:C:DATA:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended C source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:DATA:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:DATA:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:C:DATA:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:C:DATA:THRESHold + - BUS:B:CPHY:C:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended C threshold for the specified bus. The argument range + is -8 V to +8 V. + """ + + +class BusBItemCphyCData(SCPICmdRead): + """The ``BUS:B:CPHY:C:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.threshold``: The ``BUS:B:CPHY:C:DATA:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemCphyCDataThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def threshold(self) -> BusBItemCphyCDataThreshold: + """Return the ``BUS:B:CPHY:C:DATA:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended C source threshold for the + specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:DATA:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:DATA:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:CPHY:C:DATA:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:C:DATA:THRESHold + - BUS:B:CPHY:C:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended C threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyC(SCPICmdRead): + """The ``BUS:B:CPHY:C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.data``: The ``BUS:B:CPHY:C:DATA`` command tree. + - ``.lp``: The ``BUS:B:CPHY:C:LP`` command tree. + - ``.source``: The ``BUS:B:CPHY:C:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = BusBItemCphyCData(device, f"{self._cmd_syntax}:DATA") + self._lp = BusBItemCphyCLp(device, f"{self._cmd_syntax}:LP") + self._source = BusBItemCphyCSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def data(self) -> BusBItemCphyCData: + """Return the ``BUS:B:CPHY:C:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.threshold``: The ``BUS:B:CPHY:C:DATA:THRESHold`` command. + """ + return self._data + + @property + def lp(self) -> BusBItemCphyCLp: + """Return the ``BUS:B:CPHY:C:LP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:LP?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:LP?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.threshold``: The ``BUS:B:CPHY:C:LP:THRESHold`` command. + """ + return self._lp + + @property + def source(self) -> BusBItemCphyCSource: + """Return the ``BUS:B:CPHY:C:SOUrce`` command. + + Description: + - This command sets or queries the CPHY Single Ended C source for the specified bus + line. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:C:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:C:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:C:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog reference waveform as the source. + """ + return self._source + + +class BusBItemCphyBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:BITRate`` command. + + Description: + - This command sets or queries the bit rate for the specified CPHY bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:BITRate + - BUS:B:CPHY:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the bit rate. The default bit rate is 1 Gbps and varies 4 Mbps ~ + 10Gps. + """ + + +class BusBItemCphyBcThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:BC:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential BC source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:BC:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:BC:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:BC:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:BC:THReshold + - BUS:B:CPHY:BC:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential BC threshold for the specified bus. The argument range + is -8 V to +8 V. + """ + + +class BusBItemCphyBcSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:BC:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential BC source for the specified bus line. + The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:BC:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:BC:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:BC:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:BC:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:BC:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + + +class BusBItemCphyBc(SCPICmdRead): + """The ``BUS:B:CPHY:BC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:BC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:BC?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:CPHY:BC:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:BC:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemCphyBcSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemCphyBcThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemCphyBcSource: + """Return the ``BUS:B:CPHY:BC:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential BC source for the specified bus + line. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:BC:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:BC:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:BC:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:BC:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:BC:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemCphyBcThreshold: + """Return the ``BUS:B:CPHY:BC:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential BC source threshold for the + specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:BC:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:BC:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:BC:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:BC:THReshold + - BUS:B:CPHY:BC:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential BC threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyBSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:B:SOUrce`` command. + + Description: + - This command sets or queries the CPHY Single Ended B source for the specified bus line. + The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:B:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:B:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:B:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:B:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:B:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog reference waveform as the source. + """ + + +class BusBItemCphyBDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:B:DATA:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended B source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:B:DATA:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:B:DATA:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:B:DATA:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:B:DATA:THRESHold + - BUS:B:CPHY:B:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended B threshold for the specified bus. The argument range + is -8 V to +8 V. + """ + + +class BusBItemCphyBData(SCPICmdRead): + """The ``BUS:B:CPHY:B:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:B:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:B:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.threshold``: The ``BUS:B:CPHY:B:DATA:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemCphyBDataThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def threshold(self) -> BusBItemCphyBDataThreshold: + """Return the ``BUS:B:CPHY:B:DATA:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended B source threshold for the + specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:B:DATA:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:B:DATA:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:CPHY:B:DATA:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:B:DATA:THRESHold + - BUS:B:CPHY:B:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended B threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyB(SCPICmdRead): + """The ``BUS:B:CPHY:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.data``: The ``BUS:B:CPHY:B:DATA`` command tree. + - ``.source``: The ``BUS:B:CPHY:B:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = BusBItemCphyBData(device, f"{self._cmd_syntax}:DATA") + self._source = BusBItemCphyBSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def data(self) -> BusBItemCphyBData: + """Return the ``BUS:B:CPHY:B:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:B:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:B:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.threshold``: The ``BUS:B:CPHY:B:DATA:THRESHold`` command. + """ + return self._data + + @property + def source(self) -> BusBItemCphyBSource: + """Return the ``BUS:B:CPHY:B:SOUrce`` command. + + Description: + - This command sets or queries the CPHY Single Ended B source for the specified bus + line. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:B:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:B:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:B:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:B:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:B:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog reference waveform as the source. + """ + return self._source + + +class BusBItemCphyAgndThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:AGND:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential AGND source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AGND:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AGND:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:AGND:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:AGND:THReshold + - BUS:B:CPHY:AGND:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential A GND threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + + +class BusBItemCphyAgndSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:AGND:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential AGND source for the specified bus line. + The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AGND:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AGND:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:AGND:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:AGND:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:AGND:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + + +class BusBItemCphyAgnd(SCPICmdRead): + """The ``BUS:B:CPHY:AGND`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AGND?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AGND?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:CPHY:AGND:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:AGND:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemCphyAgndSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemCphyAgndThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemCphyAgndSource: + """Return the ``BUS:B:CPHY:AGND:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential AGND source for the specified bus + line. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AGND:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AGND:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:AGND:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:AGND:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:AGND:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemCphyAgndThreshold: + """Return the ``BUS:B:CPHY:AGND:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential AGND source threshold for the + specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AGND:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AGND:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:CPHY:AGND:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:AGND:THReshold + - BUS:B:CPHY:AGND:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential A GND threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyAbThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:AB:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential AB source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AB:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AB:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:AB:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:AB:THReshold + - BUS:B:CPHY:AB:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential AB threshold for the specified bus. The argument range + is -8 V to +8 V. + """ + + +class BusBItemCphyAbSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:AB:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential AB source for the specified bus line. + The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AB:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AB:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:AB:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:AB:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:AB:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + + +class BusBItemCphyAb(SCPICmdRead): + """The ``BUS:B:CPHY:AB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AB?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.source``: The ``BUS:B:CPHY:AB:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:AB:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemCphyAbSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemCphyAbThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def source(self) -> BusBItemCphyAbSource: + """Return the ``BUS:B:CPHY:AB:SOUrce`` command. + + Description: + - This command sets or queries the CPHY differential AB source for the specified bus + line. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AB:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AB:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:AB:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:AB:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:AB:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog/digital channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog/digital reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> BusBItemCphyAbThreshold: + """Return the ``BUS:B:CPHY:AB:THReshold`` command. + + Description: + - This command sets or queries the CPHY differential AB source threshold for the + specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AB:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AB:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:AB:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:AB:THReshold + - BUS:B:CPHY:AB:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY differential AB threshold for the specified bus. The argument + range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyASource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:A:SOUrce`` command. + + Description: + - This command sets or queries the CPHY Single Ended A source for the specified bus line. + The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:A:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:A:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:A:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog reference waveform as the source. + """ + + +class BusBItemCphyALpThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:A:LP:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended A LP threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:LP:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:LP:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:A:LP:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:A:LP:THRESHold + - BUS:B:CPHY:A:LP:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended A LP threshold in Volts for the specified bus. The + argument range is -8 V to +8 V. + """ + + +class BusBItemCphyALp(SCPICmdRead): + """The ``BUS:B:CPHY:A:LP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:LP?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:LP?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.threshold``: The ``BUS:B:CPHY:A:LP:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemCphyALpThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def threshold(self) -> BusBItemCphyALpThreshold: + """Return the ``BUS:B:CPHY:A:LP:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended A LP threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:LP:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:LP:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:CPHY:A:LP:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:A:LP:THRESHold + - BUS:B:CPHY:A:LP:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended A LP threshold in Volts for the specified bus. The + argument range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyADataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CPHY:A:DATA:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended A source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:DATA:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:DATA:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:A:DATA:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:A:DATA:THRESHold + - BUS:B:CPHY:A:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended A threshold in Volts for the specified bus. The + argument range is -8 V to +8 V. + """ + + +class BusBItemCphyAData(SCPICmdRead): + """The ``BUS:B:CPHY:A:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.threshold``: The ``BUS:B:CPHY:A:DATA:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = BusBItemCphyADataThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def threshold(self) -> BusBItemCphyADataThreshold: + """Return the ``BUS:B:CPHY:A:DATA:THRESHold`` command. + + Description: + - This command sets or queries the CPHY Single Ended A source threshold for the + specified bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:DATA:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:DATA:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:CPHY:A:DATA:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:A:DATA:THRESHold + - BUS:B:CPHY:A:DATA:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the CPHY Single Ended A threshold in Volts for the specified bus. The + argument range is -8 V to +8 V. + """ + return self._threshold + + +class BusBItemCphyA(SCPICmdRead): + """The ``BUS:B:CPHY:A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.data``: The ``BUS:B:CPHY:A:DATA`` command tree. + - ``.lp``: The ``BUS:B:CPHY:A:LP`` command tree. + - ``.source``: The ``BUS:B:CPHY:A:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = BusBItemCphyAData(device, f"{self._cmd_syntax}:DATA") + self._lp = BusBItemCphyALp(device, f"{self._cmd_syntax}:LP") + self._source = BusBItemCphyASource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def data(self) -> BusBItemCphyAData: + """Return the ``BUS:B:CPHY:A:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.threshold``: The ``BUS:B:CPHY:A:DATA:THRESHold`` command. + """ + return self._data + + @property + def lp(self) -> BusBItemCphyALp: + """Return the ``BUS:B:CPHY:A:LP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:LP?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:LP?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.threshold``: The ``BUS:B:CPHY:A:LP:THRESHold`` command. + """ + return self._lp + + @property + def source(self) -> BusBItemCphyASource: + """Return the ``BUS:B:CPHY:A:SOUrce`` command. + + Description: + - This command sets or queries the CPHY Single Ended A source for the specified bus + line. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:A:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:A:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:CPHY:A:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source. + - ``MATH`` specifies a math channel as the source. + - ``REF`` specifies an analog reference waveform as the source. + """ + return self._source + + +# pylint: disable=too-many-instance-attributes +class BusBItemCphy(SCPICmdRead): + """The ``BUS:B:CPHY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.a``: The ``BUS:B:CPHY:A`` command tree. + - ``.ab``: The ``BUS:B:CPHY:AB`` command tree. + - ``.agnd``: The ``BUS:B:CPHY:AGND`` command tree. + - ``.b``: The ``BUS:B:CPHY:B`` command tree. + - ``.bc``: The ``BUS:B:CPHY:BC`` command tree. + - ``.bitrate``: The ``BUS:B:CPHY:BITRate`` command. + - ``.c``: The ``BUS:B:CPHY:C`` command tree. + - ``.ca``: The ``BUS:B:CPHY:CA`` command tree. + - ``.cgnd``: The ``BUS:B:CPHY:CGND`` command tree. + - ``.lp``: The ``BUS:B:CPHY:LP`` command tree. + - ``.signaltype``: The ``BUS:B:CPHY:SIGNALTYpe`` command. + - ``.subtype``: The ``BUS:B:CPHY:SUBTYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._a = BusBItemCphyA(device, f"{self._cmd_syntax}:A") + self._ab = BusBItemCphyAb(device, f"{self._cmd_syntax}:AB") + self._agnd = BusBItemCphyAgnd(device, f"{self._cmd_syntax}:AGND") + self._b = BusBItemCphyB(device, f"{self._cmd_syntax}:B") + self._bc = BusBItemCphyBc(device, f"{self._cmd_syntax}:BC") + self._bitrate = BusBItemCphyBitrate(device, f"{self._cmd_syntax}:BITRate") + self._c = BusBItemCphyC(device, f"{self._cmd_syntax}:C") + self._ca = BusBItemCphyCa(device, f"{self._cmd_syntax}:CA") + self._cgnd = BusBItemCphyCgnd(device, f"{self._cmd_syntax}:CGND") + self._lp = BusBItemCphyLp(device, f"{self._cmd_syntax}:LP") + self._signaltype = BusBItemCphySignaltype(device, f"{self._cmd_syntax}:SIGNALTYpe") + self._subtype = BusBItemCphySubtype(device, f"{self._cmd_syntax}:SUBTYPe") + + @property + def a(self) -> BusBItemCphyA: + """Return the ``BUS:B:CPHY:A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:A?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:A?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.data``: The ``BUS:B:CPHY:A:DATA`` command tree. + - ``.lp``: The ``BUS:B:CPHY:A:LP`` command tree. + - ``.source``: The ``BUS:B:CPHY:A:SOUrce`` command. + """ + return self._a + + @property + def ab(self) -> BusBItemCphyAb: + """Return the ``BUS:B:CPHY:AB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AB?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:CPHY:AB:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:AB:THReshold`` command. + """ + return self._ab + + @property + def agnd(self) -> BusBItemCphyAgnd: + """Return the ``BUS:B:CPHY:AGND`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:AGND?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:AGND?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:CPHY:AGND:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:AGND:THReshold`` command. + """ + return self._agnd + + @property + def b(self) -> BusBItemCphyB: + """Return the ``BUS:B:CPHY:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:B?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.data``: The ``BUS:B:CPHY:B:DATA`` command tree. + - ``.source``: The ``BUS:B:CPHY:B:SOUrce`` command. + """ + return self._b + + @property + def bc(self) -> BusBItemCphyBc: + """Return the ``BUS:B:CPHY:BC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:BC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:BC?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:CPHY:BC:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:BC:THReshold`` command. + """ + return self._bc + + @property + def bitrate(self) -> BusBItemCphyBitrate: + """Return the ``BUS:B:CPHY:BITRate`` command. + + Description: + - This command sets or queries the bit rate for the specified CPHY bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:BITRate + - BUS:B:CPHY:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the bit rate. The default bit rate is 1 Gbps and varies 4 Mbps ~ + 10Gps. + """ + return self._bitrate + + @property + def c(self) -> BusBItemCphyC: + """Return the ``BUS:B:CPHY:C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:C?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.data``: The ``BUS:B:CPHY:C:DATA`` command tree. + - ``.lp``: The ``BUS:B:CPHY:C:LP`` command tree. + - ``.source``: The ``BUS:B:CPHY:C:SOUrce`` command. + """ + return self._c + + @property + def ca(self) -> BusBItemCphyCa: + """Return the ``BUS:B:CPHY:CA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:CPHY:CA:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:CA:THReshold`` command. + """ + return self._ca + + @property + def cgnd(self) -> BusBItemCphyCgnd: + """Return the ``BUS:B:CPHY:CGND`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:CGND?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:CGND?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.source``: The ``BUS:B:CPHY:CGND:SOUrce`` command. + - ``.threshold``: The ``BUS:B:CPHY:CGND:THReshold`` command. + """ + return self._cgnd + + @property + def lp(self) -> BusBItemCphyLp: + """Return the ``BUS:B:CPHY:LP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:LP?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:LP?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.direction``: The ``BUS:B:CPHY:LP:DIRection`` command. + """ + return self._lp + + @property + def signaltype(self) -> BusBItemCphySignaltype: + """Return the ``BUS:B:CPHY:SIGNALTYpe`` command. + + Description: + - This command sets or queries the signal type for CPHY bus decode. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:SIGNALTYpe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:SIGNALTYpe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:CPHY:SIGNALTYpe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``SINGLE`` specifies the signal type to single ended. + - ``DIFF`` specifies the signal type to differential. The default type is differential. + """ + return self._signaltype + + @property + def subtype(self) -> BusBItemCphySubtype: + """Return the ``BUS:B:CPHY:SUBTYPe`` command. + + Description: + - This command sets or queries the sub type for CPHY bus decode. The bus is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY:SUBTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY:SUBTYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CPHY:SUBTYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CPHY:SUBTYPe {CSI|DSI|Word|Symbol} + - BUS:B:CPHY:SUBTYPe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``CSI`` specifies the protocol type to CSI. The default type is CSI. + - ``DSI`` specifies the protocol type to DSI. + - ``Word`` specifies the protocol type to word. + - ``Symbol`` specifies the protocol type to symbol. + """ + return self._subtype + + +class BusBItemCanThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:THReshold`` command. + + Description: + - This command sets or queries the source channel threshold for the specified CAN bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:THReshold?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:THReshold + - BUS:B:CAN:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the source channel threshold for the specified CAN bus. + """ + + +class BusBItemCanStandard(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:STANDard`` command. + + Description: + - This command sets or queries which CAN standard specification to analyze the specified CAN + bus with. The bus is specified by x. + + 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|FDISO|FDNONISO} + - BUS:B:CAN:STANDard? + ``` + + Info: + - ``B`` is the number of the bus. + - ``CAN2X`` sets the CAN bus standard to CAN 2.0. + - ``FDISO`` sets the CAN bus standard to ISO CAN FD (11898-``1:2015``). + - ``FDNONISO`` sets the CAN bus standard to non-ISO CAN FD (``Bosch:2012``). + """ + + +class BusBItemCanSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:SOUrce`` command. + + Description: + - This command sets or queries the CAN source channel for the specified CAN bus. The bus + number is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:CAN:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel, and the digital + channel. + - ``CH_D`` specifies an analog channel and the digital channel as the source. + - ``REF_D`` specifies a reference waveform and digital channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemCanSignal(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:SIGNal`` command. + + Description: + - This command sets or queries the signal type for the specified CAN bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SIGNal?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SIGNal?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SIGNal value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SIGNal {DIFFerential|CANH|CANL|RX|TX} + - BUS:B:CAN:SIGNal? + ``` + + Info: + - ``B`` is the number of the bus. + """ + + +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 BusBItemCanFdBitrateCustom(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:FD:BITRate:CUSTom`` command. + + Description: + - This command sets or queries the custom bit rate for the increased data phase of CAN FD + packets on the specified CAN bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:BITRate:CUSTom?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:BITRate:CUSTom?`` + 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:CUSTom value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:BITRate:CUSTom + - BUS:B:CAN:FD:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the custom FD bit rate for the specified bus. + """ + + +class BusBItemCanFdBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:FD:BITRate`` command. + + Description: + - This command sets or queries the increased data phase bit rate used by CAN FD packets on + the specified CAN bus. The bus is specified by x. If you select Custom, use + ``BUS:B:CAN:FD:BITRate:CUSTom`` to set the bit rate. + + 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 {RATE1M|RATE2M|RATE3M|RATE4M|RATE5M|RATE6M|RATE7M|RATE8M|RATE9M|RATE10M|RATE11M|RATE12M|RATE13M|RATE14M|RATE15M|RATE16M|CUSTom} + - BUS:B:CAN:FD:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.custom``: The ``BUS:B:CAN:FD:BITRate:CUSTom`` command. + """ # noqa: E501 + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._custom = BusBItemCanFdBitrateCustom(device, f"{self._cmd_syntax}:CUSTom") + + @property + def custom(self) -> BusBItemCanFdBitrateCustom: + """Return the ``BUS:B:CAN:FD:BITRate:CUSTom`` command. + + Description: + - This command sets or queries the custom bit rate for the increased data phase of CAN + FD packets on the specified CAN bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:BITRate:CUSTom?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:BITRate:CUSTom?`` + 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:CUSTom value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:BITRate:CUSTom + - BUS:B:CAN:FD:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the custom FD bit rate for the specified bus. + """ + return self._custom + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitrate``: The ``BUS:B:CAN:FD:BITRate`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemCanFdBitrate(device, f"{self._cmd_syntax}:BITRate") + + @property + def bitrate(self) -> BusBItemCanFdBitrate: + """Return the ``BUS:B:CAN:FD:BITRate`` command. + + Description: + - This command sets or queries the increased data phase bit rate used by CAN FD packets + on the specified CAN bus. The bus is specified by x. If you select Custom, use + ``BUS:B:CAN:FD:BITRate:CUSTom`` to set the bit rate. + + 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 {RATE1M|RATE2M|RATE3M|RATE4M|RATE5M|RATE6M|RATE7M|RATE8M|RATE9M|RATE10M|RATE11M|RATE12M|RATE13M|RATE14M|RATE15M|RATE16M|CUSTom} + - BUS:B:CAN:FD:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.custom``: The ``BUS:B:CAN:FD:BITRate:CUSTom`` command. + """ # noqa: E501 + return self._bitrate + + +class BusBItemCanBitrateValue(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:BITRate:VALue`` command. + + Description: + - This command sets or queries CAN bit rate when Custom is selected by + ``BUS:BX:CAN:BITRATE``. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:BITRate:VALue?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:BITRate:VALue?`` 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 value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:BITRate:VALue + - BUS:B:CAN:BITRate:VALue? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the CAN bit rate. + """ + + +class BusBItemCanBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:BITRate`` command. + + Description: + - This command sets or queries the CAN bit rate. The bus number is specified by x. If you + select Custom, use ``BUS:BX:CAN:BITRATE:VALUE`` to set the bit rate. + + 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 {RATE10K|RATE100K|RATE1M|RATE125K|RATE153K|RATE20K|RATE25K|RATE250K|RATE31K|RATE33K|RATE400K|RATE50K|RATE500K|RATE62K|RATE68K|RATE800K|RATE83K|RATE92K|CUSTom} + - BUS:B:CAN:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.value``: The ``BUS:B:CAN:BITRate:VALue`` command. + """ # noqa: E501 + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = BusBItemCanBitrateValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> BusBItemCanBitrateValue: + """Return the ``BUS:B:CAN:BITRate:VALue`` command. + + Description: + - This command sets or queries CAN bit rate when Custom is selected by + ``BUS:BX:CAN:BITRATE``. The bus number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:BITRate:VALue?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:BITRate:VALue?`` + 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 value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:BITRate:VALue + - BUS:B:CAN:BITRate:VALue? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the CAN bit rate. + """ + return self._value + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitrate``: The ``BUS:B:CAN:BITRate`` command. + - ``.fd``: The ``BUS:B:CAN:FD`` command tree. + - ``.samplepoint``: The ``BUS:B:CAN:SAMPLEpoint`` command. + - ``.signal``: The ``BUS:B:CAN:SIGNal`` command. + - ``.source``: The ``BUS:B:CAN:SOUrce`` command. + - ``.standard``: The ``BUS:B:CAN:STANDard`` command. + - ``.threshold``: The ``BUS:B:CAN:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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._samplepoint = BusBItemCanSamplepoint(device, f"{self._cmd_syntax}:SAMPLEpoint") + self._signal = BusBItemCanSignal(device, f"{self._cmd_syntax}:SIGNal") + self._source = BusBItemCanSource(device, f"{self._cmd_syntax}:SOUrce") + self._standard = BusBItemCanStandard(device, f"{self._cmd_syntax}:STANDard") + self._threshold = BusBItemCanThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def bitrate(self) -> BusBItemCanBitrate: + """Return the ``BUS:B:CAN:BITRate`` command. + + Description: + - This command sets or queries the CAN bit rate. The bus number is specified by x. If + you select Custom, use ``BUS:BX:CAN:BITRATE:VALUE`` to set the bit rate. + + 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 {RATE10K|RATE100K|RATE1M|RATE125K|RATE153K|RATE20K|RATE25K|RATE250K|RATE31K|RATE33K|RATE400K|RATE50K|RATE500K|RATE62K|RATE68K|RATE800K|RATE83K|RATE92K|CUSTom} + - BUS:B:CAN:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.value``: The ``BUS:B:CAN:BITRate:VALue`` command. + """ # noqa: E501 + 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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:CAN:FD:BITRate`` command. + """ + return self._fd + + @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 signal(self) -> BusBItemCanSignal: + """Return the ``BUS:B:CAN:SIGNal`` command. + + Description: + - This command sets or queries the signal type for the specified CAN bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SIGNal?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SIGNal?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SIGNal value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SIGNal {DIFFerential|CANH|CANL|RX|TX} + - BUS:B:CAN:SIGNal? + ``` + + Info: + - ``B`` is the number of the bus. + """ + return self._signal + + @property + def source(self) -> BusBItemCanSource: + """Return the ``BUS:B:CAN:SOUrce`` command. + + Description: + - This command sets or queries the CAN source channel for the specified CAN bus. The bus + number is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:CAN:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies the remote scope number, the analog channel, and the + digital channel. + - ``CH_D`` specifies an analog channel and the digital channel as the source. + - ``REF_D`` specifies a reference waveform and digital channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def standard(self) -> BusBItemCanStandard: + """Return the ``BUS:B:CAN:STANDard`` command. + + Description: + - This command sets or queries which CAN standard specification to analyze the specified + CAN bus with. The bus is specified by x. + + 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|FDISO|FDNONISO} + - BUS:B:CAN:STANDard? + ``` + + Info: + - ``B`` is the number of the bus. + - ``CAN2X`` sets the CAN bus standard to CAN 2.0. + - ``FDISO`` sets the CAN bus standard to ISO CAN FD (11898-``1:2015``). + - ``FDNONISO`` sets the CAN bus standard to non-ISO CAN FD (``Bosch:2012``). + """ + return self._standard + + @property + def threshold(self) -> BusBItemCanThreshold: + """Return the ``BUS:B:CAN:THReshold`` command. + + Description: + - This command sets or queries the source channel threshold for the specified CAN bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:THReshold + - BUS:B:CAN:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the source channel threshold for the specified CAN bus. + """ + return self._threshold + + +class BusBItemAutoethernetType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:TYPe`` command. + + Description: + - This command sets or queries the AutoEthernet standard speed. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:TYPe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUTOETHERnet:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:TYPe {HUNDREDBASET1} + - BUS:B:AUTOETHERnet:TYPe? + ``` + + Info: + - ``B`` is the Bus number. + - ``HUNDREDBASET1`` specifies the AutoEthernet speed as 100Base-T1. + """ + + +class BusBItemAutoethernetThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:THRESHold`` command. + + Description: + - This command sets or queries the AutoEthernet DATA source High threshold level for the + specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUTOETHERnet:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:THRESHold + - BUS:B:AUTOETHERnet:THRESHold? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet DATA source High threshold level for the specified bus, + in volts. + """ + + +class BusBItemAutoethernetSourceDplus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the AutoEthernet D+ source for the specified bus. This + command specifies the source channel to use when the signal type is single ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet: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:AUTOETHERnet:SOUrce:DPLUs value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:AUTOETHERnet:SOUrce:DPLUs? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source for the D+ signal, where is the + channel number. + - ``MATH`` specifies a math channel as the source for the D+ signal, where is the + math waveform number. + - ``REF`` specifies a reference waveform as the source for the D+ signal, where is + the reference waveform number. + """ + + +class BusBItemAutoethernetSourceDminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the AutoEthernet D- source for the specified bus. This + command specifies the source channel to use when the signal type is single ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:SOUrce:DMINus?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet: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:AUTOETHERnet:SOUrce:DMINus value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:AUTOETHERnet:SOUrce:DMINus? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the D- signal, where is the + channel number. + - ``MATH`` specifies a math channel as the source for the D- signal, where is the + math waveform number. + - ``REF`` specifies a reference waveform as the source for the D- signal, where is + the reference waveform number. + """ + + +class BusBItemAutoethernetSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:SOUrce`` command. + + Description: + - This command sets or queries the AutoEthernet data (SDATA) source for the specified bus. + This command controls the source channel when the signal type is differential. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUTOETHERnet:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:AUTOETHERnet:SOUrce? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``CH`` specifies an analog channel as the AutoEthernet data source for differential + input, where is the channel number. + - ``MATH`` specifies a math channel as the AutoEthernet data source for differential + input, where is the math waveform number. + - ``REF`` specifies a reference waveform as the AutoEthernet data source for differential + input, where is the reference waveform number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + + Properties: + - ``.dminus``: The ``BUS:B:AUTOETHERnet:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:AUTOETHERnet:SOUrce:DPLUs`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dminus = BusBItemAutoethernetSourceDminus(device, f"{self._cmd_syntax}:DMINus") + self._dplus = BusBItemAutoethernetSourceDplus(device, f"{self._cmd_syntax}:DPLUs") + + @property + def dminus(self) -> BusBItemAutoethernetSourceDminus: + """Return the ``BUS:B:AUTOETHERnet:SOUrce:DMINus`` command. + + Description: + - This command sets or queries the AutoEthernet D- source for the specified bus. This + command specifies the source channel to use when the signal type is single ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:SOUrce:DMINus?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet: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:AUTOETHERnet:SOUrce:DMINus value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:SOUrce:DMINus {S_Ch|CH|MATH|REF} + - BUS:B:AUTOETHERnet:SOUrce:DMINus? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source for the D- signal, where is + the channel number. + - ``MATH`` specifies a math channel as the source for the D- signal, where is the + math waveform number. + - ``REF`` specifies a reference waveform as the source for the D- signal, where + is the reference waveform number. + """ + return self._dminus + + @property + def dplus(self) -> BusBItemAutoethernetSourceDplus: + """Return the ``BUS:B:AUTOETHERnet:SOUrce:DPLUs`` command. + + Description: + - This command sets or queries the AutoEthernet D+ source for the specified bus. This + command specifies the source channel to use when the signal type is single ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:SOUrce:DPLUs?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet: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:AUTOETHERnet:SOUrce:DPLUs value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:SOUrce:DPLUs {S_Ch|CH|MATH|REF} + - BUS:B:AUTOETHERnet:SOUrce:DPLUs? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source for the D+ signal, where is + the channel number. + - ``MATH`` specifies a math channel as the source for the D+ signal, where is the + math waveform number. + - ``REF`` specifies a reference waveform as the source for the D+ signal, where + is the reference waveform number. + """ + return self._dplus + + +class BusBItemAutoethernetSignaltype(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:SIGNALTYpe`` command. + + Description: + - This command sets or queries the AutoEthernet signal type for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:SIGNALTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:SIGNALTYpe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:SIGNALTYpe value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:AUTOETHERnet:SIGNALTYpe? + ``` + + Info: + - ``B`` is the Bus number. + - ``SINGLE`` specifies single-ended signals. + - ``DIFF`` specifies differential signals. + """ + + +class BusBItemAutoethernetLowthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:LOWTHRESHold`` command. + + Description: + - This command sets or queries the AutoEthernet Data source Low threshold level for the + specified bus. This threshold only applies when the AutoEthernet signal type is + differential. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:LOWTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:LOWTHRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:LOWTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:LOWTHRESHold + - BUS:B:AUTOETHERnet:LOWTHRESHold? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet DATA source Low threshold level for the specified bus, + in volts. This threshold only applies when the AutoEthernet signal type is differential. + """ + + +class BusBItemAutoethernetLowdataplus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:LOWDATAPLUS`` command. + + Description: + - This command sets or queries the AutoEthernet D+ source low threshold level for the + specified bus. This threshold only applies when the AutoEthernet signal type is single + ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:LOWDATAPLUS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:LOWDATAPLUS?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:LOWDATAPLUS value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:LOWDATAPLUS + - BUS:B:AUTOETHERnet:LOWDATAPLUS? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet D+ source low threshold level for the specified bus, in + volts. This threshold only applies when the AutoEthernet signal type is single ended. + """ + + +class BusBItemAutoethernetLowdataminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:LOWDATAMINus`` command. + + Description: + - This command sets or queries the AutoEthernet D- source low threshold level for the + specified bus. This threshold only applies when the AutoEthernet signal type is single + ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:LOWDATAMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:LOWDATAMINus?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:LOWDATAMINus value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:LOWDATAMINus + - BUS:B:AUTOETHERnet:LOWDATAMINus? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet D- source low threshold level for the specified bus, in + volts. This threshold only applies when the AutoEthernet signal type is single ended. + """ + + +class BusBItemAutoethernetDataplusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the AutoEthernet D+ source threshold level for the specified + bus. This threshold only applies when the AutoEthernet signal type is single ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:DATAPLUSTHRESHold + - BUS:B:AUTOETHERnet:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet D+ source threshold for the specified bus, in volts. + This threshold only applies when the AutoEthernet signal type is single ended. + """ + + +class BusBItemAutoethernetDataminusthreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD`` command. + + Description: + - This command sets or queries the AutoEthernet D- source threshold level for the specified + bus. This threshold only applies when the AutoEthernet signal type is single ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD + - BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet D- source threshold level for the specified bus, in + volts. This threshold only applies when the AutoEthernet signal type is single ended. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemAutoethernet(SCPICmdRead): + """The ``BUS:B:AUTOETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Properties: + - ``.dataminusthreshold``: The ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD`` command. + - ``.dataplusthreshold``: The ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold`` command. + - ``.lowdataminus``: The ``BUS:B:AUTOETHERnet:LOWDATAMINus`` command. + - ``.lowdataplus``: The ``BUS:B:AUTOETHERnet:LOWDATAPLUS`` command. + - ``.lowthreshold``: The ``BUS:B:AUTOETHERnet:LOWTHRESHold`` command. + - ``.signaltype``: The ``BUS:B:AUTOETHERnet:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:AUTOETHERnet:SOUrce`` command. + - ``.threshold``: The ``BUS:B:AUTOETHERnet:THRESHold`` command. + - ``.type``: The ``BUS:B:AUTOETHERnet:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dataminusthreshold = BusBItemAutoethernetDataminusthreshold( + device, f"{self._cmd_syntax}:DATAMINUSTHRESHOLD" + ) + self._dataplusthreshold = BusBItemAutoethernetDataplusthreshold( + device, f"{self._cmd_syntax}:DATAPLUSTHRESHold" + ) + self._lowdataminus = BusBItemAutoethernetLowdataminus( + device, f"{self._cmd_syntax}:LOWDATAMINus" + ) + self._lowdataplus = BusBItemAutoethernetLowdataplus( + device, f"{self._cmd_syntax}:LOWDATAPLUS" + ) + self._lowthreshold = BusBItemAutoethernetLowthreshold( + device, f"{self._cmd_syntax}:LOWTHRESHold" + ) + self._signaltype = BusBItemAutoethernetSignaltype(device, f"{self._cmd_syntax}:SIGNALTYpe") + self._source = BusBItemAutoethernetSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemAutoethernetThreshold(device, f"{self._cmd_syntax}:THRESHold") + self._type = BusBItemAutoethernetType(device, f"{self._cmd_syntax}:TYPe") + + @property + def dataminusthreshold(self) -> BusBItemAutoethernetDataminusthreshold: + """Return the ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD`` command. + + Description: + - This command sets or queries the AutoEthernet D- source threshold level for the + specified bus. This threshold only applies when the AutoEthernet signal type is single + ended. + + Usage: + - Using the ``.query()`` method will send the + ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD?`` query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD + - BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet D- source threshold level for the specified bus, in + volts. This threshold only applies when the AutoEthernet signal type is single ended. + """ + return self._dataminusthreshold + + @property + def dataplusthreshold(self) -> BusBItemAutoethernetDataplusthreshold: + """Return the ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold`` command. + + Description: + - This command sets or queries the AutoEthernet D+ source threshold level for the + specified bus. This threshold only applies when the AutoEthernet signal type is single + ended. + + Usage: + - Using the ``.query()`` method will send the + ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold?`` query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:DATAPLUSTHRESHold + - BUS:B:AUTOETHERnet:DATAPLUSTHRESHold? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet D+ source threshold for the specified bus, in + volts. This threshold only applies when the AutoEthernet signal type is single ended. + """ + return self._dataplusthreshold + + @property + def lowdataminus(self) -> BusBItemAutoethernetLowdataminus: + """Return the ``BUS:B:AUTOETHERnet:LOWDATAMINus`` command. + + Description: + - This command sets or queries the AutoEthernet D- source low threshold level for the + specified bus. This threshold only applies when the AutoEthernet signal type is single + ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:LOWDATAMINus?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet:LOWDATAMINus?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:LOWDATAMINus value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:LOWDATAMINus + - BUS:B:AUTOETHERnet:LOWDATAMINus? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet D- source low threshold level for the specified + bus, in volts. This threshold only applies when the AutoEthernet signal type is single + ended. + """ + return self._lowdataminus + + @property + def lowdataplus(self) -> BusBItemAutoethernetLowdataplus: + """Return the ``BUS:B:AUTOETHERnet:LOWDATAPLUS`` command. + + Description: + - This command sets or queries the AutoEthernet D+ source low threshold level for the + specified bus. This threshold only applies when the AutoEthernet signal type is single + ended. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:LOWDATAPLUS?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet:LOWDATAPLUS?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:LOWDATAPLUS value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:LOWDATAPLUS + - BUS:B:AUTOETHERnet:LOWDATAPLUS? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet D+ source low threshold level for the specified + bus, in volts. This threshold only applies when the AutoEthernet signal type is single + ended. + """ + return self._lowdataplus + + @property + def lowthreshold(self) -> BusBItemAutoethernetLowthreshold: + """Return the ``BUS:B:AUTOETHERnet:LOWTHRESHold`` command. + + Description: + - This command sets or queries the AutoEthernet Data source Low threshold level for the + specified bus. This threshold only applies when the AutoEthernet signal type is + differential. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:LOWTHRESHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet:LOWTHRESHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:LOWTHRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:LOWTHRESHold + - BUS:B:AUTOETHERnet:LOWTHRESHold? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet DATA source Low threshold level for the specified + bus, in volts. This threshold only applies when the AutoEthernet signal type is + differential. + """ + return self._lowthreshold + + @property + def signaltype(self) -> BusBItemAutoethernetSignaltype: + """Return the ``BUS:B:AUTOETHERnet:SIGNALTYpe`` command. + + Description: + - This command sets or queries the AutoEthernet signal type for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:SIGNALTYpe?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUTOETHERnet:SIGNALTYpe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:SIGNALTYpe value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:SIGNALTYpe {SINGLE|DIFF} + - BUS:B:AUTOETHERnet:SIGNALTYpe? + ``` + + Info: + - ``B`` is the Bus number. + - ``SINGLE`` specifies single-ended signals. + - ``DIFF`` specifies differential signals. + """ + return self._signaltype + + @property + def source(self) -> BusBItemAutoethernetSource: + """Return the ``BUS:B:AUTOETHERnet:SOUrce`` command. + + Description: + - This command sets or queries the AutoEthernet data (SDATA) source for the specified + bus. This command controls the source channel when the signal type is differential. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:SOUrce {S_Ch|CH|MATH|REF} + - BUS:B:AUTOETHERnet:SOUrce? + ``` + + Info: + - ``Bus`` is the Bus number. + - ``CH`` specifies an analog channel as the AutoEthernet data source for differential + input, where is the channel number. + - ``MATH`` specifies a math channel as the AutoEthernet data source for differential + input, where is the math waveform number. + - ``REF`` specifies a reference waveform as the AutoEthernet data source for + differential input, where is the reference waveform number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + + Sub-properties: + - ``.dminus``: The ``BUS:B:AUTOETHERnet:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:AUTOETHERnet:SOUrce:DPLUs`` command. + """ + return self._source + + @property + def threshold(self) -> BusBItemAutoethernetThreshold: + """Return the ``BUS:B:AUTOETHERnet:THRESHold`` command. + + Description: + - This command sets or queries the AutoEthernet DATA source High threshold level for the + specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:THRESHold?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUTOETHERnet:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:THRESHold + - BUS:B:AUTOETHERnet:THRESHold? + ``` + + Info: + - ``B`` is the Bus number. + - ``NR3`` specifies the AutoEthernet DATA source High threshold level for the specified + bus, in volts. + """ + return self._threshold + + @property + def type(self) -> BusBItemAutoethernetType: + """Return the ``BUS:B:AUTOETHERnet:TYPe`` command. + + Description: + - This command sets or queries the AutoEthernet standard speed. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet:TYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUTOETHERnet:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUTOETHERnet:TYPe {HUNDREDBASET1} + - BUS:B:AUTOETHERnet:TYPe? + ``` + + Info: + - ``B`` is the Bus number. + - ``HUNDREDBASET1`` specifies the AutoEthernet speed as 100Base-T1. + """ + return self._type + + +class BusBItemAudioWordselThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:WORDSel:THReshold`` command. + + Description: + - This command sets or queries the audio word select source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel:THReshold?`` + 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:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:THReshold + - BUS:B:AUDio:WORDSel:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio word select source threshold for the specified bus. + """ + + +class BusBItemAudioWordselSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:WORDSel:SOUrce`` command. + + Description: + - This command sets or queries the audio word select source waveform for the specified audio + bus. The bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:AUDio:WORDSel:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the word select source waveform. + - ``CH_D`` specifies a digital channel as the word select source waveform. + - ``MATH`` specifies an math waveform as the word select source waveform. + - ``REF`` specifies an reference waveform as the word select source waveform. + - ``REF_D`` specifies a digital reference waveform as the word select source waveform + for the specified audio bus. + """ # noqa: E501 + + +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. + - ``.threshold``: The ``BUS:B:AUDio:WORDSel:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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") + self._threshold = BusBItemAudioWordselThreshold(device, f"{self._cmd_syntax}:THReshold") + + @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: + - This command sets or queries the audio word select source waveform for the specified + audio bus. The bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:AUDio:WORDSel:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the word select source waveform. + - ``CH_D`` specifies a digital channel as the word select source waveform. + - ``MATH`` specifies an math waveform as the word select source waveform. + - ``REF`` specifies an reference waveform as the word select source waveform. + - ``REF_D`` specifies a digital reference waveform as the word select source + waveform for the specified audio bus. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> BusBItemAudioWordselThreshold: + """Return the ``BUS:B:AUDio:WORDSel:THReshold`` command. + + Description: + - This command sets or queries the audio word select source threshold for the specified + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUDio:WORDSel:THReshold?`` 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:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:THReshold + - BUS:B:AUDio:WORDSel:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio word select source threshold for the specified bus. + """ + return self._threshold + + +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 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 BusBItemAudioFrameClockbitsperchannel(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL`` command. + + Description: + - This command sets or queries the audio bits of sync width for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL?`` 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:CLOCKBITSPERCHANNEL value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL + - BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio bits of sync width for the specified bus. + """ + + +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: + - ``.clockbitsperchannel``: The ``BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL`` command. + - ``.size``: The ``BUS:B:AUDio:FRAME:SIZe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._clockbitsperchannel = BusBItemAudioFrameClockbitsperchannel( + device, f"{self._cmd_syntax}:CLOCKBITSPERCHANNEL" + ) + self._size = BusBItemAudioFrameSize(device, f"{self._cmd_syntax}:SIZe") + + @property + def clockbitsperchannel(self) -> BusBItemAudioFrameClockbitsperchannel: + """Return the ``BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL`` command. + + Description: + - This command sets or queries the audio bits of sync width for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL?`` query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL?`` 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:CLOCKBITSPERCHANNEL value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL + - BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio bits of sync width for the specified bus. + """ + return self._clockbitsperchannel + + @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 BusBItemAudioDataWordsize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DATa:WORDSize`` command. + + Description: + - This command sets or queries the audio bits per word for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:WORDSize?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:WORDSize?`` 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:WORDSize value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:WORDSize + - BUS:B:AUDio:DATa:WORDSize? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio bits per word for the specified bus. + """ + + +class BusBItemAudioDataThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DATa:THReshold`` command. + + Description: + - This command sets or queries the audio data source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:THReshold?`` 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:THReshold + - BUS:B:AUDio:DATa:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio data source threshold for the specified bus. + """ + + +class BusBItemAudioDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DATa:SOUrce`` command. + + Description: + - This command sets or queries the audio data source for the specified audio bus. The bus is + specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:AUDio:DATa:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the data source waveform for the audio bus. + - ``CH_D`` specifies a digital channel as the data source waveform for the audio bus. + - ``MATH`` specifies an math waveform as the data source waveform for the audio bus. + - ``REF`` specifies an reference waveform as the data source waveform for the audio bus. + - ``REF_D`` specifies a digital reference waveform as the data source waveform for the + specified audio bus. + """ + + +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: + - This command sets or queries the audio data source polarity for the specified audio bus. + The bus is specified by x. + + 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 {HIGH|LOW} + - BUS:B:AUDio:DATa:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``HIGH`` specifies positive data polarity for the audio bus. + - ``LOW`` 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``. + + Info: + - ``B`` is the number of the bus. + + 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. + - ``.threshold``: The ``BUS:B:AUDio:DATa:THReshold`` command. + - ``.wordsize``: The ``BUS:B:AUDio:DATa:WORDSize`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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") + self._threshold = BusBItemAudioDataThreshold(device, f"{self._cmd_syntax}:THReshold") + self._wordsize = BusBItemAudioDataWordsize(device, f"{self._cmd_syntax}:WORDSize") + + @property + def polarity(self) -> BusBItemAudioDataPolarity: + """Return the ``BUS:B:AUDio:DATa:POLarity`` command. + + Description: + - This command sets or queries the audio data source polarity for the specified audio + bus. The bus is specified by x. + + 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 {HIGH|LOW} + - BUS:B:AUDio:DATa:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``HIGH`` specifies positive data polarity for the audio bus. + - ``LOW`` 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: + - This command sets or queries the audio data source for the specified audio bus. The + bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - BUS:B:AUDio:DATa:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the data source waveform for the audio bus. + - ``CH_D`` specifies a digital channel as the data source waveform for the audio + bus. + - ``MATH`` specifies an math waveform as the data source waveform for the audio bus. + - ``REF`` specifies an reference waveform as the data source waveform for the audio + bus. + - ``REF_D`` specifies a digital reference waveform as the data source waveform for + the specified audio bus. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> BusBItemAudioDataThreshold: + """Return the ``BUS:B:AUDio:DATa:THReshold`` command. + + Description: + - This command sets or queries the audio data source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:THReshold?`` + 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:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:THReshold + - BUS:B:AUDio:DATa:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio data source threshold for the specified bus. + """ + return self._threshold + + @property + def wordsize(self) -> BusBItemAudioDataWordsize: + """Return the ``BUS:B:AUDio:DATa:WORDSize`` command. + + Description: + - This command sets or queries the audio bits per word for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:WORDSize?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:WORDSize?`` + 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:WORDSize value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:WORDSize + - BUS:B:AUDio:DATa:WORDSize? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio bits per word for the specified bus. + """ + return self._wordsize + + +class BusBItemAudioClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the audio clock source threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:THReshold?`` + 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:THReshold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:THReshold + - BUS:B:AUDio:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio clock source threshold for the specified bus. + """ + + +class BusBItemAudioClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the clock source waveform for the specified AUDIO bus. The + bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - BUS:B:AUDio:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. + - ``CH_D`` specifies a digital channel as the clock source waveform for the specified + audio bus. + - ``Math`` specifies a math waveform as the clock source waveform for the audio bus. + - ``REF`` specifies a reference waveform as the clock source waveform for the audio bus. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform for + the specified audio bus. + """ + + +class BusBItemAudioClockPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:CLOCk:POLarity`` command. + + Description: + - This command sets or queries the clock source polarity for the specified AUDIO bus. The + bus is specified by x. + + 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: + - ``B`` is the number of the bus. + - ``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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.polarity``: The ``BUS:B:AUDio:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:AUDio:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], 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") + self._threshold = BusBItemAudioClockThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def polarity(self) -> BusBItemAudioClockPolarity: + """Return the ``BUS:B:AUDio:CLOCk:POLarity`` command. + + Description: + - This command sets or queries the clock source polarity for the specified AUDIO bus. + The bus is specified by x. + + 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: + - ``B`` is the number of the bus. + - ``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: + - This command sets or queries the clock source waveform for the specified AUDIO bus. + The bus is specified by x. + + 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 {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - BUS:B:AUDio:CLOCk:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. + - ``CH_D`` specifies a digital channel as the clock source waveform for the + specified audio bus. + - ``Math`` specifies a math waveform as the clock source waveform for the audio bus. + - ``REF`` specifies a reference waveform as the clock source waveform for the audio + bus. + - ``REF_D`` specifies a digital reference waveform as the clock source waveform + for the specified audio bus. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> BusBItemAudioClockThreshold: + """Return the ``BUS:B:AUDio:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the audio clock source threshold for the specified bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:THReshold?`` + 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:THReshold value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:THReshold + - BUS:B:AUDio:CLOCk:THReshold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the audio clock source threshold for the specified bus. + """ + return self._threshold + + +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. + """ + + +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. + - ``.clock``: The ``BUS:B:AUDio:CLOCk`` command tree. + - ``.data``: The ``BUS:B:AUDio:DATa`` command tree. + - ``.frame``: The ``BUS:B:AUDio:FRAME`` command tree. + - ``.type``: The ``BUS:B:AUDio:TYPe`` command. + - ``.wordsel``: The ``BUS:B:AUDio:WORDSel`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], 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._clock = BusBItemAudioClock(device, f"{self._cmd_syntax}:CLOCk") + self._data = BusBItemAudioData(device, f"{self._cmd_syntax}:DATa") + self._frame = BusBItemAudioFrame(device, f"{self._cmd_syntax}:FRAME") + 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 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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.polarity``: The ``BUS:B:AUDio:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:CLOCk:SOUrce`` command. + - ``.threshold``: The ``BUS:B:AUDio:CLOCk:THReshold`` 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``. + + Info: + - ``B`` is the number of the bus. + + 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. + - ``.threshold``: The ``BUS:B:AUDio:DATa:THReshold`` command. + - ``.wordsize``: The ``BUS:B:AUDio:DATa:WORDSize`` command. + """ + return self._data + + @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: + - ``.clockbitsperchannel``: The ``BUS:B:AUDio:FRAME:CLOCKBITSPERCHANNEL`` command. + - ``.size``: The ``BUS:B:AUDio:FRAME:SIZe`` command. + """ + return self._frame + + @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. + - ``.threshold``: The ``BUS:B:AUDio:WORDSel:THReshold`` command. + """ + return self._wordsel + + +class BusBItemArinc429aThreshold(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:THRESHold`` command. + + Description: + - This command sets or queries the ARINC429 upper threshold for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:THRESHold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:THRESHold value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:THRESHold + - BUS:B:ARINC429A:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the ARINC429 lower threshold for the specified bus. + """ + + +class BusBItemArinc429aSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:SOUrce`` command. + + Description: + - This command sets or queries the source for the specified ARINC429 bus. The bus is + specified by x. + + 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 {S_Ch|CH|Math|REF} + - BUS:B:ARINC429A:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source waveform for the ARINC429 bus. + - ``Math`` specifies a math waveform as the source waveform for the ARINC429 bus. + - ``REF`` specifies a reference waveform as the source waveform for the ARINC429 bus. + """ + + +class BusBItemArinc429aPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:POLARITY`` command. + + Description: + - This command sets or queries the source polarity for the specified ARINC429 bus. The bus + is specified by x. + + 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: + - ``B`` is the number of the bus. + - ``NORMal`` specifies normal polarity. + - ``INVERTed`` specifies inverted polarity. + """ + + +class BusBItemArinc429aDataformat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:DATAFORmat`` command. + + Description: + - This command sets or queries the format of the DATA field for the specified ARINC429 bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATAFORmat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATAFORmat?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:DATAFORmat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:DATAFORmat {DATA|SDIDATA|SDIDATASSM} + - BUS:B:ARINC429A:DATAFORmat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``DATA`` specifies a DATA field width of 19 bits (covering bits 11 through 29 of the 32 + bit packet). + - ``SDIDATA`` specifies a DATA field width of 21 bits (covering bits 9 through 29 of the 32 + bit packet). + - ``SDIDATASSM`` specifies a DATA field width of 23 bits (covering bits 9 through 31 of the + 32 bit packet). + """ + + +class BusBItemArinc429aBitrateCustom(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:BITRate:CUSTom`` command. + + Description: + - This command sets or queries the ARINC429 custom bit rate for the specified bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:BITRate:CUSTom?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:BITRate:CUSTom?`` + 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:CUSTom value`` command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:BITRate:CUSTom + - BUS:B:ARINC429A:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the ARINC429 custom bit rate for the specified bus. + """ + + +class BusBItemArinc429aBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:BITRate`` command. + + Description: + - This command sets or queries the ARINC429 bit rate for the specified bus. The bus number + is specified by x. If you select Custom, use ``BUS:B:ARINC429A:BITRate:CUSTom`` to set + the bit rate. + + 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|CUSTom} + - BUS:B:ARINC429A:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ``LOW`` sets the bit rate to handle low speed signals. + - ``HI`` sets the bit rate to handle high speed signals. + - ``CUSTom`` uses the custom bit rate set by ``BUS:B:ARINC429A:BITRate:CUSTom``. + + Properties: + - ``.custom``: The ``BUS:B:ARINC429A:BITRate:CUSTom`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._custom = BusBItemArinc429aBitrateCustom(device, f"{self._cmd_syntax}:CUSTom") + + @property + def custom(self) -> BusBItemArinc429aBitrateCustom: + """Return the ``BUS:B:ARINC429A:BITRate:CUSTom`` command. + + Description: + - This command sets or queries the ARINC429 custom bit rate for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:BITRate:CUSTom?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ARINC429A:BITRate:CUSTom?`` 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:CUSTom value`` command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:BITRate:CUSTom + - BUS:B:ARINC429A:BITRate:CUSTom? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the ARINC429 custom bit rate for the specified bus. + """ + return self._custom + + +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitrate``: The ``BUS:B:ARINC429A:BITRate`` command. + - ``.dataformat``: The ``BUS:B:ARINC429A:DATAFORmat`` command. + - ``.polarity``: The ``BUS:B:ARINC429A:POLARITY`` command. + - ``.source``: The ``BUS:B:ARINC429A:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ARINC429A:THRESHold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemArinc429aBitrate(device, f"{self._cmd_syntax}:BITRate") + self._dataformat = BusBItemArinc429aDataformat(device, f"{self._cmd_syntax}:DATAFORmat") + self._polarity = BusBItemArinc429aPolarity(device, f"{self._cmd_syntax}:POLARITY") + self._source = BusBItemArinc429aSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = BusBItemArinc429aThreshold(device, f"{self._cmd_syntax}:THRESHold") + + @property + def bitrate(self) -> BusBItemArinc429aBitrate: + """Return the ``BUS:B:ARINC429A:BITRate`` command. + + Description: + - This command sets or queries the ARINC429 bit rate for the specified bus. The bus + number is specified by x. If you select Custom, use + ``BUS:B:ARINC429A:BITRate:CUSTom`` to set the bit rate. + + 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|CUSTom} + - BUS:B:ARINC429A:BITRate? + ``` + + Info: + - ``B`` is the number of the bus. + - ``LOW`` sets the bit rate to handle low speed signals. + - ``HI`` sets the bit rate to handle high speed signals. + - ``CUSTom`` uses the custom bit rate set by ``BUS:B:ARINC429A:BITRate:CUSTom``. + + Sub-properties: + - ``.custom``: The ``BUS:B:ARINC429A:BITRate:CUSTom`` command. + """ + return self._bitrate + + @property + def dataformat(self) -> BusBItemArinc429aDataformat: + """Return the ``BUS:B:ARINC429A:DATAFORmat`` command. + + Description: + - This command sets or queries the format of the DATA field for the specified ARINC429 + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATAFORmat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATAFORmat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ARINC429A:DATAFORmat value`` command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:DATAFORmat {DATA|SDIDATA|SDIDATASSM} + - BUS:B:ARINC429A:DATAFORmat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``DATA`` specifies a DATA field width of 19 bits (covering bits 11 through 29 of the + 32 bit packet). + - ``SDIDATA`` specifies a DATA field width of 21 bits (covering bits 9 through 29 of the + 32 bit packet). + - ``SDIDATASSM`` specifies a DATA field width of 23 bits (covering bits 9 through 31 of + the 32 bit packet). + """ + return self._dataformat + + @property + def polarity(self) -> BusBItemArinc429aPolarity: + """Return the ``BUS:B:ARINC429A:POLARITY`` command. + + Description: + - This command sets or queries the source polarity for the specified ARINC429 bus. The + bus is specified by x. + + 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: + - ``B`` is the number of the bus. + - ``NORMal`` specifies normal polarity. + - ``INVERTed`` specifies inverted polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemArinc429aSource: + """Return the ``BUS:B:ARINC429A:SOUrce`` command. + + Description: + - This command sets or queries the source for the specified ARINC429 bus. The bus is + specified by x. + + 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 {S_Ch|CH|Math|REF} + - BUS:B:ARINC429A:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies an analog channel as the source waveform for the ARINC429 bus. + - ``Math`` specifies a math waveform as the source waveform for the ARINC429 bus. + - ``REF`` specifies a reference waveform as the source waveform for the ARINC429 bus. + """ + return self._source + + @property + def threshold(self) -> BusBItemArinc429aThreshold: + """Return the ``BUS:B:ARINC429A:THRESHold`` command. + + Description: + - This command sets or queries the ARINC429 upper threshold for the specified bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:THRESHold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:THRESHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ARINC429A:THRESHold value`` command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:THRESHold + - BUS:B:ARINC429A:THRESHold? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the ARINC429 lower threshold for the specified bus. + """ + return self._threshold + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +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``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.arinc429a``: The ``BUS:B:ARINC429A`` command tree. + - ``.audio``: The ``BUS:B:AUDio`` command tree. + - ``.autoethernet``: The ``BUS:B:AUTOETHERnet`` command tree. + - ``.can``: The ``BUS:B:CAN`` command tree. + - ``.cphy``: The ``BUS:B:CPHY`` command tree. + - ``.cxpi``: The ``BUS:B:CXPI`` command tree. + - ``.display``: The ``BUS:B:DISplay`` command tree. + - ``.dphy``: The ``BUS:B:DPHY`` command tree. + - ``.espi``: The ``BUS:B:ESPI`` command tree. + - ``.ethercat``: The ``BUS:B:ETHERCAT`` command tree. + - ``.ethernet``: The ``BUS:B:ETHERnet`` command tree. + - ``.eusb``: The ``BUS:B:EUSB`` command tree. + - ``.flexray``: The ``BUS:B:FLEXray`` command tree. + - ``.i2c``: The ``BUS:B:I2C`` command tree. + - ``.i3c``: The ``BUS:B:I3C`` command tree. + - ``.label``: The ``BUS:B:LABel`` command tree. + - ``.lin``: The ``BUS:B:LIN`` command tree. + - ``.manchester``: The ``BUS:B:MANChester`` command tree. + - ``.mdio``: The ``BUS:B:MDIO`` command tree. + - ``.mil1553b``: The ``BUS:B:MIL1553B`` command tree. + - ``.nrz``: The ``BUS:B:NRZ`` command tree. + - ``.onewire``: The ``BUS:B:ONEWIRe`` command tree. + - ``.parallel``: The ``BUS:B:PARallel`` command tree. + - ``.psifive``: The ``BUS:B:PSIFIVe`` command tree. + - ``.rs232c``: The ``BUS:B:RS232C`` command tree. + - ``.s8b10b``: The ``BUS:B:S8B10B`` command tree. + - ``.sdlc``: The ``BUS:B:SDLC`` command tree. + - ``.sent``: The ``BUS:B:SENT`` command tree. + - ``.smbus``: The ``BUS:B:SMBUS`` command tree. + - ``.spacewire``: The ``BUS:B:SPACEWIRe`` command tree. + - ``.spi``: The ``BUS:B:SPI`` command tree. + - ``.spmi``: The ``BUS:B:SPMI`` command tree. + - ``.svid``: The ``BUS:B:SVID`` command tree. + - ``.type``: The ``BUS:B:TYPe`` command. + - ``.usb``: The ``BUS:B:USB`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], 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._autoethernet = BusBItemAutoethernet(device, f"{self._cmd_syntax}:AUTOETHERnet") + self._can = BusBItemCan(device, f"{self._cmd_syntax}:CAN") + self._cphy = BusBItemCphy(device, f"{self._cmd_syntax}:CPHY") + self._cxpi = BusBItemCxpi(device, f"{self._cmd_syntax}:CXPI") + self._display = BusBItemDisplay(device, f"{self._cmd_syntax}:DISplay") + self._dphy = BusBItemDphy(device, f"{self._cmd_syntax}:DPHY") + self._espi = BusBItemEspi(device, f"{self._cmd_syntax}:ESPI") + self._ethercat = BusBItemEthercat(device, f"{self._cmd_syntax}:ETHERCAT") + self._ethernet = BusBItemEthernet(device, f"{self._cmd_syntax}:ETHERnet") + self._eusb = BusBItemEusb(device, f"{self._cmd_syntax}:EUSB") + self._flexray = BusBItemFlexray(device, f"{self._cmd_syntax}:FLEXray") + self._i2c = BusBItemI2c(device, f"{self._cmd_syntax}:I2C") + self._i3c = BusBItemI3c(device, f"{self._cmd_syntax}:I3C") + self._label = BusBItemLabel(device, f"{self._cmd_syntax}:LABel") + self._lin = BusBItemLin(device, f"{self._cmd_syntax}:LIN") + self._manchester = BusBItemManchester(device, f"{self._cmd_syntax}:MANChester") + self._mdio = BusBItemMdio(device, f"{self._cmd_syntax}:MDIO") + self._mil1553b = BusBItemMil1553b(device, f"{self._cmd_syntax}:MIL1553B") + self._nrz = BusBItemNrz(device, f"{self._cmd_syntax}:NRZ") + self._onewire = BusBItemOnewire(device, f"{self._cmd_syntax}:ONEWIRe") + self._parallel = BusBItemParallel(device, f"{self._cmd_syntax}:PARallel") + self._psifive = BusBItemPsifive(device, f"{self._cmd_syntax}:PSIFIVe") + self._rs232c = BusBItemRs232c(device, f"{self._cmd_syntax}:RS232C") + self._s8b10b = BusBItemS8b10b(device, f"{self._cmd_syntax}:S8B10B") + self._sdlc = BusBItemSdlc(device, f"{self._cmd_syntax}:SDLC") + self._sent = BusBItemSent(device, f"{self._cmd_syntax}:SENT") + self._smbus = BusBItemSmbus(device, f"{self._cmd_syntax}:SMBUS") + self._spacewire = BusBItemSpacewire(device, f"{self._cmd_syntax}:SPACEWIRe") + self._spi = BusBItemSpi(device, f"{self._cmd_syntax}:SPI") + self._spmi = BusBItemSpmi(device, f"{self._cmd_syntax}:SPMI") + self._svid = BusBItemSvid(device, f"{self._cmd_syntax}:SVID") + 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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:ARINC429A:BITRate`` command. + - ``.dataformat``: The ``BUS:B:ARINC429A:DATAFORmat`` command. + - ``.polarity``: The ``BUS:B:ARINC429A:POLARITY`` command. + - ``.source``: The ``BUS:B:ARINC429A:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ARINC429A:THRESHold`` 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. + - ``.clock``: The ``BUS:B:AUDio:CLOCk`` command tree. + - ``.data``: The ``BUS:B:AUDio:DATa`` command tree. + - ``.frame``: The ``BUS:B:AUDio:FRAME`` command tree. + - ``.type``: The ``BUS:B:AUDio:TYPe`` command. + - ``.wordsel``: The ``BUS:B:AUDio:WORDSel`` command tree. + """ + return self._audio + + @property + def autoethernet(self) -> BusBItemAutoethernet: + """Return the ``BUS:B:AUTOETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUTOETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUTOETHERnet?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.dataminusthreshold``: The ``BUS:B:AUTOETHERnet:DATAMINUSTHRESHOLD`` command. + - ``.dataplusthreshold``: The ``BUS:B:AUTOETHERnet:DATAPLUSTHRESHold`` command. + - ``.lowdataminus``: The ``BUS:B:AUTOETHERnet:LOWDATAMINus`` command. + - ``.lowdataplus``: The ``BUS:B:AUTOETHERnet:LOWDATAPLUS`` command. + - ``.lowthreshold``: The ``BUS:B:AUTOETHERnet:LOWTHRESHold`` command. + - ``.signaltype``: The ``BUS:B:AUTOETHERnet:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:AUTOETHERnet:SOUrce`` command. + - ``.threshold``: The ``BUS:B:AUTOETHERnet:THRESHold`` command. + - ``.type``: The ``BUS:B:AUTOETHERnet:TYPe`` command. + """ + return self._autoethernet + + @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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:CAN:BITRate`` command. + - ``.fd``: The ``BUS:B:CAN:FD`` command tree. + - ``.samplepoint``: The ``BUS:B:CAN:SAMPLEpoint`` command. + - ``.signal``: The ``BUS:B:CAN:SIGNal`` command. + - ``.source``: The ``BUS:B:CAN:SOUrce`` command. + - ``.standard``: The ``BUS:B:CAN:STANDard`` command. + - ``.threshold``: The ``BUS:B:CAN:THReshold`` command. + """ + return self._can + + @property + def cphy(self) -> BusBItemCphy: + """Return the ``BUS:B:CPHY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CPHY?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CPHY?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.a``: The ``BUS:B:CPHY:A`` command tree. + - ``.ab``: The ``BUS:B:CPHY:AB`` command tree. + - ``.agnd``: The ``BUS:B:CPHY:AGND`` command tree. + - ``.b``: The ``BUS:B:CPHY:B`` command tree. + - ``.bc``: The ``BUS:B:CPHY:BC`` command tree. + - ``.bitrate``: The ``BUS:B:CPHY:BITRate`` command. + - ``.c``: The ``BUS:B:CPHY:C`` command tree. + - ``.ca``: The ``BUS:B:CPHY:CA`` command tree. + - ``.cgnd``: The ``BUS:B:CPHY:CGND`` command tree. + - ``.lp``: The ``BUS:B:CPHY:LP`` command tree. + - ``.signaltype``: The ``BUS:B:CPHY:SIGNALTYpe`` command. + - ``.subtype``: The ``BUS:B:CPHY:SUBTYPe`` command. + """ + return self._cphy + + @property + def cxpi(self) -> BusBItemCxpi: + """Return the ``BUS:B:CXPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CXPI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CXPI?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:CXPI:BITRate`` command. + - ``.rec``: The ``BUS:B:CXPI:REC`` command tree. + - ``.source``: The ``BUS:B:CXPI:SOUrce`` command. + """ + return self._cxpi + + @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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.format``: The ``BUS:B:DISplay:FORMat`` command. + - ``.layout``: The ``BUS:B:DISplay:LAYout`` command. + """ + return self._display + + @property + def dphy(self) -> BusBItemDphy: + """Return the ``BUS:B:DPHY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DPHY?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DPHY?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.clock``: The ``BUS:B:DPHY:CLOCk`` command tree. + - ``.dminus``: The ``BUS:B:DPHY:DMINus`` command tree. + - ``.dplus``: The ``BUS:B:DPHY:DPlus`` command tree. + - ``.lp``: The ``BUS:B:DPHY:LP`` command tree. + - ``.protocol``: The ``BUS:B:DPHY:PROTocol`` command tree. + - ``.signal``: The ``BUS:B:DPHY:SIGNal`` command tree. + """ + return self._dphy + + @property + def espi(self) -> BusBItemEspi: + """Return the ``BUS:B:ESPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ESPI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ESPI?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the Bus number. + + Sub-properties: + - ``.alertview``: The ``BUS:B:ESPI:ALERTVIEW`` command. + - ``.alert``: The ``BUS:B:ESPI:ALERt`` command tree. + - ``.chipselect``: The ``BUS:B:ESPI:CHIPSELect`` command tree. + - ``.clock``: The ``BUS:B:ESPI:CLOCk`` command tree. + - ``.dataone``: The ``BUS:B:ESPI:DATAONE`` command tree. + - ``.datatwo``: The ``BUS:B:ESPI:DATATWO`` command tree. + - ``.iomode``: The ``BUS:B:ESPI:IOMODe`` command. + """ + return self._espi + + @property + def ethercat(self) -> BusBItemEthercat: + """Return the ``BUS:B:ETHERCAT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERCAT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERCAT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.dataminusthreshold``: The ``BUS:B:ETHERCAT:DATAMINUSTHRESHold`` command. + - ``.dataplusthreshold``: The ``BUS:B:ETHERCAT:DATAPLUSTHRESHold`` command. + - ``.signaltype``: The ``BUS:B:ETHERCAT:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:ETHERCAT:SOUrce`` command tree. + - ``.threshold``: The ``BUS:B:ETHERCAT:THRESHold`` command. + """ + return self._ethercat + + @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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.dataminusthreshold``: The ``BUS:B:ETHERnet:DATAMINUSTHRESHold`` command. + - ``.dataplusthreshold``: The ``BUS:B:ETHERnet:DATAPLUSTHRESHold`` command. + - ``.ipvfour``: The ``BUS:B:ETHERnet:IPVFOUR`` command. + - ``.lowthreshold``: The ``BUS:B:ETHERnet:LOWTHRESHold`` command. + - ``.qtagging``: The ``BUS:B:ETHERnet:QTAGGING`` command. + - ``.signaltype``: The ``BUS:B:ETHERnet:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:ETHERnet:SOUrce`` command. + - ``.threshold``: The ``BUS:B:ETHERnet:THRESHold`` command. + - ``.type``: The ``BUS:B:ETHERnet:TYPe`` command. + """ + return self._ethernet + + @property + def eusb(self) -> BusBItemEusb: + """Return the ``BUS:B:EUSB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:EUSB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:EUSB?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:EUSB:BITRate`` command. + - ``.dataminus``: The ``BUS:B:EUSB:DATAMINUS`` command tree. + - ``.dataminusthreshold``: The ``BUS:B:EUSB:DATAMINUSTHRESHold`` command. + - ``.dataplus``: The ``BUS:B:EUSB:DATAPLUS`` command tree. + - ``.dataplusthreshold``: The ``BUS:B:EUSB:DATAPLUSTHRESHold`` command. + - ``.lowthreshold``: The ``BUS:B:EUSB:LOWTHRESHold`` command. + - ``.operating``: The ``BUS:B:EUSB:OPERating`` command tree. + - ``.signaltype``: The ``BUS:B:EUSB:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:EUSB:SOUrce`` command tree. + - ``.threshold``: The ``BUS:B:EUSB:THRESHold`` command. + """ + return self._eusb + + @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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:FLEXray:BITRate`` command. + - ``.channel``: The ``BUS:B:FLEXray:CHannel`` command. + - ``.lowthreshold``: The ``BUS:B:FLEXray:LOWTHRESHold`` command. + - ``.signal``: The ``BUS:B:FLEXray:SIGnal`` command. + - ``.source``: The ``BUS:B:FLEXray:SOUrce`` command. + - ``.threshold``: The ``BUS:B:FLEXray:THRESHold`` command. + - ``.txrxthreshold``: The ``BUS:B:FLEXray:TXRXTHRESHold`` 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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.clock``: The ``BUS:B:I2C:CLOCk`` command tree. + - ``.data``: The ``BUS:B:I2C:DATa`` command tree. + - ``.rwinaddr``: The ``BUS:B:I2C:RWINADDR`` command. + """ + return self._i2c + + @property + def i3c(self) -> BusBItemI3c: + """Return the ``BUS:B:I3C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I3C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I3C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` specifies the bus number. + + Sub-properties: + - ``.clock``: The ``BUS:B:I3C:CLOCk`` command tree. + - ``.data``: The ``BUS:B:I3C:DATa`` command tree. + """ + return self._i3c + + @property + def label(self) -> BusBItemLabel: + """Return the ``BUS:B:LABel`` command tree. + + 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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.color``: The ``BUS:B:LABel:COLor`` command. + - ``.font``: The ``BUS:B:LABel:FONT`` command tree. + - ``.xpos``: The ``BUS:B:LABel:XPOS`` command. + - ``.ypos``: The ``BUS:B:LABel:YPOS`` command. + - ``.name``: The ``BUS:B:LABel:name`` command. + """ + 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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:LIN:BITRate`` command. + - ``.idformat``: The ``BUS:B:LIN:IDFORmat`` 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 manchester(self) -> BusBItemManchester: + """Return the ``BUS:B:MANChester`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MANChester?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MANChester?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitorder``: The ``BUS:B:MANChester:BITORDer`` command. + - ``.bitrate``: The ``BUS:B:MANChester:BITRate`` command. + - ``.displaymode``: The ``BUS:B:MANChester:DISplaymode`` command. + - ``.header``: The ``BUS:B:MANChester:HEADer`` command tree. + - ``.idle``: The ``BUS:B:MANChester:IDLE`` command tree. + - ``.source``: The ``BUS:B:MANChester:SOUrce`` command. + - ``.start``: The ``BUS:B:MANChester:START`` command tree. + - ``.sync``: The ``BUS:B:MANChester:SYNC`` command tree. + - ``.threshold``: The ``BUS:B:MANChester:THReshold`` command. + - ``.tolerance``: The ``BUS:B:MANChester:TOLerance`` command. + - ``.transtion``: The ``BUS:B:MANChester:TRANstion`` command tree. + - ``.trailer``: The ``BUS:B:MANChester:TRAiler`` command tree. + - ``.word``: The ``BUS:B:MANChester:WORD`` command tree. + - ``.wordsize``: The ``BUS:B:MANChester:WORDSIZe`` command. + - ``.parity``: The ``BUS:B:MANChester:parity`` command. + """ + return self._manchester + + @property + def mdio(self) -> BusBItemMdio: + """Return the ``BUS:B:MDIO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MDIO?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MDIO?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.clock``: The ``BUS:B:MDIO:CLOCk`` command tree. + - ``.data``: The ``BUS:B:MDIO:DATA`` command tree. + """ + return self._mdio + + @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: + - ``.lowthreshold``: The ``BUS:B:MIL1553B:LOWTHRESHold`` command. + - ``.polarity``: The ``BUS:B:MIL1553B:POLarity`` command. + - ``.responsetime``: The ``BUS:B:MIL1553B:RESPonsetime`` command tree. + - ``.source``: The ``BUS:B:MIL1553B:SOUrce`` command. + - ``.threshold``: The ``BUS:B:MIL1553B:THRESHold`` command. + """ + return self._mil1553b + + @property + def nrz(self) -> BusBItemNrz: + """Return the ``BUS:B:NRZ`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:NRZ?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:NRZ?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitorder``: The ``BUS:B:NRZ:BITOrder`` command. + - ``.bitrate``: The ``BUS:B:NRZ:BITRate`` command. + - ``.polarity``: The ``BUS:B:NRZ:POLarity`` command. + - ``.source``: The ``BUS:B:NRZ:SOUrce`` command. + - ``.spmi``: The ``BUS:B:NRZ:SPMI`` command tree. + - ``.threshold``: The ``BUS:B:NRZ:THReshold`` command. + """ + return self._nrz + + @property + def onewire(self) -> BusBItemOnewire: + """Return the ``BUS:B:ONEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ONEWIRe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ONEWIRe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.data``: The ``BUS:B:ONEWIRe:DATA`` command tree. + - ``.mode``: The ``BUS:B:ONEWIRe:MODe`` command. + """ + return self._onewire + + @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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.allthresholds``: The ``BUS:B:PARallel:ALLTHResholds`` command. + - ``.bitsource``: The ``BUS:B:PARallel:BITSOUrce`` command. + - ``.clock``: The ``BUS:B:PARallel:CLOCk`` command tree. + - ``.clocksource``: The ``BUS:B:PARallel:CLOCkSOUrce`` command. + """ + return self._parallel + + @property + def psifive(self) -> BusBItemPsifive: + """Return the ``BUS:B:PSIFIVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PSIFIVe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PSIFIVe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitperiod``: The ``BUS:B:PSIFIVe:BITPERiod`` command. + - ``.bitrate``: The ``BUS:B:PSIFIVe:BITRate`` command. + - ``.comm``: The ``BUS:B:PSIFIVe:COMM`` command tree. + - ``.dataa``: The ``BUS:B:PSIFIVe:DATAA`` command. + - ``.datab``: The ``BUS:B:PSIFIVe:DATAB`` command. + - ``.dataformat``: The ``BUS:B:PSIFIVe:DATAFORMat`` command. + - ``.ecusource``: The ``BUS:B:PSIFIVe:ECUSOURce`` command. + - ``.framecontrol``: The ``BUS:B:PSIFIVe:FRAMECONTrol`` command. + - ``.messaging``: The ``BUS:B:PSIFIVe:MESSaging`` command. + - ``.source``: The ``BUS:B:PSIFIVe:SOUrce`` command. + - ``.status``: The ``BUS:B:PSIFIVe:STATus`` command. + - ``.syncmode``: The ``BUS:B:PSIFIVe:SYNCMODe`` command. + - ``.syncthreshold``: The ``BUS:B:PSIFIVe:SYNCTHRESHold`` command. + - ``.threshold``: The ``BUS:B:PSIFIVe:THRESHold`` command. + """ + return self._psifive + + @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``. + + Info: + - ``B`` is the number of the bus. + + 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. + - ``.source``: The ``BUS:B:RS232C:SOUrce`` command. + """ + return self._rs232c + + @property + def s8b10b(self) -> BusBItemS8b10b: + """Return the ``BUS:B:S8B10B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:S8B10B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:S8B10B?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:S8B10B:BITRate`` command. + - ``.source``: The ``BUS:B:S8B10B:SOUrce`` command. + - ``.threshold``: The ``BUS:B:S8B10B:THReshold`` command. + """ + return self._s8b10b + + @property + def sdlc(self) -> BusBItemSdlc: + """Return the ``BUS:B:SDLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SDLC?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SDLC?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:SDLC:BITRate`` command. + - ``.data``: The ``BUS:B:SDLC:DATA`` command tree. + - ``.encoding``: The ``BUS:B:SDLC:ENCoding`` command. + - ``.modulo``: The ``BUS:B:SDLC:MODulo`` command. + """ + return self._sdlc + + @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. + - ``.threshold``: The ``BUS:B:SENT:THRESHold`` command. + - ``.ticktime``: The ``BUS:B:SENT:TICKTIME`` command. + - ``.ticktolerance``: The ``BUS:B:SENT:TICKTOLerance`` command. + """ + return self._sent + + @property + def smbus(self) -> BusBItemSmbus: + """Return the ``BUS:B:SMBUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SMBUS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SMBUS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Sub-properties: + - ``.clock``: The ``BUS:B:SMBUS:CLOCk`` command tree. + - ``.data``: The ``BUS:B:SMBUS:DATA`` command tree. + - ``.pec``: The ``BUS:B:SMBUS:PEC`` command tree. + """ + return self._smbus + + @property + def spacewire(self) -> BusBItemSpacewire: + """Return the ``BUS:B:SPACEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPACEWIRe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPACEWIRe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the bus number. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:SPACEWIRe:BITRate`` command. + - ``.data``: The ``BUS:B:SPACEWIRe:DATa`` command tree. + - ``.decode``: The ``BUS:B:SPACEWIRe:DECode`` command tree. + - ``.strobe``: The ``BUS:B:SPACEWIRe:STRobe`` command tree. + - ``.sync``: The ``BUS:B:SPACEWIRe:SYNC`` command. + """ + return self._spacewire + + @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. + - ``.clock``: The ``BUS:B:SPI:CLOCk`` command tree. + - ``.data``: The ``BUS:B:SPI:DATa`` command tree. + - ``.framing``: The ``BUS:B:SPI:FRAMING`` command. + - ``.idletime``: The ``BUS:B:SPI:IDLETime`` command. + - ``.miso``: The ``BUS:B:SPI:MISo`` command tree. + - ``.mosi``: The ``BUS:B:SPI:MOSi`` command tree. + - ``.number``: The ``BUS:B:SPI:NUMBer`` command tree. + - ``.select``: The ``BUS:B:SPI:SELect`` command tree. + """ + return self._spi + + @property + def spmi(self) -> BusBItemSpmi: + """Return the ``BUS:B:SPMI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPMI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPMI?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.sclk``: The ``BUS:B:SPMI:SCLk`` command tree. + - ``.sdata``: The ``BUS:B:SPMI:SDATa`` command tree. + """ + return self._spmi + + @property + def svid(self) -> BusBItemSvid: + """Return the ``BUS:B:SVID`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SVID?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SVID?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.alert``: The ``BUS:B:SVID:ALERT`` command tree. + - ``.clock``: The ``BUS:B:SVID:CLOCk`` command tree. + - ``.data``: The ``BUS:B:SVID:DATA`` command tree. + """ + return self._svid + + @property + def type(self) -> BusBItemType: + """Return the ``BUS:B:TYPe`` command. + + Description: + - This command sets or queries the bus type or standard for the specified bus. The bus + is specified by x. Arguments for a bus type are only available then the required + serial bus option is installed. + + 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 {ARINC429|AUDio|CAN|ETHernet|EUSB|FLEXRAY|I2C|I3C|LIN|MDIO|MIL1553B|PARallel|RS232C|SENT|SPI|SPMI|SVID|USB} + - BUS:B:TYPe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``ARINC429`` specifies the ARINC 429 avionics serial bus. + - ``AUDio`` specifies an audio bus. + - ``CAN`` specifies a Controller Area Network bus. + - ``ETHernet`` specifies the Ethernet bus. + - ``EUSB`` specifies a eUSB bus. Requires option SR-EUSB2. + - ``FLEXRAY`` specifies a FlexRay bus. + - ``I2C`` specifies the Inter-IC bus. + - ``I3C`` specifies the MIPI Improved Inter Integrated Circuit (I3C) bus. + - ``LIN`` specifies a Local Interconnect Network bus. + - ``MDIO`` specifies a MDIO bus. + - ``MIL1553B`` specifies the MIL-STD-1553 avionics serial bus. + - ``PARallel`` specifies a parallel bus. + - ``RS232C`` specifies the RS-232 Serial bus. + - ``SENT`` specifies the Single Edge Nibble Transmission (SENT) automotive serial bus. + - ``SPI`` specifies the Serial Peripheral Interface bus. + - ``SPMI`` Specifies a System Power Management Interface bus. + - ``SVID`` Specifies a Serial VID bus. + - ``USB`` specifies the Universal Serial 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``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:USB:BITRate`` command. + - ``.dataminusthreshold``: The ``BUS:B:USB:DATAMINUSTHRESHold`` command. + - ``.dataplusthreshold``: The ``BUS:B:USB:DATAPLUSTHRESHold`` command. + - ``.lowthreshold``: The ``BUS:B:USB:LOWTHRESHold`` command. + - ``.signaltype``: The ``BUS:B:USB:SIGNALTYpe`` command. + - ``.source``: The ``BUS:B:USB:SOUrce`` command. + - ``.threshold``: The ``BUS:B:USB:THRESHold`` command. + """ + return self._usb + + +class BusAddnew(SCPICmdWrite): + """The ``BUS:ADDNew`` command. + + Description: + - This command adds the specified bus. This command creates/adds the bus but does not + display it (turn it on). In order to enable bus decoding and see the bus display on + screen, send the ``DISPLAY:WAVEVIEWX:BUS:BX:STATE ON`` command. + + Usage: + - Using the ``.write(value)`` method will send the ``BUS:ADDNew value`` command. + + SCPI Syntax: + ``` + - BUS:ADDNew + ``` + + Info: + - ```` is a quoted string of the form 'B' where NR1 is ≥1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class Bus(SCPICmdRead): + """The ``BUS`` command tree. + + 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``. + + Properties: + - ``.addnew``: The ``BUS:ADDNew`` command. + - ``.b``: The ``BUS:B`` command tree. + - ``.delete``: The ``BUS:DELete`` command. + - ``.list``: The ``BUS:LIST`` command. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "BUS") -> None: + super().__init__(device, cmd_syntax) + self._addnew = BusAddnew(device, f"{self._cmd_syntax}:ADDNew") + self._b: Dict[int, BusBItem] = DefaultDictPassKeyToFactory( + lambda x: BusBItem(device, f"{self._cmd_syntax}:B{x}") + ) + self._delete = BusDelete(device, f"{self._cmd_syntax}:DELete") + self._list = BusList(device, f"{self._cmd_syntax}:LIST") + + @property + def addnew(self) -> BusAddnew: + """Return the ``BUS:ADDNew`` command. + + Description: + - This command adds the specified bus. This command creates/adds the bus but does not + display it (turn it on). In order to enable bus decoding and see the bus display on + screen, send the ``DISPLAY:WAVEVIEWX:BUS:BX:STATE ON`` command. + + Usage: + - Using the ``.write(value)`` method will send the ``BUS:ADDNew value`` command. + + SCPI Syntax: + ``` + - BUS:ADDNew + ``` + + Info: + - ```` is a quoted string of the form 'B' where NR1 is ≥1. + """ + return self._addnew + + @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``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.arinc429a``: The ``BUS:B:ARINC429A`` command tree. + - ``.audio``: The ``BUS:B:AUDio`` command tree. + - ``.autoethernet``: The ``BUS:B:AUTOETHERnet`` command tree. + - ``.can``: The ``BUS:B:CAN`` command tree. + - ``.cphy``: The ``BUS:B:CPHY`` command tree. + - ``.cxpi``: The ``BUS:B:CXPI`` command tree. + - ``.display``: The ``BUS:B:DISplay`` command tree. + - ``.dphy``: The ``BUS:B:DPHY`` command tree. + - ``.espi``: The ``BUS:B:ESPI`` command tree. + - ``.ethercat``: The ``BUS:B:ETHERCAT`` command tree. + - ``.ethernet``: The ``BUS:B:ETHERnet`` command tree. + - ``.eusb``: The ``BUS:B:EUSB`` command tree. + - ``.flexray``: The ``BUS:B:FLEXray`` command tree. + - ``.i2c``: The ``BUS:B:I2C`` command tree. + - ``.i3c``: The ``BUS:B:I3C`` command tree. + - ``.label``: The ``BUS:B:LABel`` command tree. + - ``.lin``: The ``BUS:B:LIN`` command tree. + - ``.manchester``: The ``BUS:B:MANChester`` command tree. + - ``.mdio``: The ``BUS:B:MDIO`` command tree. + - ``.mil1553b``: The ``BUS:B:MIL1553B`` command tree. + - ``.nrz``: The ``BUS:B:NRZ`` command tree. + - ``.onewire``: The ``BUS:B:ONEWIRe`` command tree. + - ``.parallel``: The ``BUS:B:PARallel`` command tree. + - ``.psifive``: The ``BUS:B:PSIFIVe`` command tree. + - ``.rs232c``: The ``BUS:B:RS232C`` command tree. + - ``.s8b10b``: The ``BUS:B:S8B10B`` command tree. + - ``.sdlc``: The ``BUS:B:SDLC`` command tree. + - ``.sent``: The ``BUS:B:SENT`` command tree. + - ``.smbus``: The ``BUS:B:SMBUS`` command tree. + - ``.spacewire``: The ``BUS:B:SPACEWIRe`` command tree. + - ``.spi``: The ``BUS:B:SPI`` command tree. + - ``.spmi``: The ``BUS:B:SPMI`` command tree. + - ``.svid``: The ``BUS:B:SVID`` command tree. + - ``.type``: The ``BUS:B:TYPe`` command. + - ``.usb``: The ``BUS:B:USB`` command tree. + """ + return self._b + + @property + def delete(self) -> BusDelete: + """Return the ``BUS:DELete`` command. + + Description: + - This command deletes the specified bus. + + Usage: + - Using the ``.write(value)`` method will send the ``BUS:DELete value`` command. + + SCPI Syntax: + ``` + - BUS:DELete + ``` + + Info: + - ```` specifies the bus to delete and is of the form 'B', where is + ≥1. + """ + return self._delete + + @property + def list(self) -> BusList: + """Return the ``BUS:LIST`` command. + + Description: + - This query returns a comma separated list of all currently defined buses. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - BUS:LIST? + ``` + """ + return self._list diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/callouts.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/callouts.py new file mode 100644 index 00000000..500cb61a --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/callouts.py @@ -0,0 +1,879 @@ +"""The callouts commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - CALLOUTS:CALLOUT + - CALLOUTS:CALLOUT:BOOKMark:SOURCE {CH} + - CALLOUTS:CALLOUT:BOOKMark:SOURCE? + - CALLOUTS:CALLOUT:BOOKMark:XPOS + - CALLOUTS:CALLOUT:BOOKMark:XPOS? + - CALLOUTS:CALLOUT:COLOR + - CALLOUTS:CALLOUT:COLOR? + - CALLOUTS:CALLOUT:DISPLAYPOSition:X + - CALLOUTS:CALLOUT:DISPLAYPOSition:X? + - CALLOUTS:CALLOUT:DISPLAYPOSition:Y + - CALLOUTS:CALLOUT:DISPLAYPOSition:Y? + - CALLOUTS:CALLOUT:FONT:BOLD {1|0} + - CALLOUTS:CALLOUT:FONT:BOLD? + - CALLOUTS:CALLOUT:FONT:ITALIC {1|0} + - CALLOUTS:CALLOUT:FONT:ITALIC? + - CALLOUTS:CALLOUT:FONT:SIZE + - CALLOUTS:CALLOUT:FONT:SIZE? + - CALLOUTS:CALLOUT:FONT:TYPE + - CALLOUTS:CALLOUT:FONT:TYPE? + - CALLOUTS:CALLOUT:FONT:UNDERLine {1|0} + - CALLOUTS:CALLOUT:FONT:UNDERLine? + - CALLOUTS:CALLOUT:TEXT + - CALLOUTS:CALLOUT:TEXT? + - CALLOUTS:CALLOUT:TYPE {NOTE|ARROW|RECTANGLE|BOOKMARK} + - CALLOUTS:CALLOUT:TYPE? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class CalloutsCalloutItemType(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:TYPE`` command. + + Description: + - This command sets or queries type of the callout. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:TYPE?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:TYPE value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:TYPE {NOTE|ARROW|RECTANGLE|BOOKMARK} + - CALLOUTS:CALLOUT:TYPE? + ``` + + Info: + - ``NOTE`` specifies callout type as note. + - ``ARROW`` specifies callout type as arrow. + - ``RECTANGLE`` specifies callout type as rectangle. + - ``BOOKMARK`` specifies callout type as bookmark. + """ + + +class CalloutsCalloutItemText(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:TEXT`` command. + + Description: + - This command sets or queries the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:TEXT?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:TEXT?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:TEXT value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:TEXT + - CALLOUTS:CALLOUT:TEXT? + ``` + + Info: + - ```` specifies the callout text. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class CalloutsCalloutItemFontUnderline(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:FONT:UNDERLine`` command. + + Description: + - This command sets or queries the underline state of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:UNDERLine?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:UNDERLine?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:FONT:UNDERLine value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:UNDERLine {1|0} + - CALLOUTS:CALLOUT:FONT:UNDERLine? + ``` + + Info: + - ``1`` underlines the callout text. + - ``0`` does not underline the callout text. + """ + + +class CalloutsCalloutItemFontType(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:FONT:TYPE`` command. + + Description: + - This command sets or queries type of the callout. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:TYPE + - CALLOUTS:CALLOUT:FONT:TYPE? + ``` + + Info: + - ```` specifies the type of font for the callout text. The available font types + include: DejaVu Sans, DejaVu Sans Mono, DejaVu Serif, Frutiger LT Std, Monospace, Sans + Serif, Serif, Ubuntu, Ubuntu Condensed, and Ubuntu Mono. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class CalloutsCalloutItemFontSize(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:SIZE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:SIZE + - CALLOUTS:CALLOUT:FONT:SIZE? + ``` + + Info: + - ```` specifies the font size in points. + """ + + +class CalloutsCalloutItemFontItalic(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:FONT:ITALIC`` command. + + Description: + - This command sets or queries the italic state of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:ITALIC?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:ITALIC?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:ITALIC value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:ITALIC {1|0} + - CALLOUTS:CALLOUT:FONT:ITALIC? + ``` + + Info: + - ``1`` specifies the callout font style as italic. + - ``0`` does not specify the font style as italic. + """ + + +class CalloutsCalloutItemFontBold(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:BOLD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:BOLD {1|0} + - CALLOUTS:CALLOUT:FONT:BOLD? + ``` + + Info: + - ``1`` specifies the callout font weight as bold. + - ``0`` specifies the callout font weight as normal. + """ + + +class CalloutsCalloutItemFont(SCPICmdRead): + """The ``CALLOUTS:CALLOUT:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bold``: The ``CALLOUTS:CALLOUT:FONT:BOLD`` command. + - ``.italic``: The ``CALLOUTS:CALLOUT:FONT:ITALIC`` command. + - ``.size``: The ``CALLOUTS:CALLOUT:FONT:SIZE`` command. + - ``.type``: The ``CALLOUTS:CALLOUT:FONT:TYPE`` command. + - ``.underline``: The ``CALLOUTS:CALLOUT:FONT:UNDERLine`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = CalloutsCalloutItemFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = CalloutsCalloutItemFontItalic(device, f"{self._cmd_syntax}:ITALIC") + self._size = CalloutsCalloutItemFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = CalloutsCalloutItemFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = CalloutsCalloutItemFontUnderline(device, f"{self._cmd_syntax}:UNDERLine") + + @property + def bold(self) -> CalloutsCalloutItemFontBold: + """Return the ``CALLOUTS:CALLOUT:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:BOLD?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:FONT:BOLD value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:BOLD {1|0} + - CALLOUTS:CALLOUT:FONT:BOLD? + ``` + + Info: + - ``1`` specifies the callout font weight as bold. + - ``0`` specifies the callout font weight as normal. + """ + return self._bold + + @property + def italic(self) -> CalloutsCalloutItemFontItalic: + """Return the ``CALLOUTS:CALLOUT:FONT:ITALIC`` command. + + Description: + - This command sets or queries the italic state of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:ITALIC?`` + query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:ITALIC?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:FONT:ITALIC value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:ITALIC {1|0} + - CALLOUTS:CALLOUT:FONT:ITALIC? + ``` + + Info: + - ``1`` specifies the callout font style as italic. + - ``0`` does not specify the font style as italic. + """ + return self._italic + + @property + def size(self) -> CalloutsCalloutItemFontSize: + """Return the ``CALLOUTS:CALLOUT:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:SIZE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:FONT:SIZE value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:SIZE + - CALLOUTS:CALLOUT:FONT:SIZE? + ``` + + Info: + - ```` specifies the font size in points. + """ + return self._size + + @property + def type(self) -> CalloutsCalloutItemFontType: + """Return the ``CALLOUTS:CALLOUT:FONT:TYPE`` command. + + Description: + - This command sets or queries type of the callout. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:FONT:TYPE value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:TYPE + - CALLOUTS:CALLOUT:FONT:TYPE? + ``` + + Info: + - ```` specifies the type of font for the callout text. The available font + types include: DejaVu Sans, DejaVu Sans Mono, DejaVu Serif, Frutiger LT Std, + Monospace, Sans Serif, Serif, Ubuntu, Ubuntu Condensed, and Ubuntu Mono. + """ + return self._type + + @property + def underline(self) -> CalloutsCalloutItemFontUnderline: + """Return the ``CALLOUTS:CALLOUT:FONT:UNDERLine`` command. + + Description: + - This command sets or queries the underline state of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT:UNDERLine?`` + query. + - Using the ``.verify(value)`` method will send the + ``CALLOUTS:CALLOUT:FONT:UNDERLine?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:FONT:UNDERLine value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:FONT:UNDERLine {1|0} + - CALLOUTS:CALLOUT:FONT:UNDERLine? + ``` + + Info: + - ``1`` underlines the callout text. + - ``0`` does not underline the callout text. + """ + return self._underline + + +class CalloutsCalloutItemDisplaypositionY(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y`` command. + + Description: + - This command sets or queries vertical display position of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y?`` + query. + - Using the ``.verify(value)`` method will send the + ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:DISPLAYPOSition:Y + - CALLOUTS:CALLOUT:DISPLAYPOSition:Y? + ``` + + Info: + - ```` specifies the callout vertical display position. + """ + + +class CalloutsCalloutItemDisplaypositionX(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:DISPLAYPOSition:X`` command. + + Description: + - This command sets or queries horizontal display position of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:DISPLAYPOSition:X?`` + query. + - Using the ``.verify(value)`` method will send the + ``CALLOUTS:CALLOUT:DISPLAYPOSition:X?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:DISPLAYPOSition:X value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:DISPLAYPOSition:X + - CALLOUTS:CALLOUT:DISPLAYPOSition:X? + ``` + + Info: + - ```` specifies the callout horizontal display position. + """ + + +class CalloutsCalloutItemDisplayposition(SCPICmdRead): + """The ``CALLOUTS:CALLOUT:DISPLAYPOSition`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:DISPLAYPOSition?`` + query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:DISPLAYPOSition?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.x``: The ``CALLOUTS:CALLOUT:DISPLAYPOSition:X`` command. + - ``.y``: The ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._x = CalloutsCalloutItemDisplaypositionX(device, f"{self._cmd_syntax}:X") + self._y = CalloutsCalloutItemDisplaypositionY(device, f"{self._cmd_syntax}:Y") + + @property + def x(self) -> CalloutsCalloutItemDisplaypositionX: + """Return the ``CALLOUTS:CALLOUT:DISPLAYPOSition:X`` command. + + Description: + - This command sets or queries horizontal display position of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:DISPLAYPOSition:X?`` + query. + - Using the ``.verify(value)`` method will send the + ``CALLOUTS:CALLOUT:DISPLAYPOSition:X?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:DISPLAYPOSition:X value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:DISPLAYPOSition:X + - CALLOUTS:CALLOUT:DISPLAYPOSition:X? + ``` + + Info: + - ```` specifies the callout horizontal display position. + """ + return self._x + + @property + def y(self) -> CalloutsCalloutItemDisplaypositionY: + """Return the ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y`` command. + + Description: + - This command sets or queries vertical display position of the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y?`` + query. + - Using the ``.verify(value)`` method will send the + ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:DISPLAYPOSition:Y + - CALLOUTS:CALLOUT:DISPLAYPOSition:Y? + ``` + + Info: + - ```` specifies the callout vertical display position. + """ + return self._y + + +class CalloutsCalloutItemColor(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:COLOR`` command. + + Description: + - This command sets or queries the text color of the callout. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:COLOR?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:COLOR?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:COLOR value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:COLOR + - CALLOUTS:CALLOUT:COLOR? + ``` + + Info: + - ```` specifies the callout text color using hexadecimal color values. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class CalloutsCalloutItemBookmarkXpos(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:BOOKMark:XPOS`` command. + + Description: + - This command sets or queries the X-Position of the Bookmark callout type. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:BOOKMark:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:BOOKMark:XPOS?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:BOOKMark:XPOS value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:BOOKMark:XPOS + - CALLOUTS:CALLOUT:BOOKMark:XPOS? + ``` + + Info: + - ```` specifies the location of the bookmark linked to the source waveform in X-axis. + """ + + +class CalloutsCalloutItemBookmarkSource(SCPICmdWrite, SCPICmdRead): + """The ``CALLOUTS:CALLOUT:BOOKMark:SOURCE`` command. + + Description: + - This command sets or queries the source of the Bookmark callout type. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:BOOKMark:SOURCE?`` + query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:BOOKMark:SOURCE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:BOOKMark:SOURCE value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:BOOKMark:SOURCE {CH} + - CALLOUTS:CALLOUT:BOOKMark:SOURCE? + ``` + + Info: + - ``CH1`` specifies the bookmark callout source as Ch1. + - ``CH2`` specifies the bookmark callout source as Ch2. + - ``CH3`` specifies the bookmark callout source as Ch3. + - ``CH4`` specifies the bookmark callout source as Ch4. + """ + + +class CalloutsCalloutItemBookmark(SCPICmdRead): + """The ``CALLOUTS:CALLOUT:BOOKMark`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:BOOKMark?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:BOOKMark?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``CALLOUTS:CALLOUT:BOOKMark:SOURCE`` command. + - ``.xpos``: The ``CALLOUTS:CALLOUT:BOOKMark:XPOS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = CalloutsCalloutItemBookmarkSource(device, f"{self._cmd_syntax}:SOURCE") + self._xpos = CalloutsCalloutItemBookmarkXpos(device, f"{self._cmd_syntax}:XPOS") + + @property + def source(self) -> CalloutsCalloutItemBookmarkSource: + """Return the ``CALLOUTS:CALLOUT:BOOKMark:SOURCE`` command. + + Description: + - This command sets or queries the source of the Bookmark callout type. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:BOOKMark:SOURCE?`` + query. + - Using the ``.verify(value)`` method will send the + ``CALLOUTS:CALLOUT:BOOKMark:SOURCE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:BOOKMark:SOURCE value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:BOOKMark:SOURCE {CH} + - CALLOUTS:CALLOUT:BOOKMark:SOURCE? + ``` + + Info: + - ``CH1`` specifies the bookmark callout source as Ch1. + - ``CH2`` specifies the bookmark callout source as Ch2. + - ``CH3`` specifies the bookmark callout source as Ch3. + - ``CH4`` specifies the bookmark callout source as Ch4. + """ + return self._source + + @property + def xpos(self) -> CalloutsCalloutItemBookmarkXpos: + """Return the ``CALLOUTS:CALLOUT:BOOKMark:XPOS`` command. + + Description: + - This command sets or queries the X-Position of the Bookmark callout type. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:BOOKMark:XPOS?`` + query. + - Using the ``.verify(value)`` method will send the + ``CALLOUTS:CALLOUT:BOOKMark:XPOS?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CALLOUTS:CALLOUT:BOOKMark:XPOS value`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:BOOKMark:XPOS + - CALLOUTS:CALLOUT:BOOKMark:XPOS? + ``` + + Info: + - ```` specifies the location of the bookmark linked to the source waveform in + X-axis. + """ + return self._xpos + + +class CalloutsCalloutItem(ValidatedDynamicNumberCmd, SCPICmdWriteNoArguments, SCPICmdRead): + """The ``CALLOUTS:CALLOUT`` command. + + Description: + - This command creates a new note. A Note is the default callout value. The callout number + is specified by x. + + Usage: + - Using the ``.write()`` method will send the ``CALLOUTS:CALLOUT`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT + ``` + + Properties: + - ``.bookmark``: The ``CALLOUTS:CALLOUT:BOOKMark`` command tree. + - ``.color``: The ``CALLOUTS:CALLOUT:COLOR`` command. + - ``.displayposition``: The ``CALLOUTS:CALLOUT:DISPLAYPOSition`` command tree. + - ``.font``: The ``CALLOUTS:CALLOUT:FONT`` command tree. + - ``.text``: The ``CALLOUTS:CALLOUT:TEXT`` command. + - ``.type``: The ``CALLOUTS:CALLOUT:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bookmark = CalloutsCalloutItemBookmark(device, f"{self._cmd_syntax}:BOOKMark") + self._color = CalloutsCalloutItemColor(device, f"{self._cmd_syntax}:COLOR") + self._displayposition = CalloutsCalloutItemDisplayposition( + device, f"{self._cmd_syntax}:DISPLAYPOSition" + ) + self._font = CalloutsCalloutItemFont(device, f"{self._cmd_syntax}:FONT") + self._text = CalloutsCalloutItemText(device, f"{self._cmd_syntax}:TEXT") + self._type = CalloutsCalloutItemType(device, f"{self._cmd_syntax}:TYPE") + + @property + def bookmark(self) -> CalloutsCalloutItemBookmark: + """Return the ``CALLOUTS:CALLOUT:BOOKMark`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:BOOKMark?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:BOOKMark?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``CALLOUTS:CALLOUT:BOOKMark:SOURCE`` command. + - ``.xpos``: The ``CALLOUTS:CALLOUT:BOOKMark:XPOS`` command. + """ + return self._bookmark + + @property + def color(self) -> CalloutsCalloutItemColor: + """Return the ``CALLOUTS:CALLOUT:COLOR`` command. + + Description: + - This command sets or queries the text color of the callout. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:COLOR?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:COLOR?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:COLOR value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:COLOR + - CALLOUTS:CALLOUT:COLOR? + ``` + + Info: + - ```` specifies the callout text color using hexadecimal color values. + """ + return self._color + + @property + def displayposition(self) -> CalloutsCalloutItemDisplayposition: + """Return the ``CALLOUTS:CALLOUT:DISPLAYPOSition`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:DISPLAYPOSition?`` + query. + - Using the ``.verify(value)`` method will send the + ``CALLOUTS:CALLOUT:DISPLAYPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.x``: The ``CALLOUTS:CALLOUT:DISPLAYPOSition:X`` command. + - ``.y``: The ``CALLOUTS:CALLOUT:DISPLAYPOSition:Y`` command. + """ + return self._displayposition + + @property + def font(self) -> CalloutsCalloutItemFont: + """Return the ``CALLOUTS:CALLOUT:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:FONT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bold``: The ``CALLOUTS:CALLOUT:FONT:BOLD`` command. + - ``.italic``: The ``CALLOUTS:CALLOUT:FONT:ITALIC`` command. + - ``.size``: The ``CALLOUTS:CALLOUT:FONT:SIZE`` command. + - ``.type``: The ``CALLOUTS:CALLOUT:FONT:TYPE`` command. + - ``.underline``: The ``CALLOUTS:CALLOUT:FONT:UNDERLine`` command. + """ + return self._font + + @property + def text(self) -> CalloutsCalloutItemText: + """Return the ``CALLOUTS:CALLOUT:TEXT`` command. + + Description: + - This command sets or queries the callout text. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:TEXT?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:TEXT?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:TEXT value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:TEXT + - CALLOUTS:CALLOUT:TEXT? + ``` + + Info: + - ```` specifies the callout text. + """ + return self._text + + @property + def type(self) -> CalloutsCalloutItemType: + """Return the ``CALLOUTS:CALLOUT:TYPE`` command. + + Description: + - This command sets or queries type of the callout. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS:CALLOUT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS:CALLOUT:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CALLOUTS:CALLOUT:TYPE value`` + command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT:TYPE {NOTE|ARROW|RECTANGLE|BOOKMARK} + - CALLOUTS:CALLOUT:TYPE? + ``` + + Info: + - ``NOTE`` specifies callout type as note. + - ``ARROW`` specifies callout type as arrow. + - ``RECTANGLE`` specifies callout type as rectangle. + - ``BOOKMARK`` specifies callout type as bookmark. + """ + return self._type + + +class Callouts(SCPICmdRead): + """The ``CALLOUTS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.callout``: The ``CALLOUTS:CALLOUT`` command. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "CALLOUTS") -> None: + super().__init__(device, cmd_syntax) + self._callout: Dict[int, CalloutsCalloutItem] = DefaultDictPassKeyToFactory( + lambda x: CalloutsCalloutItem(device, f"{self._cmd_syntax}:CALLOUT{x}") + ) + + @property + def callout(self) -> Dict[int, CalloutsCalloutItem]: + """Return the ``CALLOUTS:CALLOUT`` command. + + Description: + - This command creates a new note. A Note is the default callout value. The callout + number is specified by x. + + Usage: + - Using the ``.write()`` method will send the ``CALLOUTS:CALLOUT`` command. + + SCPI Syntax: + ``` + - CALLOUTS:CALLOUT + ``` + + Sub-properties: + - ``.bookmark``: The ``CALLOUTS:CALLOUT:BOOKMark`` command tree. + - ``.color``: The ``CALLOUTS:CALLOUT:COLOR`` command. + - ``.displayposition``: The ``CALLOUTS:CALLOUT:DISPLAYPOSition`` command tree. + - ``.font``: The ``CALLOUTS:CALLOUT:FONT`` command tree. + - ``.text``: The ``CALLOUTS:CALLOUT:TEXT`` command. + - ``.type``: The ``CALLOUTS:CALLOUT:TYPE`` command. + """ + return self._callout diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/ch.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/ch.py new file mode 100644 index 00000000..302704e4 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/ch.py @@ -0,0 +1,3196 @@ +"""The ch commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - CH:BANdwidth {|FULl} + - CH:BANdwidth:FILTer:OPTIMIZation {STEPRESPONSE|FLATNESS} + - CH:BANdwidth:FILTer:OPTIMIZation? + - CH:BANdwidth? + - CH:DITHERrange + - CH:INVert {ON|OFF|} + - CH:INVert? + - CH:PROBECOntrol {AUTO|MANual} + - CH:PROBECOntrol? + - CH:PROBECal? + - CH:PROBEFunc:EXTAtten + - CH:PROBEFunc:EXTAtten? + - CH:PROBEFunc:EXTDBatten + - CH:PROBEFunc:EXTDBatten? + - CH:PROBEFunc:EXTUnits + - CH:PROBEFunc:EXTUnits:STATE {ON|OFF|} + - CH:PROBEFunc:EXTUnits? + - CH:PRObe:AUTOZero EXECute + - CH:PRObe:COMPensate + - CH:PRObe:DEGAUSS EXECute + - CH:PRObe:DEGAUSS:STATE? + - CH:PRObe:FORCEDRange + - CH:PRObe:FORCEDRange? + - CH:PRObe:GAIN? + - CH:PRObe:ID:SERnumber? + - CH:PRObe:ID:TYPe? + - CH:PRObe:ID? + - CH:PRObe:INPUTMode {A|B|C|D} + - CH:PRObe:INPUTMode:AOFFSet + - CH:PRObe:INPUTMode:AOFFSet? + - CH:PRObe:INPUTMode:BOFFSet + - CH:PRObe:INPUTMode:BOFFSet? + - CH:PRObe:INPUTMode:COFFSet + - CH:PRObe:INPUTMode:COFFSet? + - CH:PRObe:INPUTMode:DOFFSet + - CH:PRObe:INPUTMode:DOFFSet? + - CH:PRObe:INPUTMode? + - CH:PRObe:RESistance? + - CH:PRObe:SELFCal EXECUTE + - CH:PRObe:SELFCal:State? EXECUTE + - CH:PRObe:SET + - CH:PRObe:SET? + - CH:PRObe:STATus? + - CH:PRObe:UNIts? + - CH:PRObe? + - CH:SCALERATio + - CH:SCALERATio? + - CH:SV:SPANABovebw? + - CH:SV:SPANBELowdc? + - CH:TERmination + - CH:TERmination? + - CH:VTERm:BIAS + - CH:VTERm:BIAS? + - CH? + - CH_D:LABel:COLor + - CH_D:LABel:COLor? + - CH_D:LABel:FONT:BOLD {ON|OFF|} + - CH_D:LABel:FONT:BOLD? + - CH_D:LABel:FONT:ITALic {ON|OFF|} + - CH_D:LABel:FONT:ITALic? + - CH_D:LABel:FONT:SIZE + - CH_D:LABel:FONT:SIZE? + - CH_D:LABel:FONT:TYPE + - CH_D:LABel:FONT:TYPE? + - CH_D:LABel:FONT:UNDERline {ON|OFF|} + - CH_D:LABel:FONT:UNDERline? + - CH_D:LABel:NAMe + - CH_D:LABel:NAMe? + - CH_DALL:LABel:COLor + - CH_DALL:LABel:COLor? + - CH_DALL:LABel:FONT:BOLD {ON|OFF|} + - CH_DALL:LABel:FONT:BOLD? + - CH_DALL:LABel:FONT:ITALic {ON|OFF|} + - CH_DALL:LABel:FONT:ITALic? + - CH_DALL:LABel:FONT:SIZE + - CH_DALL:LABel:FONT:SIZE? + - CH_DALL:LABel:FONT:TYPE + - CH_DALL:LABel:FONT:TYPE? + - CH_DALL:LABel:FONT:UNDERline {ON|OFF|} + - CH_DALL:LABel:FONT:UNDERline? + - CH_DALL:LABel:NAMe + - CH_DALL:LABel:NAMe? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdReadWithArguments, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedChannel, + ValidatedDigitalBit, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class ChannelDallLabelName(SCPICmdWrite, SCPICmdRead): + """The ``CH_DALL:LABel:NAMe`` command. + + Description: + - This command sets or queries the label of the specified digital group. The channel is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:NAMe value`` command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:NAMe + - CH_DALL:LABel:NAMe? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the name of the group. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class ChannelDallLabelFontUnderline(SCPICmdWrite, SCPICmdRead): + """The ``CH_DALL:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified digital group. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:UNDERline?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:UNDERline?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:FONT:UNDERline value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:UNDERline {ON|OFF|} + - CH_DALL:LABel:FONT:UNDERline? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off underline font. + - ``ON`` argument turns on underline font. + - ```` = 0 turns off underline font; any other value turns on underline font. + """ + + +class ChannelDallLabelFontType(SCPICmdWrite, SCPICmdRead): + """The ``CH_DALL:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified digital group, such as Arial + or Times New Roman. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:TYPE + - CH_DALL:LABel:FONT:TYPE? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the font type. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class ChannelDallLabelFontSize(SCPICmdWrite, SCPICmdRead): + """The ``CH_DALL:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified digital group. The channel is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:SIZE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:SIZE + - CH_DALL:LABel:FONT:SIZE? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the font size. + """ + + +class ChannelDallLabelFontItalic(SCPICmdWrite, SCPICmdRead): + """The ``CH_DALL:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified digital group. The channel + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:ITALic?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:ITALic {ON|OFF|} + - CH_DALL:LABel:FONT:ITALic? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + + +class ChannelDallLabelFontBold(SCPICmdWrite, SCPICmdRead): + """The ``CH_DALL:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified digital group. The channel is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:BOLD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:BOLD {ON|OFF|} + - CH_DALL:LABel:FONT:BOLD? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + + +class ChannelDallLabelFont(SCPICmdRead): + """The ``CH_DALL:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Properties: + - ``.bold``: The ``CH_DALL:LABel:FONT:BOLD`` command. + - ``.italic``: The ``CH_DALL:LABel:FONT:ITALic`` command. + - ``.size``: The ``CH_DALL:LABel:FONT:SIZE`` command. + - ``.type``: The ``CH_DALL:LABel:FONT:TYPE`` command. + - ``.underline``: The ``CH_DALL:LABel:FONT:UNDERline`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = ChannelDallLabelFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = ChannelDallLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") + self._size = ChannelDallLabelFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = ChannelDallLabelFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = ChannelDallLabelFontUnderline(device, f"{self._cmd_syntax}:UNDERline") + + @property + def bold(self) -> ChannelDallLabelFontBold: + """Return the ``CH_DALL:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified digital group. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:BOLD?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:BOLD {ON|OFF|} + - CH_DALL:LABel:FONT:BOLD? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + return self._bold + + @property + def italic(self) -> ChannelDallLabelFontItalic: + """Return the ``CH_DALL:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified digital group. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:ITALic?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH_DALL:LABel:FONT:ITALic value`` command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:ITALic {ON|OFF|} + - CH_DALL:LABel:FONT:ITALic? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + return self._italic + + @property + def size(self) -> ChannelDallLabelFontSize: + """Return the ``CH_DALL:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified digital group. The channel + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:SIZE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:SIZE + - CH_DALL:LABel:FONT:SIZE? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the font size. + """ + return self._size + + @property + def type(self) -> ChannelDallLabelFontType: + """Return the ``CH_DALL:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified digital group, such as + Arial or Times New Roman. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:TYPE + - CH_DALL:LABel:FONT:TYPE? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the font type. + """ + return self._type + + @property + def underline(self) -> ChannelDallLabelFontUnderline: + """Return the ``CH_DALL:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified digital group. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT:UNDERline?`` + query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT:UNDERline?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH_DALL:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:FONT:UNDERline {ON|OFF|} + - CH_DALL:LABel:FONT:UNDERline? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off underline font. + - ``ON`` argument turns on underline font. + - ```` = 0 turns off underline font; any other value turns on underline font. + """ + return self._underline + + +class ChannelDallLabelColor(SCPICmdWrite, SCPICmdRead): + """The ``CH_DALL:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified digital group label. The channel + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:COLor?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:COLor value`` command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:COLor + - CH_DALL:LABel:COLor? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the color of the digital group label. To return the color to the default + color, send an empty string as in this example: ``:CH5_DALL:LABEL:COLOR`` ''. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class ChannelDallLabel(SCPICmdRead): + """The ``CH_DALL:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Properties: + - ``.color``: The ``CH_DALL:LABel:COLor`` command. + - ``.font``: The ``CH_DALL:LABel:FONT`` command tree. + - ``.name``: The ``CH_DALL:LABel:NAMe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._color = ChannelDallLabelColor(device, f"{self._cmd_syntax}:COLor") + self._font = ChannelDallLabelFont(device, f"{self._cmd_syntax}:FONT") + self._name = ChannelDallLabelName(device, f"{self._cmd_syntax}:NAMe") + + @property + def color(self) -> ChannelDallLabelColor: + """Return the ``CH_DALL:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified digital group label. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:COLor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:COLor + - CH_DALL:LABel:COLor? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the color of the digital group label. To return the color to the + default color, send an empty string as in this example: ``:CH5_DALL:LABEL:COLOR`` ''. + """ + return self._color + + @property + def font(self) -> ChannelDallLabelFont: + """Return the ``CH_DALL:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Sub-properties: + - ``.bold``: The ``CH_DALL:LABel:FONT:BOLD`` command. + - ``.italic``: The ``CH_DALL:LABel:FONT:ITALic`` command. + - ``.size``: The ``CH_DALL:LABel:FONT:SIZE`` command. + - ``.type``: The ``CH_DALL:LABel:FONT:TYPE`` command. + - ``.underline``: The ``CH_DALL:LABel:FONT:UNDERline`` command. + """ + return self._font + + @property + def name(self) -> ChannelDallLabelName: + """Return the ``CH_DALL:LABel:NAMe`` command. + + Description: + - This command sets or queries the label of the specified digital group. The channel is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_DALL:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - CH_DALL:LABel:NAMe + - CH_DALL:LABel:NAMe? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the name of the group. + """ + return self._name + + +class ChannelDall(SCPICmdRead): + """The ``CH_DALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Properties: + - ``.label``: The ``CH_DALL:LABel`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._label = ChannelDallLabel(device, f"{self._cmd_syntax}:LABel") + + @property + def label(self) -> ChannelDallLabel: + """Return the ``CH_DALL:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Sub-properties: + - ``.color``: The ``CH_DALL:LABel:COLor`` command. + - ``.font``: The ``CH_DALL:LABel:FONT`` command tree. + - ``.name``: The ``CH_DALL:LABel:NAMe`` command. + """ + return self._label + + +class ChannelDigitalBitLabelName(SCPICmdWrite, SCPICmdRead): + """The ``CH_D:LABel:NAMe`` command. + + Description: + - Sets or queries the label of the specified digital bit. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:NAMe value`` command. + + SCPI Syntax: + ``` + - CH_D:LABel:NAMe + - CH_D:LABel:NAMe? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the label. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class ChannelDigitalBitLabelFontUnderline(SCPICmdWrite, SCPICmdRead): + """The ``CH_D:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the label of the specified digital + bit. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:UNDERline?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:UNDERline?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:FONT:UNDERline value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:UNDERline {ON|OFF|} + - CH_D:LABel:FONT:UNDERline? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off underline font. + - ``ON`` argument turns on underline font. + - ```` = 0 turns off underline font; any other value turns on underline font. + """ + + +class ChannelDigitalBitLabelFontType(SCPICmdWrite, SCPICmdRead): + """The ``CH_D:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the label of the specified digital bit, such + as Arial or Times New Roman. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:TYPE + - CH_D:LABel:FONT:TYPE? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the font type of the label. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class ChannelDigitalBitLabelFontSize(SCPICmdWrite, SCPICmdRead): + """The ``CH_D:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the label of the specified digital bit. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:SIZE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:SIZE + - CH_D:LABel:FONT:SIZE? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the font size. + """ + + +class ChannelDigitalBitLabelFontItalic(SCPICmdWrite, SCPICmdRead): + """The ``CH_D:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the label of the specified digital bit. + The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:ITALic?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:ITALic {ON|OFF|} + - CH_D:LABel:FONT:ITALic? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + + +class ChannelDigitalBitLabelFontBold(SCPICmdWrite, SCPICmdRead): + """The ``CH_D:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the label of the specified digital bit. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:BOLD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:BOLD {ON|OFF|} + - CH_D:LABel:FONT:BOLD? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + + +class ChannelDigitalBitLabelFont(SCPICmdRead): + """The ``CH_D:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Properties: + - ``.bold``: The ``CH_D:LABel:FONT:BOLD`` command. + - ``.italic``: The ``CH_D:LABel:FONT:ITALic`` command. + - ``.size``: The ``CH_D:LABel:FONT:SIZE`` command. + - ``.type``: The ``CH_D:LABel:FONT:TYPE`` command. + - ``.underline``: The ``CH_D:LABel:FONT:UNDERline`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = ChannelDigitalBitLabelFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = ChannelDigitalBitLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") + self._size = ChannelDigitalBitLabelFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = ChannelDigitalBitLabelFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = ChannelDigitalBitLabelFontUnderline( + device, f"{self._cmd_syntax}:UNDERline" + ) + + @property + def bold(self) -> ChannelDigitalBitLabelFontBold: + """Return the ``CH_D:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the label of the specified digital bit. + The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:BOLD?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:BOLD {ON|OFF|} + - CH_D:LABel:FONT:BOLD? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + return self._bold + + @property + def italic(self) -> ChannelDigitalBitLabelFontItalic: + """Return the ``CH_D:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the label of the specified digital + bit. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:ITALic?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH_D:LABel:FONT:ITALic value`` command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:ITALic {ON|OFF|} + - CH_D:LABel:FONT:ITALic? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + return self._italic + + @property + def size(self) -> ChannelDigitalBitLabelFontSize: + """Return the ``CH_D:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the label of the specified digital bit. + The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:SIZE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:SIZE + - CH_D:LABel:FONT:SIZE? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the font size. + """ + return self._size + + @property + def type(self) -> ChannelDigitalBitLabelFontType: + """Return the ``CH_D:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the label of the specified digital bit, + such as Arial or Times New Roman. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:TYPE + - CH_D:LABel:FONT:TYPE? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the font type of the label. + """ + return self._type + + @property + def underline(self) -> ChannelDigitalBitLabelFontUnderline: + """Return the ``CH_D:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the label of the specified digital + bit. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT:UNDERline?`` + query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT:UNDERline?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH_D:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - CH_D:LABel:FONT:UNDERline {ON|OFF|} + - CH_D:LABel:FONT:UNDERline? + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off underline font. + - ``ON`` argument turns on underline font. + - ```` = 0 turns off underline font; any other value turns on underline font. + """ + return self._underline + + +class ChannelDigitalBitLabelColor(SCPICmdWrite, SCPICmdRead): + """The ``CH_D:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the label of the specified digital bit. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:COLor?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:COLor value`` command. + + SCPI Syntax: + ``` + - CH_D:LABel:COLor + - CH_D:LABel:COLor? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the label color. To return the color to the default color, send an empty + string as in this example: ``:CH5_D1:LABEL:COLOR`` ''. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class ChannelDigitalBitLabel(SCPICmdRead): + """The ``CH_D:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Properties: + - ``.color``: The ``CH_D:LABel:COLor`` command. + - ``.font``: The ``CH_D:LABel:FONT`` command tree. + - ``.name``: The ``CH_D:LABel:NAMe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._color = ChannelDigitalBitLabelColor(device, f"{self._cmd_syntax}:COLor") + self._font = ChannelDigitalBitLabelFont(device, f"{self._cmd_syntax}:FONT") + self._name = ChannelDigitalBitLabelName(device, f"{self._cmd_syntax}:NAMe") + + @property + def color(self) -> ChannelDigitalBitLabelColor: + """Return the ``CH_D:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the label of the specified digital bit. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:COLor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:COLor + - CH_D:LABel:COLor? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the label color. To return the color to the default color, send an + empty string as in this example: ``:CH5_D1:LABEL:COLOR`` ''. + """ + return self._color + + @property + def font(self) -> ChannelDigitalBitLabelFont: + """Return the ``CH_D:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Sub-properties: + - ``.bold``: The ``CH_D:LABel:FONT:BOLD`` command. + - ``.italic``: The ``CH_D:LABel:FONT:ITALic`` command. + - ``.size``: The ``CH_D:LABel:FONT:SIZE`` command. + - ``.type``: The ``CH_D:LABel:FONT:TYPE`` command. + - ``.underline``: The ``CH_D:LABel:FONT:UNDERline`` command. + """ + return self._font + + @property + def name(self) -> ChannelDigitalBitLabelName: + """Return the ``CH_D:LABel:NAMe`` command. + + Description: + - Sets or queries the label of the specified digital bit. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH_D:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - CH_D:LABel:NAMe + - CH_D:LABel:NAMe? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the label. + """ + return self._name + + +class ChannelDigitalBit(ValidatedDigitalBit, SCPICmdRead): + """The ``CH_D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_D?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Properties: + - ``.label``: The ``CH_D:LABel`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._label = ChannelDigitalBitLabel(device, f"{self._cmd_syntax}:LABel") + + @property + def label(self) -> ChannelDigitalBitLabel: + """Return the ``CH_D:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_D:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Sub-properties: + - ``.color``: The ``CH_D:LABel:COLor`` command. + - ``.font``: The ``CH_D:LABel:FONT`` command tree. + - ``.name``: The ``CH_D:LABel:NAMe`` command. + """ + return self._label + + +class ChannelVtermBias(SCPICmdWrite, SCPICmdRead): + """The ``CH:VTERm:BIAS`` command. + + Description: + - Sets or queries the termination bias voltage for the specified channel (if control is + available). + + Usage: + - Using the ``.query()`` method will send the ``CH:VTERm:BIAS?`` query. + - Using the ``.verify(value)`` method will send the ``CH:VTERm:BIAS?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:VTERm:BIAS value`` command. + + SCPI Syntax: + ``` + - CH:VTERm:BIAS + - CH:VTERm:BIAS? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the termination voltage. + """ + + +class ChannelVterm(SCPICmdRead): + """The ``CH:VTERm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH:VTERm?`` query. + - Using the ``.verify(value)`` method will send the ``CH:VTERm?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Properties: + - ``.bias``: The ``CH:VTERm:BIAS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bias = ChannelVtermBias(device, f"{self._cmd_syntax}:BIAS") + + @property + def bias(self) -> ChannelVtermBias: + """Return the ``CH:VTERm:BIAS`` command. + + Description: + - Sets or queries the termination bias voltage for the specified channel (if control is + available). + + Usage: + - Using the ``.query()`` method will send the ``CH:VTERm:BIAS?`` query. + - Using the ``.verify(value)`` method will send the ``CH:VTERm:BIAS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:VTERm:BIAS value`` command. + + SCPI Syntax: + ``` + - CH:VTERm:BIAS + - CH:VTERm:BIAS? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the termination voltage. + """ + return self._bias + + +class ChannelTermination(SCPICmdWrite, SCPICmdRead): + """The ``CH:TERmination`` command. + + Description: + - This command sets or queries the vertical termination for the specified analog channel. + The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:TERmination?`` query. + - Using the ``.verify(value)`` method will send the ``CH:TERmination?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:TERmination value`` command. + + SCPI Syntax: + ``` + - CH:TERmination + - CH:TERmination? + ``` + + Info: + - ``CH`` is the channel number. + - ```` specifies the channel input resistance, which can be specified as 50 Ω or + 1,000,000 Ω. + """ + + +class ChannelSvSpanbelowdc(SCPICmdRead): + """The ``CH:SV:SPANBELowdc`` command. + + Description: + - This command queries whether the start frequency for the specified spectrum trace channel + is below 0 Hz. + + Usage: + - Using the ``.query()`` method will send the ``CH:SV:SPANBELowdc?`` query. + - Using the ``.verify(value)`` method will send the ``CH:SV:SPANBELowdc?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:SV:SPANBELowdc? + ``` + + Info: + - ``CH`` specifies the spectrum trace channel source. + """ + + +class ChannelSvSpanabovebw(SCPICmdRead): + """The ``CH:SV:SPANABovebw`` command. + + Description: + - This command queries whether the stop frequency for the specified spectrum trace channel + is above the scope input bandwidth. + + Usage: + - Using the ``.query()`` method will send the ``CH:SV:SPANABovebw?`` query. + - Using the ``.verify(value)`` method will send the ``CH:SV:SPANABovebw?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:SV:SPANABovebw? + ``` + + Info: + - ``CH`` specifies the spectrum trace channel source. + """ + + +class ChannelSv(SCPICmdRead): + """The ``CH:SV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH:SV?`` query. + - Using the ``.verify(value)`` method will send the ``CH:SV?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` specifies the spectrum trace channel source. + + Properties: + - ``.spanabovebw``: The ``CH:SV:SPANABovebw`` command. + - ``.spanbelowdc``: The ``CH:SV:SPANBELowdc`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._spanabovebw = ChannelSvSpanabovebw(device, f"{self._cmd_syntax}:SPANABovebw") + self._spanbelowdc = ChannelSvSpanbelowdc(device, f"{self._cmd_syntax}:SPANBELowdc") + + @property + def spanabovebw(self) -> ChannelSvSpanabovebw: + """Return the ``CH:SV:SPANABovebw`` command. + + Description: + - This command queries whether the stop frequency for the specified spectrum trace + channel is above the scope input bandwidth. + + Usage: + - Using the ``.query()`` method will send the ``CH:SV:SPANABovebw?`` query. + - Using the ``.verify(value)`` method will send the ``CH:SV:SPANABovebw?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:SV:SPANABovebw? + ``` + + Info: + - ``CH`` specifies the spectrum trace channel source. + """ + return self._spanabovebw + + @property + def spanbelowdc(self) -> ChannelSvSpanbelowdc: + """Return the ``CH:SV:SPANBELowdc`` command. + + Description: + - This command queries whether the start frequency for the specified spectrum trace + channel is below 0 Hz. + + Usage: + - Using the ``.query()`` method will send the ``CH:SV:SPANBELowdc?`` query. + - Using the ``.verify(value)`` method will send the ``CH:SV:SPANBELowdc?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:SV:SPANBELowdc? + ``` + + Info: + - ``CH`` specifies the spectrum trace channel source. + """ + return self._spanbelowdc + + +class ChannelScaleratio(SCPICmdWrite, SCPICmdRead): + """The ``CH:SCALERATio`` command. + + Description: + - This command sets or returns the scale ratio for the specified analog channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:SCALERATio?`` query. + - Using the ``.verify(value)`` method will send the ``CH:SCALERATio?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:SCALERATio value`` command. + + SCPI Syntax: + ``` + - CH:SCALERATio + - CH:SCALERATio? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the scale ratio for the specified analog channel. + """ + + +class ChannelProbeUnits(SCPICmdRead): + """The ``CH:PRObe:UNIts`` command. + + Description: + - This query-only command returns a string describing the units of measure for the probe + attached to the specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:UNIts?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:UNIts?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:UNIts? + ``` + """ + + +class ChannelProbeStatus(SCPICmdRead): + """The ``CH:PRObe:STATus`` command. + + Description: + - Queries the probe unsigned integer error value. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:STATus?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:STATus?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:STATus? + ``` + """ + + +class ChannelProbeSet(SCPICmdWrite, SCPICmdRead): + """The ``CH:PRObe:SET`` command. + + Description: + - This command sets or queries aspects of probe accessory user interfaces, for example probe + attenuation factors or probe audible over range. The available arguments for this command + will vary depending on the accessory you attach to the instrument. The channel is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:SET?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:SET?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:SET value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:SET + - CH:PRObe:SET? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is a quoted string representing a settable aspect of the attached accessory. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class ChannelProbeSelfcalState(SCPICmdReadWithArguments): + """The ``CH:PRObe:SELFCal:State`` command. + + Description: + - This query-only command returns the self-calibration state. The channel is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``CH:PRObe:SELFCal:State? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``CH:PRObe:SELFCal:State? argument`` query and raise an AssertionError if the returned + value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:SELFCal:State? EXECUTE + ``` + """ + + +class ChannelProbeSelfcal(SCPICmdWrite, SCPICmdRead): + """The ``CH:PRObe:SELFCal`` command. + + Description: + - This command initiates self-calibration on the probe. The channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``CH:PRObe:SELFCal value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:SELFCal EXECUTE + ``` + + Properties: + - ``.state``: The ``CH:PRObe:SELFCal:State`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = ChannelProbeSelfcalState(device, f"{self._cmd_syntax}:State") + + @property + def state(self) -> ChannelProbeSelfcalState: + """Return the ``CH:PRObe:SELFCal:State`` command. + + Description: + - This query-only command returns the self-calibration state. The channel is specified + by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``CH:PRObe:SELFCal:State? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``CH:PRObe:SELFCal:State? argument`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:SELFCal:State? EXECUTE + ``` + """ + return self._state + + +class ChannelProbeResistance(SCPICmdRead): + """The ``CH:PRObe:RESistance`` command. + + Description: + - This query-only command returns the resistance of the probe that is attached to the + specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:RESistance?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:RESistance?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:RESistance? + ``` + """ + + +class ChannelProbeInputmodeDoffset(SCPICmdWrite, SCPICmdRead): + """The ``CH:PRObe:INPUTMode:DOFFSet`` command. + + Description: + - Sets or queries the differential offset value of the probe that is attached to the + specified channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode:DOFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode:DOFFSet?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:INPUTMode:DOFFSet value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode:DOFFSet + - CH:PRObe:INPUTMode:DOFFSet? + ``` + + Info: + - ``CH`` is the channel number. + - ```` sets the D (differential) mode offset value, in vertical units (V or A). + """ + + +class ChannelProbeInputmodeCoffset(SCPICmdWrite, SCPICmdRead): + """The ``CH:PRObe:INPUTMode:COFFSet`` command. + + Description: + - Sets or queries the common mode offset value of the probe that is attached to the + specified channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode:COFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode:COFFSet?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:INPUTMode:COFFSet value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode:COFFSet + - CH:PRObe:INPUTMode:COFFSet? + ``` + + Info: + - ``CH`` is the channel number. + - ```` sets the C (common) mode offset value, in vertical units (V or A). + """ + + +class ChannelProbeInputmodeBoffset(SCPICmdWrite, SCPICmdRead): + """The ``CH:PRObe:INPUTMode:BOFFSet`` command. + + Description: + - Sets or queries the B mode offset control of the probe that is attached to the specified + channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode:BOFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode:BOFFSet?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:INPUTMode:BOFFSet value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode:BOFFSet + - CH:PRObe:INPUTMode:BOFFSet? + ``` + + Info: + - ``CH`` is the channel number. + - ```` sets the B mode offset value, in vertical units (V or A). + """ + + +class ChannelProbeInputmodeAoffset(SCPICmdWrite, SCPICmdRead): + """The ``CH:PRObe:INPUTMode:AOFFSet`` command. + + Description: + - Sets or queries the A mode offset control of the probe that is attached to the specified + channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode:AOFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode:AOFFSet?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:INPUTMode:AOFFSet value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode:AOFFSet + - CH:PRObe:INPUTMode:AOFFSet? + ``` + + Info: + - ``CH`` is the channel number. + - ```` sets the A mode offset value, in vertical units (V or A). + """ + + +class ChannelProbeInputmode(SCPICmdWrite, SCPICmdRead): + """The ``CH:PRObe:INPUTMode`` command. + + Description: + - Sets or queries the input mode of the probe that is attached to the specified channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:INPUTMode value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode {A|B|C|D} + - CH:PRObe:INPUTMode? + ``` + + Info: + - ``CH`` is the channel number. + - ``A`` sets the probe to send single-ended A signals to the instrument. + - ``B`` sets the probe to send single-ended B signals to the instrument. + - ``COMMONMODE`` sets the probe to send common-mode signals to the instrument. + - ``DIFFERENTIAL`` sets the probe to send differential signals to the instrument. + + Properties: + - ``.aoffset``: The ``CH:PRObe:INPUTMode:AOFFSet`` command. + - ``.boffset``: The ``CH:PRObe:INPUTMode:BOFFSet`` command. + - ``.coffset``: The ``CH:PRObe:INPUTMode:COFFSet`` command. + - ``.doffset``: The ``CH:PRObe:INPUTMode:DOFFSet`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aoffset = ChannelProbeInputmodeAoffset(device, f"{self._cmd_syntax}:AOFFSet") + self._boffset = ChannelProbeInputmodeBoffset(device, f"{self._cmd_syntax}:BOFFSet") + self._coffset = ChannelProbeInputmodeCoffset(device, f"{self._cmd_syntax}:COFFSet") + self._doffset = ChannelProbeInputmodeDoffset(device, f"{self._cmd_syntax}:DOFFSet") + + @property + def aoffset(self) -> ChannelProbeInputmodeAoffset: + """Return the ``CH:PRObe:INPUTMode:AOFFSet`` command. + + Description: + - Sets or queries the A mode offset control of the probe that is attached to the + specified channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode:AOFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode:AOFFSet?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH:PRObe:INPUTMode:AOFFSet value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode:AOFFSet + - CH:PRObe:INPUTMode:AOFFSet? + ``` + + Info: + - ``CH`` is the channel number. + - ```` sets the A mode offset value, in vertical units (V or A). + """ + return self._aoffset + + @property + def boffset(self) -> ChannelProbeInputmodeBoffset: + """Return the ``CH:PRObe:INPUTMode:BOFFSet`` command. + + Description: + - Sets or queries the B mode offset control of the probe that is attached to the + specified channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode:BOFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode:BOFFSet?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH:PRObe:INPUTMode:BOFFSet value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode:BOFFSet + - CH:PRObe:INPUTMode:BOFFSet? + ``` + + Info: + - ``CH`` is the channel number. + - ```` sets the B mode offset value, in vertical units (V or A). + """ + return self._boffset + + @property + def coffset(self) -> ChannelProbeInputmodeCoffset: + """Return the ``CH:PRObe:INPUTMode:COFFSet`` command. + + Description: + - Sets or queries the common mode offset value of the probe that is attached to the + specified channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode:COFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode:COFFSet?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH:PRObe:INPUTMode:COFFSet value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode:COFFSet + - CH:PRObe:INPUTMode:COFFSet? + ``` + + Info: + - ``CH`` is the channel number. + - ```` sets the C (common) mode offset value, in vertical units (V or A). + """ + return self._coffset + + @property + def doffset(self) -> ChannelProbeInputmodeDoffset: + """Return the ``CH:PRObe:INPUTMode:DOFFSet`` command. + + Description: + - Sets or queries the differential offset value of the probe that is attached to the + specified channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode:DOFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode:DOFFSet?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH:PRObe:INPUTMode:DOFFSet value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode:DOFFSet + - CH:PRObe:INPUTMode:DOFFSet? + ``` + + Info: + - ``CH`` is the channel number. + - ```` sets the D (differential) mode offset value, in vertical units (V or A). + """ + return self._doffset + + +class ChannelProbeIdType(SCPICmdRead): + """The ``CH:PRObe:ID:TYPe`` command. + + Description: + - This query-only command returns the type of probe that is attached to the specified + channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:ID:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:ID:TYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:ID:TYPe? + ``` + """ + + +class ChannelProbeIdSernumber(SCPICmdRead): + """The ``CH:PRObe:ID:SERnumber`` command. + + Description: + - This query-only command returns the serial number of the probe that is attached to the + specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:ID:SERnumber?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:ID:SERnumber?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:ID:SERnumber? + ``` + """ + + +class ChannelProbeId(SCPICmdRead): + """The ``CH:PRObe:ID`` command. + + Description: + - This query-only command returns the type and serial number of the probe that is attached + to the specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:ID?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:ID?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:ID? + ``` + + Properties: + - ``.sernumber``: The ``CH:PRObe:ID:SERnumber`` command. + - ``.type``: The ``CH:PRObe:ID:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._sernumber = ChannelProbeIdSernumber(device, f"{self._cmd_syntax}:SERnumber") + self._type = ChannelProbeIdType(device, f"{self._cmd_syntax}:TYPe") + + @property + def sernumber(self) -> ChannelProbeIdSernumber: + """Return the ``CH:PRObe:ID:SERnumber`` command. + + Description: + - This query-only command returns the serial number of the probe that is attached to the + specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:ID:SERnumber?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:ID:SERnumber?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:ID:SERnumber? + ``` + """ + return self._sernumber + + @property + def type(self) -> ChannelProbeIdType: + """Return the ``CH:PRObe:ID:TYPe`` command. + + Description: + - This query-only command returns the type of probe that is attached to the specified + channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:ID:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:ID:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:ID:TYPe? + ``` + """ + return self._type + + +class ChannelProbeGain(SCPICmdRead): + """The ``CH:PRObe:GAIN`` command. + + Description: + - This query-only command returns the gain factor of the probe that is attached to the + specified channel. The channel is specified by x. The gain of a probe is the output + divided by the input transfer ratio. For example, a common 10x probe has a gain of 0.1. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:GAIN?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:GAIN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:GAIN? + ``` + """ + + +class ChannelProbeForcedrange(SCPICmdWrite, SCPICmdRead): + """The ``CH:PRObe:FORCEDRange`` command. + + Description: + - This command sets the attached TekVPI probe to the specified range, or it queries the + range of the probe attached to the specified channel. If the argument does not match + one of the available ranges, the closest range will be selected. The channel is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:FORCEDRange?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:FORCEDRange?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:FORCEDRange value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:FORCEDRange + - CH:PRObe:FORCEDRange? + ``` + + Info: + - ``CH`` is the channel number. + - ```` specifies the probe dynamic range. + """ + + +class ChannelProbeDegaussState(SCPICmdRead): + """The ``CH:PRObe:DEGAUSS:STATE`` command. + + Description: + - This command queries whether the probe attached to the specified channel requires a + degauss operation. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:DEGAUSS:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:DEGAUSS:STATE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:DEGAUSS:STATE? + ``` + """ + + +class ChannelProbeDegauss(SCPICmdWrite, SCPICmdRead): + """The ``CH:PRObe:DEGAUSS`` command. + + Description: + - This command starts a degauss cycle of the TekVPI probe attached to the specified channel. + The channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``CH:PRObe:DEGAUSS value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:DEGAUSS EXECute + ``` + + Info: + - ``CH`` is the channel number. + - ``EXECute`` starts the degauss cycle. + + Properties: + - ``.state``: The ``CH:PRObe:DEGAUSS:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = ChannelProbeDegaussState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> ChannelProbeDegaussState: + """Return the ``CH:PRObe:DEGAUSS:STATE`` command. + + Description: + - This command queries whether the probe attached to the specified channel requires a + degauss operation. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:DEGAUSS:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:DEGAUSS:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:DEGAUSS:STATE? + ``` + """ + return self._state + + +class ChannelProbeCompensate(SCPICmdWriteNoArguments): + """The ``CH:PRObe:COMPensate`` command. + + Description: + - This command starts the probe compensation procedure for passive probes. The channel is + specified by x. + + Usage: + - Using the ``.write()`` method will send the ``CH:PRObe:COMPensate`` command. + + SCPI Syntax: + ``` + - CH:PRObe:COMPensate + ``` + """ + + +class ChannelProbeAutozero(SCPICmdWrite): + """The ``CH:PRObe:AUTOZero`` command. + + Description: + - This command executes the attached probe's Auto Zero function, for probes that support + this feature. See your probe documentation for more details. The channel is specified by + x. + + Usage: + - Using the ``.write(value)`` method will send the ``CH:PRObe:AUTOZero value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:AUTOZero EXECute + ``` + + Info: + - ``CH`` is the channel number. + - ``EXECute`` sets the probe attached to the specified channel to autozero. + """ + + +# pylint: disable=too-many-instance-attributes +class ChannelProbe(SCPICmdRead): + """The ``CH:PRObe`` command. + + Description: + - This query-only command returns all information concerning the probe that is attached to + the specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe? + ``` + + Properties: + - ``.autozero``: The ``CH:PRObe:AUTOZero`` command. + - ``.compensate``: The ``CH:PRObe:COMPensate`` command. + - ``.degauss``: The ``CH:PRObe:DEGAUSS`` command. + - ``.forcedrange``: The ``CH:PRObe:FORCEDRange`` command. + - ``.gain``: The ``CH:PRObe:GAIN`` command. + - ``.id``: The ``CH:PRObe:ID`` command. + - ``.inputmode``: The ``CH:PRObe:INPUTMode`` command. + - ``.resistance``: The ``CH:PRObe:RESistance`` command. + - ``.selfcal``: The ``CH:PRObe:SELFCal`` command. + - ``.set``: The ``CH:PRObe:SET`` command. + - ``.status``: The ``CH:PRObe:STATus`` command. + - ``.units``: The ``CH:PRObe:UNIts`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autozero = ChannelProbeAutozero(device, f"{self._cmd_syntax}:AUTOZero") + self._compensate = ChannelProbeCompensate(device, f"{self._cmd_syntax}:COMPensate") + self._degauss = ChannelProbeDegauss(device, f"{self._cmd_syntax}:DEGAUSS") + self._forcedrange = ChannelProbeForcedrange(device, f"{self._cmd_syntax}:FORCEDRange") + self._gain = ChannelProbeGain(device, f"{self._cmd_syntax}:GAIN") + self._id = ChannelProbeId(device, f"{self._cmd_syntax}:ID") + self._inputmode = ChannelProbeInputmode(device, f"{self._cmd_syntax}:INPUTMode") + self._resistance = ChannelProbeResistance(device, f"{self._cmd_syntax}:RESistance") + self._selfcal = ChannelProbeSelfcal(device, f"{self._cmd_syntax}:SELFCal") + self._set = ChannelProbeSet(device, f"{self._cmd_syntax}:SET") + self._status = ChannelProbeStatus(device, f"{self._cmd_syntax}:STATus") + self._units = ChannelProbeUnits(device, f"{self._cmd_syntax}:UNIts") + + @property + def autozero(self) -> ChannelProbeAutozero: + """Return the ``CH:PRObe:AUTOZero`` command. + + Description: + - This command executes the attached probe's Auto Zero function, for probes that support + this feature. See your probe documentation for more details. The channel is specified + by x. + + Usage: + - Using the ``.write(value)`` method will send the ``CH:PRObe:AUTOZero value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:AUTOZero EXECute + ``` + + Info: + - ``CH`` is the channel number. + - ``EXECute`` sets the probe attached to the specified channel to autozero. + """ + return self._autozero + + @property + def compensate(self) -> ChannelProbeCompensate: + """Return the ``CH:PRObe:COMPensate`` command. + + Description: + - This command starts the probe compensation procedure for passive probes. The channel + is specified by x. + + Usage: + - Using the ``.write()`` method will send the ``CH:PRObe:COMPensate`` command. + + SCPI Syntax: + ``` + - CH:PRObe:COMPensate + ``` + """ + return self._compensate + + @property + def degauss(self) -> ChannelProbeDegauss: + """Return the ``CH:PRObe:DEGAUSS`` command. + + Description: + - This command starts a degauss cycle of the TekVPI probe attached to the specified + channel. The channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``CH:PRObe:DEGAUSS value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:DEGAUSS EXECute + ``` + + Info: + - ``CH`` is the channel number. + - ``EXECute`` starts the degauss cycle. + + Sub-properties: + - ``.state``: The ``CH:PRObe:DEGAUSS:STATE`` command. + """ + return self._degauss + + @property + def forcedrange(self) -> ChannelProbeForcedrange: + """Return the ``CH:PRObe:FORCEDRange`` command. + + Description: + - This command sets the attached TekVPI probe to the specified range, or it queries the + range of the probe attached to the specified channel. If the argument does not + match one of the available ranges, the closest range will be selected. The channel is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:FORCEDRange?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:FORCEDRange?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:FORCEDRange value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:FORCEDRange + - CH:PRObe:FORCEDRange? + ``` + + Info: + - ``CH`` is the channel number. + - ```` specifies the probe dynamic range. + """ + return self._forcedrange + + @property + def gain(self) -> ChannelProbeGain: + """Return the ``CH:PRObe:GAIN`` command. + + Description: + - This query-only command returns the gain factor of the probe that is attached to the + specified channel. The channel is specified by x. The gain of a probe is the output + divided by the input transfer ratio. For example, a common 10x probe has a gain of + 0.1. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:GAIN?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:GAIN?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:GAIN? + ``` + """ + return self._gain + + @property + def id(self) -> ChannelProbeId: + """Return the ``CH:PRObe:ID`` command. + + Description: + - This query-only command returns the type and serial number of the probe that is + attached to the specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:ID?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:ID?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:ID? + ``` + + Sub-properties: + - ``.sernumber``: The ``CH:PRObe:ID:SERnumber`` command. + - ``.type``: The ``CH:PRObe:ID:TYPe`` command. + """ + return self._id + + @property + def inputmode(self) -> ChannelProbeInputmode: + """Return the ``CH:PRObe:INPUTMode`` command. + + Description: + - Sets or queries the input mode of the probe that is attached to the specified channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:INPUTMode?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:INPUTMode?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:INPUTMode value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:INPUTMode {A|B|C|D} + - CH:PRObe:INPUTMode? + ``` + + Info: + - ``CH`` is the channel number. + - ``A`` sets the probe to send single-ended A signals to the instrument. + - ``B`` sets the probe to send single-ended B signals to the instrument. + - ``COMMONMODE`` sets the probe to send common-mode signals to the instrument. + - ``DIFFERENTIAL`` sets the probe to send differential signals to the instrument. + + Sub-properties: + - ``.aoffset``: The ``CH:PRObe:INPUTMode:AOFFSet`` command. + - ``.boffset``: The ``CH:PRObe:INPUTMode:BOFFSet`` command. + - ``.coffset``: The ``CH:PRObe:INPUTMode:COFFSet`` command. + - ``.doffset``: The ``CH:PRObe:INPUTMode:DOFFSet`` command. + """ + return self._inputmode + + @property + def resistance(self) -> ChannelProbeResistance: + """Return the ``CH:PRObe:RESistance`` command. + + Description: + - This query-only command returns the resistance of the probe that is attached to the + specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:RESistance?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:RESistance?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:RESistance? + ``` + """ + return self._resistance + + @property + def selfcal(self) -> ChannelProbeSelfcal: + """Return the ``CH:PRObe:SELFCal`` command. + + Description: + - This command initiates self-calibration on the probe. The channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``CH:PRObe:SELFCal value`` + command. + + SCPI Syntax: + ``` + - CH:PRObe:SELFCal EXECUTE + ``` + + Sub-properties: + - ``.state``: The ``CH:PRObe:SELFCal:State`` command. + """ + return self._selfcal + + @property + def set_(self) -> ChannelProbeSet: + """Return the ``CH:PRObe:SET`` command. + + Description: + - This command sets or queries aspects of probe accessory user interfaces, for example + probe attenuation factors or probe audible over range. The available arguments for + this command will vary depending on the accessory you attach to the instrument. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:SET?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:SET?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PRObe:SET value`` command. + + SCPI Syntax: + ``` + - CH:PRObe:SET + - CH:PRObe:SET? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is a quoted string representing a settable aspect of the attached + accessory. + """ + return self._set + + @property + def status(self) -> ChannelProbeStatus: + """Return the ``CH:PRObe:STATus`` command. + + Description: + - Queries the probe unsigned integer error value. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:STATus?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:STATus?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:STATus? + ``` + """ + return self._status + + @property + def units(self) -> ChannelProbeUnits: + """Return the ``CH:PRObe:UNIts`` command. + + Description: + - This query-only command returns a string describing the units of measure for the probe + attached to the specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe:UNIts?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe:UNIts?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe:UNIts? + ``` + """ + return self._units + + +class ChannelProbefuncExtunitsState(SCPICmdWrite): + """The ``CH:PROBEFunc:EXTUnits:STATE`` command. + + Description: + - This command sets or queries the custom units enable state for the specified channel. The + channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``CH:PROBEFunc:EXTUnits:STATE value`` + command. + + SCPI Syntax: + ``` + - CH:PROBEFunc:EXTUnits:STATE {ON|OFF|} + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off external units. + - ``ON`` argument turns on external units. + - ```` = 0 turns off external units; any other value turns on external units. + """ + + +class ChannelProbefuncExtunits(SCPICmdWrite, SCPICmdRead): + """The ``CH:PROBEFunc:EXTUnits`` command. + + Description: + - This command sets the unit of measurement for the external attenuator of the specified + channel. The channel is specified by x. The alternate units are used if they are enabled. + Use the ``CHX:PROBEFUNC:EXTUNITS:STATE`` command to enable or disable the alternate units. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBEFunc:EXTUnits?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBEFunc:EXTUnits?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PROBEFunc:EXTUnits value`` + command. + + SCPI Syntax: + ``` + - CH:PROBEFunc:EXTUnits + - CH:PROBEFunc:EXTUnits? + ``` + + Info: + - ``CH`` is the channel number. + - ```` indicates the attenuation unit of measurement for the specified channel. + + Properties: + - ``.state``: The ``CH:PROBEFunc:EXTUnits:STATE`` command. + """ + + _WRAP_ARG_WITH_QUOTES = True + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = ChannelProbefuncExtunitsState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> ChannelProbefuncExtunitsState: + """Return the ``CH:PROBEFunc:EXTUnits:STATE`` command. + + Description: + - This command sets or queries the custom units enable state for the specified channel. + The channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``CH:PROBEFunc:EXTUnits:STATE value`` command. + + SCPI Syntax: + ``` + - CH:PROBEFunc:EXTUnits:STATE {ON|OFF|} + ``` + + Info: + - ``CH`` is the channel number. + - ``OFF`` argument turns off external units. + - ``ON`` argument turns on external units. + - ```` = 0 turns off external units; any other value turns on external units. + """ + return self._state + + +class ChannelProbefuncExtdbatten(SCPICmdWrite, SCPICmdRead): + """The ``CH:PROBEFunc:EXTDBatten`` command. + + Description: + - This command sets or queries the input-output ratio (expressed in decibel units) of + external attenuation or gain between the signal and the instrument input channels. The + channel is specified by x. The query form of this command returns the user-specified + attenuation in decibels. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBEFunc:EXTDBatten?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBEFunc:EXTDBatten?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PROBEFunc:EXTDBatten value`` + command. + + SCPI Syntax: + ``` + - CH:PROBEFunc:EXTDBatten + - CH:PROBEFunc:EXTDBatten? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the attenuation value, which is specified in the range from -200.00 dB to + 200.00 dB. + """ + + +class ChannelProbefuncExtatten(SCPICmdWrite, SCPICmdRead): + """The ``CH:PROBEFunc:EXTAtten`` command. + + Description: + - This command is used to specify the attenuation value as a multiplier to the given scale + factor on the specified channel. The channel is specified by x. The query form of this + command returns the user-specified attenuation. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBEFunc:EXTAtten?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBEFunc:EXTAtten?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PROBEFunc:EXTAtten value`` + command. + + SCPI Syntax: + ``` + - CH:PROBEFunc:EXTAtten + - CH:PROBEFunc:EXTAtten? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the attenuation value, which is specified as a multiplier in the range from + 1.00E-10 to 1.00E+10. + """ + + +class ChannelProbefunc(SCPICmdRead): + """The ``CH:PROBEFunc`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBEFunc?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBEFunc?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Properties: + - ``.extatten``: The ``CH:PROBEFunc:EXTAtten`` command. + - ``.extdbatten``: The ``CH:PROBEFunc:EXTDBatten`` command. + - ``.extunits``: The ``CH:PROBEFunc:EXTUnits`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._extatten = ChannelProbefuncExtatten(device, f"{self._cmd_syntax}:EXTAtten") + self._extdbatten = ChannelProbefuncExtdbatten(device, f"{self._cmd_syntax}:EXTDBatten") + self._extunits = ChannelProbefuncExtunits(device, f"{self._cmd_syntax}:EXTUnits") + + @property + def extatten(self) -> ChannelProbefuncExtatten: + """Return the ``CH:PROBEFunc:EXTAtten`` command. + + Description: + - This command is used to specify the attenuation value as a multiplier to the given + scale factor on the specified channel. The channel is specified by x. The query form + of this command returns the user-specified attenuation. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBEFunc:EXTAtten?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBEFunc:EXTAtten?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PROBEFunc:EXTAtten value`` + command. + + SCPI Syntax: + ``` + - CH:PROBEFunc:EXTAtten + - CH:PROBEFunc:EXTAtten? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the attenuation value, which is specified as a multiplier in the range + from 1.00E-10 to 1.00E+10. + """ + return self._extatten + + @property + def extdbatten(self) -> ChannelProbefuncExtdbatten: + """Return the ``CH:PROBEFunc:EXTDBatten`` command. + + Description: + - This command sets or queries the input-output ratio (expressed in decibel units) of + external attenuation or gain between the signal and the instrument input channels. The + channel is specified by x. The query form of this command returns the user-specified + attenuation in decibels. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBEFunc:EXTDBatten?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBEFunc:EXTDBatten?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PROBEFunc:EXTDBatten value`` + command. + + SCPI Syntax: + ``` + - CH:PROBEFunc:EXTDBatten + - CH:PROBEFunc:EXTDBatten? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the attenuation value, which is specified in the range from -200.00 dB to + 200.00 dB. + """ + return self._extdbatten + + @property + def extunits(self) -> ChannelProbefuncExtunits: + """Return the ``CH:PROBEFunc:EXTUnits`` command. + + Description: + - This command sets the unit of measurement for the external attenuator of the specified + channel. The channel is specified by x. The alternate units are used if they are + enabled. Use the ``CHX:PROBEFUNC:EXTUNITS:STATE`` command to enable or disable the + alternate units. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBEFunc:EXTUnits?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBEFunc:EXTUnits?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PROBEFunc:EXTUnits value`` + command. + + SCPI Syntax: + ``` + - CH:PROBEFunc:EXTUnits + - CH:PROBEFunc:EXTUnits? + ``` + + Info: + - ``CH`` is the channel number. + - ```` indicates the attenuation unit of measurement for the specified channel. + + Sub-properties: + - ``.state``: The ``CH:PROBEFunc:EXTUnits:STATE`` command. + """ + return self._extunits + + +class ChannelProbecal(SCPICmdRead): + """The ``CH:PROBECal`` command. + + Description: + - This query-only command returns the probe calibration state for the specified channel. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBECal?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBECal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PROBECal? + ``` + """ + + +class ChannelProbecontrol(SCPICmdWrite, SCPICmdRead): + """The ``CH:PROBECOntrol`` command. + + Description: + - This command sets or queries multirange probe range-control policy preference of the probe + that is attached to CH. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBECOntrol?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBECOntrol?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PROBECOntrol value`` command. + + SCPI Syntax: + ``` + - CH:PROBECOntrol {AUTO|MANual} + - CH:PROBECOntrol? + ``` + + Info: + - ``CH`` is the channel number. + - ``AUTO`` sets the values. The probe range is automatically calculated. + - ``MANual`` allows you to select various valid values for the probe connected to a + particular channel. + """ + + +class ChannelInvert(SCPICmdWrite, SCPICmdRead): + """The ``CH:INVert`` command. + + Description: + - This command sets or queries invert state of the specified channel. The channel is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:INVert?`` query. + - Using the ``.verify(value)`` method will send the ``CH:INVert?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:INVert value`` command. + + SCPI Syntax: + ``` + - CH:INVert {ON|OFF|} + - CH:INVert? + ``` + + Info: + - ``OFF`` turns off the channel invert. + - ``ON`` turns on the channel invert. + - ```` 0 turns off the channel invert; any other value turns on the channel invert. + """ + + +class ChannelDitherrange(SCPICmdWrite): + """The ``CH:DITHERrange`` command. + + Description: + - This command sets or returns the amount of dithering for the specified analog channel. The + channel is specified by x. The amount of dithering is a percentage of full scale (10 times + volts/division). Note: Setting this value to 0.0 for any unused channels may slightly + improve performance. + + Usage: + - Using the ``.write(value)`` method will send the ``CH:DITHERrange value`` command. + + SCPI Syntax: + ``` + - CH:DITHERrange + ``` + + Info: + - ```` is the amount of dithering as a percentage of full scale. Must be between 0.0 + and 100.0 and 0.0 disables dithering. + """ + + +class ChannelBandwidthFilterOptimization(SCPICmdWrite, SCPICmdRead): + """The ``CH:BANdwidth:FILTer:OPTIMIZation`` command. + + Description: + - This command sets or queries the channel filter shape. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:BANdwidth:FILTer:OPTIMIZation?`` + query. + - Using the ``.verify(value)`` method will send the ``CH:BANdwidth:FILTer:OPTIMIZation?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH:BANdwidth:FILTer:OPTIMIZation value`` command. + + SCPI Syntax: + ``` + - CH:BANdwidth:FILTer:OPTIMIZation {STEPRESPONSE|FLATNESS} + - CH:BANdwidth:FILTer:OPTIMIZation? + ``` + + Info: + - ``CH`` is the channel number. + - ``STEPRESPONSE`` sets a Bessel-Thompson filter that minimizes overshoot with a gradual + rollof. + - ``FLATNESS`` sets selects a brick-wall filter optimized for flatness within band with a + sharp rolloff. Flatness filtering is not compatible with Peak Detect and Envelope + acquisition modes. + """ + + +class ChannelBandwidthFilter(SCPICmdRead): + """The ``CH:BANdwidth:FILTer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH:BANdwidth:FILTer?`` query. + - Using the ``.verify(value)`` method will send the ``CH:BANdwidth:FILTer?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Properties: + - ``.optimization``: The ``CH:BANdwidth:FILTer:OPTIMIZation`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._optimization = ChannelBandwidthFilterOptimization( + device, f"{self._cmd_syntax}:OPTIMIZation" + ) + + @property + def optimization(self) -> ChannelBandwidthFilterOptimization: + """Return the ``CH:BANdwidth:FILTer:OPTIMIZation`` command. + + Description: + - This command sets or queries the channel filter shape. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:BANdwidth:FILTer:OPTIMIZation?`` + query. + - Using the ``.verify(value)`` method will send the + ``CH:BANdwidth:FILTer:OPTIMIZation?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``CH:BANdwidth:FILTer:OPTIMIZation value`` command. + + SCPI Syntax: + ``` + - CH:BANdwidth:FILTer:OPTIMIZation {STEPRESPONSE|FLATNESS} + - CH:BANdwidth:FILTer:OPTIMIZation? + ``` + + Info: + - ``CH`` is the channel number. + - ``STEPRESPONSE`` sets a Bessel-Thompson filter that minimizes overshoot with a gradual + rollof. + - ``FLATNESS`` sets selects a brick-wall filter optimized for flatness within band with + a sharp rolloff. Flatness filtering is not compatible with Peak Detect and Envelope + acquisition modes. + """ + return self._optimization + + +class ChannelBandwidth(SCPICmdWrite, SCPICmdRead): + """The ``CH:BANdwidth`` command. + + Description: + - This command sets or queries the selectable low-pass bandwidth limit filter of the + specified channel. The channel is specified by x. The query form of this command always + returns the approximate realized bandwidth of the channel. Available arguments depend upon + the instrument and the attached accessories. + + Usage: + - Using the ``.query()`` method will send the ``CH:BANdwidth?`` query. + - Using the ``.verify(value)`` method will send the ``CH:BANdwidth?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:BANdwidth value`` command. + + SCPI Syntax: + ``` + - CH:BANdwidth {|FULl} + - CH:BANdwidth? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the desired bandwidth. The instrument rounds this value to an available + bandwidth using geometric rounding and then uses this value to set the upper bandwidth. + - ``FULl`` disables any optional bandwidth limiting. The specified channel operates at its + maximum bandwidth. + + Properties: + - ``.filter``: The ``CH:BANdwidth:FILTer`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._filter = ChannelBandwidthFilter(device, f"{self._cmd_syntax}:FILTer") + + @property + def filter(self) -> ChannelBandwidthFilter: + """Return the ``CH:BANdwidth:FILTer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH:BANdwidth:FILTer?`` query. + - Using the ``.verify(value)`` method will send the ``CH:BANdwidth:FILTer?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Sub-properties: + - ``.optimization``: The ``CH:BANdwidth:FILTer:OPTIMIZation`` command. + """ + return self._filter + + +# pylint: disable=too-many-instance-attributes +class Channel(ValidatedChannel, SCPICmdRead): + """The ``CH`` command. + + Description: + - This query-only command returns the vertical parameters for the specified channel. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH?`` query. + - Using the ``.verify(value)`` method will send the ``CH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH? + ``` + + Properties: + - ``.bandwidth``: The ``CH:BANdwidth`` command. + - ``.ditherrange``: The ``CH:DITHERrange`` command. + - ``.invert``: The ``CH:INVert`` command. + - ``.probecontrol``: The ``CH:PROBECOntrol`` command. + - ``.probecal``: The ``CH:PROBECal`` command. + - ``.probefunc``: The ``CH:PROBEFunc`` command tree. + - ``.probe``: The ``CH:PRObe`` command. + - ``.scaleratio``: The ``CH:SCALERATio`` command. + - ``.sv``: The ``CH:SV`` command tree. + - ``.termination``: The ``CH:TERmination`` command. + - ``.vterm``: The ``CH:VTERm`` command tree. + - ``.d``: The ``CH_D`` command tree. + - ``.dall``: The ``CH_DALL`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "CH") -> None: + super().__init__(device, cmd_syntax) + self._bandwidth = ChannelBandwidth(device, f"{self._cmd_syntax}:BANdwidth") + self._ditherrange = ChannelDitherrange(device, f"{self._cmd_syntax}:DITHERrange") + self._invert = ChannelInvert(device, f"{self._cmd_syntax}:INVert") + self._probecontrol = ChannelProbecontrol(device, f"{self._cmd_syntax}:PROBECOntrol") + self._probecal = ChannelProbecal(device, f"{self._cmd_syntax}:PROBECal") + self._probefunc = ChannelProbefunc(device, f"{self._cmd_syntax}:PROBEFunc") + self._probe = ChannelProbe(device, f"{self._cmd_syntax}:PRObe") + self._scaleratio = ChannelScaleratio(device, f"{self._cmd_syntax}:SCALERATio") + self._sv = ChannelSv(device, f"{self._cmd_syntax}:SV") + self._termination = ChannelTermination(device, f"{self._cmd_syntax}:TERmination") + self._vterm = ChannelVterm(device, f"{self._cmd_syntax}:VTERm") + self._d: Dict[int, ChannelDigitalBit] = DefaultDictPassKeyToFactory( + lambda x: ChannelDigitalBit(device, f"{self._cmd_syntax}_D{x}") + ) + self._dall = ChannelDall(device, f"{self._cmd_syntax}_DALL") + + @property + def bandwidth(self) -> ChannelBandwidth: + """Return the ``CH:BANdwidth`` command. + + Description: + - This command sets or queries the selectable low-pass bandwidth limit filter of the + specified channel. The channel is specified by x. The query form of this command + always returns the approximate realized bandwidth of the channel. Available arguments + depend upon the instrument and the attached accessories. + + Usage: + - Using the ``.query()`` method will send the ``CH:BANdwidth?`` query. + - Using the ``.verify(value)`` method will send the ``CH:BANdwidth?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:BANdwidth value`` command. + + SCPI Syntax: + ``` + - CH:BANdwidth {|FULl} + - CH:BANdwidth? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the desired bandwidth. The instrument rounds this value to an available + bandwidth using geometric rounding and then uses this value to set the upper + bandwidth. + - ``FULl`` disables any optional bandwidth limiting. The specified channel operates at + its maximum bandwidth. + + Sub-properties: + - ``.filter``: The ``CH:BANdwidth:FILTer`` command tree. + """ + return self._bandwidth + + @property + def ditherrange(self) -> ChannelDitherrange: + """Return the ``CH:DITHERrange`` command. + + Description: + - This command sets or returns the amount of dithering for the specified analog channel. + The channel is specified by x. The amount of dithering is a percentage of full scale + (10 times volts/division). Note: Setting this value to 0.0 for any unused channels may + slightly improve performance. + + Usage: + - Using the ``.write(value)`` method will send the ``CH:DITHERrange value`` command. + + SCPI Syntax: + ``` + - CH:DITHERrange + ``` + + Info: + - ```` is the amount of dithering as a percentage of full scale. Must be between + 0.0 and 100.0 and 0.0 disables dithering. + """ + return self._ditherrange + + @property + def invert(self) -> ChannelInvert: + """Return the ``CH:INVert`` command. + + Description: + - This command sets or queries invert state of the specified channel. The channel is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:INVert?`` query. + - Using the ``.verify(value)`` method will send the ``CH:INVert?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:INVert value`` command. + + SCPI Syntax: + ``` + - CH:INVert {ON|OFF|} + - CH:INVert? + ``` + + Info: + - ``OFF`` turns off the channel invert. + - ``ON`` turns on the channel invert. + - ```` 0 turns off the channel invert; any other value turns on the channel invert. + """ + return self._invert + + @property + def probecontrol(self) -> ChannelProbecontrol: + """Return the ``CH:PROBECOntrol`` command. + + Description: + - This command sets or queries multirange probe range-control policy preference of the + probe that is attached to CH. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBECOntrol?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBECOntrol?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:PROBECOntrol value`` command. + + SCPI Syntax: + ``` + - CH:PROBECOntrol {AUTO|MANual} + - CH:PROBECOntrol? + ``` + + Info: + - ``CH`` is the channel number. + - ``AUTO`` sets the values. The probe range is automatically calculated. + - ``MANual`` allows you to select various valid values for the probe connected to a + particular channel. + """ + return self._probecontrol + + @property + def probecal(self) -> ChannelProbecal: + """Return the ``CH:PROBECal`` command. + + Description: + - This query-only command returns the probe calibration state for the specified channel. + The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBECal?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBECal?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PROBECal? + ``` + """ + return self._probecal + + @property + def probefunc(self) -> ChannelProbefunc: + """Return the ``CH:PROBEFunc`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH:PROBEFunc?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PROBEFunc?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Sub-properties: + - ``.extatten``: The ``CH:PROBEFunc:EXTAtten`` command. + - ``.extdbatten``: The ``CH:PROBEFunc:EXTDBatten`` command. + - ``.extunits``: The ``CH:PROBEFunc:EXTUnits`` command. + """ + return self._probefunc + + @property + def probe(self) -> ChannelProbe: + """Return the ``CH:PRObe`` command. + + Description: + - This query-only command returns all information concerning the probe that is attached + to the specified channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``CH:PRObe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH:PRObe? + ``` + + Sub-properties: + - ``.autozero``: The ``CH:PRObe:AUTOZero`` command. + - ``.compensate``: The ``CH:PRObe:COMPensate`` command. + - ``.degauss``: The ``CH:PRObe:DEGAUSS`` command. + - ``.forcedrange``: The ``CH:PRObe:FORCEDRange`` command. + - ``.gain``: The ``CH:PRObe:GAIN`` command. + - ``.id``: The ``CH:PRObe:ID`` command. + - ``.inputmode``: The ``CH:PRObe:INPUTMode`` command. + - ``.resistance``: The ``CH:PRObe:RESistance`` command. + - ``.selfcal``: The ``CH:PRObe:SELFCal`` command. + - ``.set``: The ``CH:PRObe:SET`` command. + - ``.status``: The ``CH:PRObe:STATus`` command. + - ``.units``: The ``CH:PRObe:UNIts`` command. + """ + return self._probe + + @property + def scaleratio(self) -> ChannelScaleratio: + """Return the ``CH:SCALERATio`` command. + + Description: + - This command sets or returns the scale ratio for the specified analog channel. + + Usage: + - Using the ``.query()`` method will send the ``CH:SCALERATio?`` query. + - Using the ``.verify(value)`` method will send the ``CH:SCALERATio?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:SCALERATio value`` command. + + SCPI Syntax: + ``` + - CH:SCALERATio + - CH:SCALERATio? + ``` + + Info: + - ``CH`` is the channel number. + - ```` is the scale ratio for the specified analog channel. + """ + return self._scaleratio + + @property + def sv(self) -> ChannelSv: + """Return the ``CH:SV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH:SV?`` query. + - Using the ``.verify(value)`` method will send the ``CH:SV?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` specifies the spectrum trace channel source. + + Sub-properties: + - ``.spanabovebw``: The ``CH:SV:SPANABovebw`` command. + - ``.spanbelowdc``: The ``CH:SV:SPANBELowdc`` command. + """ + return self._sv + + @property + def termination(self) -> ChannelTermination: + """Return the ``CH:TERmination`` command. + + Description: + - This command sets or queries the vertical termination for the specified analog + channel. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH:TERmination?`` query. + - Using the ``.verify(value)`` method will send the ``CH:TERmination?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``CH:TERmination value`` command. + + SCPI Syntax: + ``` + - CH:TERmination + - CH:TERmination? + ``` + + Info: + - ``CH`` is the channel number. + - ```` specifies the channel input resistance, which can be specified as 50 Ω or + 1,000,000 Ω. + """ + return self._termination + + @property + def vterm(self) -> ChannelVterm: + """Return the ``CH:VTERm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH:VTERm?`` query. + - Using the ``.verify(value)`` method will send the ``CH:VTERm?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Sub-properties: + - ``.bias``: The ``CH:VTERm:BIAS`` command. + """ + return self._vterm + + @property + def d(self) -> Dict[int, ChannelDigitalBit]: + """Return the ``CH_D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_D?`` query. + - Using the ``.verify(value)`` method will send the ``CH_D?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Sub-properties: + - ``.label``: The ``CH_D:LABel`` command tree. + """ + return self._d + + @property + def dall(self) -> ChannelDall: + """Return the ``CH_DALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CH_DALL?`` query. + - Using the ``.verify(value)`` method will send the ``CH_DALL?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number. + + Sub-properties: + - ``.label``: The ``CH_DALL:LABel`` command tree. + """ + return self._dall diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/display.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/display.py new file mode 100644 index 00000000..9f657daf --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/display.py @@ -0,0 +1,16637 @@ +"""The display commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - DISplay:CH:INVERTColor COLOR + - DISplay:CH:INVERTColor? + - DISplay:CH:NORMALColor COLOR + - DISplay:CH:NORMALColor? + - DISplay:COLors {NORMal|INVERTed} + - DISplay:COLors? + - DISplay:GLObal:B:STATE {ON|OFF|} + - DISplay:GLObal:B:STATE? + - DISplay:GLObal:CH:STATE {ON|OFF|} + - DISplay:GLObal:CH:STATE? + - DISplay:GLObal:MATH:STATE {ON|OFF|} + - DISplay:GLObal:MATH:STATE? + - DISplay:GLObal:PLOT:STATE {ON|OFF|} + - DISplay:GLObal:PLOT:STATE? + - DISplay:GLObal:REF:STATE {ON|OFF|} + - DISplay:GLObal:REF:STATE? + - DISplay:INTENSITy:BACKLight {LOW|MEDium|HIGH} + - DISplay:INTENSITy:BACKLight:AUTODim:ENAble {ON|OFF} + - DISplay:INTENSITy:BACKLight:AUTODim:ENAble? + - DISplay:INTENSITy:BACKLight:AUTODim:TIMe + - DISplay:INTENSITy:BACKLight:AUTODim:TIMe? + - DISplay:INTENSITy:BACKLight? + - DISplay:INTENSITy? + - DISplay:MATHFFTView1:AUTOScale {ON|OFF|} + - DISplay:MATHFFTView1:AUTOScale? + - DISplay:MATHFFTView1:CURSor:ASOUrce? + - DISplay:MATHFFTView1:CURSor:BSOUrce? + - DISplay:MATHFFTView1:CURSor:DDT? + - DISplay:MATHFFTView1:CURSor:FUNCtion {WAVEform|VBArs|HBArs|SCREEN} + - DISplay:MATHFFTView1:CURSor:FUNCtion? + - DISplay:MATHFFTView1:CURSor:HBArs:APOSition + - DISplay:MATHFFTView1:CURSor:HBArs:APOSition? + - DISplay:MATHFFTView1:CURSor:HBArs:AUNIts? + - DISplay:MATHFFTView1:CURSor:HBArs:BPOSition + - DISplay:MATHFFTView1:CURSor:HBArs:BPOSition? + - DISplay:MATHFFTView1:CURSor:HBArs:BUNIts? + - DISplay:MATHFFTView1:CURSor:HBArs:DELTa? + - DISplay:MATHFFTView1:CURSor:MODe {INDEPENDENT|TRACK} + - DISplay:MATHFFTView1:CURSor:MODe? + - DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE? + - DISplay:MATHFFTView1:CURSor:ROLOCATION {GRATICULE|BADGE} + - DISplay:MATHFFTView1:CURSor:ROLOCATION? + - DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition? + - DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition? + - DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition? + - DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition? + - DISplay:MATHFFTView1:CURSor:STATE {ON|OFF|} + - DISplay:MATHFFTView1:CURSor:STATE? + - DISplay:MATHFFTView1:CURSor:VBArs:APOSition + - DISplay:MATHFFTView1:CURSor:VBArs:APOSition? + - DISplay:MATHFFTView1:CURSor:VBArs:AUNIts? + - DISplay:MATHFFTView1:CURSor:VBArs:BPOSition + - DISplay:MATHFFTView1:CURSor:VBArs:BPOSition? + - DISplay:MATHFFTView1:CURSor:VBArs:BUNIts? + - DISplay:MATHFFTView1:CURSor:VBArs:DELTa? + - DISplay:MATHFFTView1:CURSor:WAVEform:APOSition + - DISplay:MATHFFTView1:CURSor:WAVEform:APOSition? + - DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition + - DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition? + - DISplay:MATHFFTView1:GRIDlines {HORizontal|VERTical|BOTH} + - DISplay:MATHFFTView1:GRIDlines? + - DISplay:MATHFFTView1:MATH:MATH:STATE {ON|OFF|} + - DISplay:MATHFFTView1:MATH:MATH:STATE? + - DISplay:MATHFFTView1:XAXIS:SCALE {LINEAr|LOG} + - DISplay:MATHFFTView1:XAXIS:SCALE? + - DISplay:MATHFFTView1:YAXIS:SCALE {LINEAr|DBM} + - DISplay:MATHFFTView1:YAXIS:SCALE? + - DISplay:MATHFFTView1:ZOOM:XAXIS:FROM + - DISplay:MATHFFTView1:ZOOM:XAXIS:FROM? + - DISplay:MATHFFTView1:ZOOM:XAXIS:TO + - DISplay:MATHFFTView1:ZOOM:YAXIS:FROM + - DISplay:MATHFFTView1:ZOOM:YAXIS:FROM? + - DISplay:MATHFFTView1:ZOOM:YAXIS:TO + - DISplay:MATHFFTView1:ZOOM:YAXIS:TO? + - DISplay:Math:INVERTColor COLOR + - DISplay:Math:INVERTColor? + - DISplay:Math:NORMALColor COLOR + - DISplay:Math:NORMALColor? + - DISplay:PERSistence {OFF|AUTO|INFPersist|INFInite|VARpersist|CLEAR} + - DISplay:PERSistence:RESET + - DISplay:PERSistence? + - DISplay:PLOTVIEW:XAXIS:SCALE {LINEAR|LOG} + - DISplay:PLOTVIEW:XAXIS:SCALE? + - DISplay:PLOTVIEW:YAXIS:SCALE {LINEAR|LOG} + - DISplay:PLOTVIEW:YAXIS:SCALE? + - DISplay:PLOTView1:AUTOScale {ON|OFF|} + - DISplay:PLOTView1:AUTOScale? + - DISplay:PLOTView1:CURSor:ASOUrce? + - DISplay:PLOTView1:CURSor:BSOUrce? + - DISplay:PLOTView1:CURSor:DDT? + - DISplay:PLOTView1:CURSor:FUNCtion {WAVEFORM|VBArs|HBArs|SCREEN} + - DISplay:PLOTView1:CURSor:FUNCtion? + - DISplay:PLOTView1:CURSor:HBArs:APOSition + - DISplay:PLOTView1:CURSor:HBArs:APOSition? + - DISplay:PLOTView1:CURSor:HBArs:AUNIts? + - DISplay:PLOTView1:CURSor:HBArs:BPOSition + - DISplay:PLOTView1:CURSor:HBArs:BPOSition? + - DISplay:PLOTView1:CURSor:HBArs:BUNIts? + - DISplay:PLOTView1:CURSor:HBArs:DELTa? + - DISplay:PLOTView1:CURSor:MODe {INDEPENDENT|TRACK} + - DISplay:PLOTView1:CURSor:MODe? + - DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE? + - DISplay:PLOTView1:CURSor:ROLOCATION {GRATICULE|BADGE} + - DISplay:PLOTView1:CURSor:ROLOCATION? + - DISplay:PLOTView1:CURSor:SCREEN:AXPOSition + - DISplay:PLOTView1:CURSor:SCREEN:AXPOSition? + - DISplay:PLOTView1:CURSor:SCREEN:AYPOSition + - DISplay:PLOTView1:CURSor:SCREEN:AYPOSition? + - DISplay:PLOTView1:CURSor:SCREEN:BXPOSition + - DISplay:PLOTView1:CURSor:SCREEN:BXPOSition? + - DISplay:PLOTView1:CURSor:SCREEN:BYPOSition + - DISplay:PLOTView1:CURSor:SCREEN:BYPOSition? + - DISplay:PLOTView1:CURSor:SPLITMODE {SAME|SPLIT} + - DISplay:PLOTView1:CURSor:SPLITMODE? + - DISplay:PLOTView1:CURSor:STATE {ON|OFF|} + - DISplay:PLOTView1:CURSor:STATE? + - DISplay:PLOTView1:CURSor:VBArs:APOSition + - DISplay:PLOTView1:CURSor:VBArs:APOSition? + - DISplay:PLOTView1:CURSor:VBArs:BPOSition + - DISplay:PLOTView1:CURSor:VBArs:BPOSition? + - DISplay:PLOTView1:CURSor:VBArs:DELTa? + - DISplay:PLOTView1:CURSor:VBArs:UNIts? + - DISplay:PLOTView1:CURSor:WAVEform:APOSition + - DISplay:PLOTView1:CURSor:WAVEform:APOSition? + - DISplay:PLOTView1:CURSor:WAVEform:BPOSition + - DISplay:PLOTView1:CURSor:WAVEform:BPOSition? + - DISplay:PLOTView1:GRIDlines {HORizontal|VERTical|BOTH} + - DISplay:PLOTView1:GRIDlines? + - DISplay:PLOTView1:ZOOM:XAXIS:FROM + - DISplay:PLOTView1:ZOOM:XAXIS:FROM? + - DISplay:PLOTView1:ZOOM:XAXIS:TO + - DISplay:PLOTView1:ZOOM:XAXIS:TO? + - DISplay:PLOTView1:ZOOM:YAXIS:FROM + - DISplay:PLOTView1:ZOOM:YAXIS:FROM? + - DISplay:PLOTView1:ZOOM:YAXIS:TO + - DISplay:PLOTView1:ZOOM:YAXIS:TO? + - DISplay:REF:INVERTColor COLOR + - DISplay:REF:INVERTColor? + - DISplay:REF:NORMALColor COLOR + - DISplay:REF:NORMALColor? + - DISplay:REFFFTView:AUTOScale {OFF|ON|0|1} + - DISplay:REFFFTView:AUTOScale? + - DISplay:REFFFTView:CURSor:ASOUrce? + - DISplay:REFFFTView:CURSor:BSOUrce? + - DISplay:REFFFTView:CURSor:DDT? + - DISplay:REFFFTView:CURSor:FUNCtion {WAVEform|VBArs|HBArs|SCREEN} + - DISplay:REFFFTView:CURSor:FUNCtion? + - DISplay:REFFFTView:CURSor:HBArs:APOSition + - DISplay:REFFFTView:CURSor:HBArs:APOSition? + - DISplay:REFFFTView:CURSor:HBArs:AUNIts? + - DISplay:REFFFTView:CURSor:HBArs:BPOSition + - DISplay:REFFFTView:CURSor:HBArs:BPOSition? + - DISplay:REFFFTView:CURSor:HBArs:BUNIts? + - DISplay:REFFFTView:CURSor:HBArs:DELTa? + - DISplay:REFFFTView:CURSor:MODe {INDEPENDENT|TRACK} + - DISplay:REFFFTView:CURSor:MODe? + - DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE? + - DISplay:REFFFTView:CURSor:ROLOCATION {GRATICULE|BADGE} + - DISplay:REFFFTView:CURSor:ROLOCATION? + - DISplay:REFFFTView:CURSor:SCREEN:AXPOSition + - DISplay:REFFFTView:CURSor:SCREEN:AXPOSition? + - DISplay:REFFFTView:CURSor:SCREEN:AYPOSition + - DISplay:REFFFTView:CURSor:SCREEN:AYPOSition? + - DISplay:REFFFTView:CURSor:SCREEN:BXPOSition + - DISplay:REFFFTView:CURSor:SCREEN:BXPOSition? + - DISplay:REFFFTView:CURSor:SCREEN:BYPOSition + - DISplay:REFFFTView:CURSor:SCREEN:BYPOSition? + - DISplay:REFFFTView:CURSor:SPLITMODE {SAME|SPLIT} + - DISplay:REFFFTView:CURSor:SPLITMODE? + - DISplay:REFFFTView:CURSor:STATE {OFF|ON|0|1} + - DISplay:REFFFTView:CURSor:STATE? + - DISplay:REFFFTView:CURSor:VBArs:APOSition + - DISplay:REFFFTView:CURSor:VBArs:APOSition? + - DISplay:REFFFTView:CURSor:VBArs:BPOSition + - DISplay:REFFFTView:CURSor:VBArs:BPOSition? + - DISplay:REFFFTView:CURSor:VBArs:DELTa? + - DISplay:REFFFTView:CURSor:VBArs:UNIts? + - DISplay:REFFFTView:CURSor:WAVEform:AHPOSition? + - DISplay:REFFFTView:CURSor:WAVEform:APOSition + - DISplay:REFFFTView:CURSor:WAVEform:APOSition? + - DISplay:REFFFTView:CURSor:WAVEform:AVPOSition? + - DISplay:REFFFTView:CURSor:WAVEform:BHPOSition? + - DISplay:REFFFTView:CURSor:WAVEform:BPOSition + - DISplay:REFFFTView:CURSor:WAVEform:BPOSition? + - DISplay:REFFFTView:CURSor:WAVEform:BVPOSition? + - DISplay:REFFFTView:GRIDlines {HORizontal|VERTical|BOTH} + - DISplay:REFFFTView:GRIDlines? + - DISplay:REFFFTView:REF:REF:STATE boolean + - DISplay:REFFFTView:REF:REF:STATE? + - DISplay:REFFFTView:XAXIS:SCALE {LINEAr|LOG} + - DISplay:REFFFTView:XAXIS:SCALE? + - DISplay:REFFFTView:ZOOM:XAXIS:FROM + - DISplay:REFFFTView:ZOOM:XAXIS:FROM? + - DISplay:REFFFTView:ZOOM:XAXIS:TO + - DISplay:REFFFTView:ZOOM:XAXIS:TO? + - DISplay:REFFFTView:ZOOM:YAXIS:FROM + - DISplay:REFFFTView:ZOOM:YAXIS:FROM? + - DISplay:REFFFTView:ZOOM:YAXIS:TO + - DISplay:REFFFTView:ZOOM:YAXIS:TO? + - DISplay:SELect:BUS BUS + - DISplay:SELect:BUS? + - DISplay:SELect:MATH MATH + - DISplay:SELect:MATH? + - DISplay:SELect:REFerence {NONE|REF} + - DISplay:SELect:REFerence? + - DISplay:SELect:SOUrce {NONE|CH|BUS|MATH|PLOT|REF} + - DISplay:SELect:SOUrce? + - DISplay:SELect:SPECView1:SOUrce {CH} + - DISplay:SELect:SPECView1:SOUrce? + - DISplay:SELect:VIEW {WAVEVIEW1|MATHFFT|PLOTVIEW|REFFFT} + - DISplay:SELect:VIEW? + - DISplay:SELect:WAVEView1:SOUrce {S_Ch|CH|MATH|BUS|REF|PLOT} + - DISplay:SELect:WAVEView1:SOUrce? + - DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity? + - DISplay:SPECView1:CURSor:CURSOR:ASOUrce {AUTO|CH} + - DISplay:SPECView1:CURSor:CURSOR:ASOUrce? + - DISplay:SPECView1:CURSor:CURSOR:BNOISE? + - DISplay:SPECView1:CURSor:CURSOR:BSOUrce {AUTO|CH} + - DISplay:SPECView1:CURSor:CURSOR:BSOUrce? + - DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition? + - DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts? + - DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition? + - DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts? + - DISplay:SPECView1:CURSor:CURSOR:READout {ABSOLUTE|DELTA} + - DISplay:SPECView1:CURSor:CURSOR:READout? + - DISplay:SPECView1:CURSor:CURSOR:SPLITMODE {SAME|SPLIT} + - DISplay:SPECView1:CURSor:CURSOR:SPLITMODE? + - DISplay:SPECView1:CURSor:CURSOR:STATE {ON|OFF} + - DISplay:SPECView1:CURSor:CURSOR:STATE? + - DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition + - DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition? + - DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition + - DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition? + - DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts? + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition? + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition? + - DISplay:SPECView1:GRAticule {GRId|TIMe|FULl|NONe} + - DISplay:SPECView1:GRAticule? + - DISplay:SPECView1:HORZ {LOG|LINEAr} + - DISplay:SPECView1:HORZ? + - DISplay:SPECView1:INTENSITy:GRATicule + - DISplay:SPECView1:INTENSITy:GRATicule? + - DISplay:SPECView1:INTENSITy:WAVEform + - DISplay:SPECView1:INTENSITy:WAVEform? + - DISplay:SPECView1:VIEWStyle {OVErlay|STAcked} + - DISplay:SPECView1:VIEWStyle? + - DISplay:VARpersist + - DISplay:VARpersist? + - DISplay:WAVEView1:BUS:B:STATE {OFF|ON|0|1} + - DISplay:WAVEView1:BUS:B:STATE? + - DISplay:WAVEView1:BUS:B:VERTical:POSition + - DISplay:WAVEView1:BUS:B:VERTical:POSition? + - DISplay:WAVEView1:CH:STATE {ON|OFF|} + - DISplay:WAVEView1:CH:STATE? + - DISplay:WAVEView1:CH:VERTical:POSition + - DISplay:WAVEView1:CH:VERTical:POSition? + - DISplay:WAVEView1:CH:VERTical:SCAle + - DISplay:WAVEView1:CH:VERTical:SCAle? + - DISplay:WAVEView1:CH_D:STATE {ON|OFF|} + - DISplay:WAVEView1:CH_D:STATE? + - DISplay:WAVEView1:CH_DALL:STATE {ON|OFF|} + - DISplay:WAVEView1:CH_DALL:STATE? + - DISplay:WAVEView1:CH_DALL:VERTical:POSition + - DISplay:WAVEView1:CH_DALL:VERTical:POSition? + - DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce {AUTO|CH|BUS|MATH|REF|PLOT} + - DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce? + - DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce {CH|BUS|MATH|REF|PLOT} + - DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce? + - DISplay:WAVEView1:CURSor:CURSOR1:DDT? + - DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion {SCREEN|WAVEFORM|VBArs|HBArs} + - DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion? + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition? + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts? + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition? + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts? + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa? + - DISplay:WAVEView1:CURSor:CURSOR1:MODe {INDEPENDENT|TRACK} + - DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE? + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition? + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition? + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition? + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition? + - DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE {SAME|SPLIT} + - DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE? + - DISplay:WAVEView1:CURSor:CURSOR1:STATE {ON|OFF|} + - DISplay:WAVEView1:CURSor:CURSOR1:STATE? + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition? + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition? + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa? + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts? + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition? + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition? + - DISplay:WAVEView1:CURSor:CURSOR1? + - DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values? + - DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition? + - DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition? + - DISplay:WAVEView1:CURSor? + - DISplay:WAVEView1:FILTer {SINX|LINear} + - DISplay:WAVEView1:FILTer? + - DISplay:WAVEView1:GRAticule {GRId|TIMe|FULl|NONe} + - DISplay:WAVEView1:GRAticule? + - DISplay:WAVEView1:INTENSITy:GRATicule + - DISplay:WAVEView1:INTENSITy:GRATicule? + - DISplay:WAVEView1:INTENSITy:WAVEform + - DISplay:WAVEView1:INTENSITy:WAVEform? + - DISplay:WAVEView1:MATH:MATH:AUTOScale {ON|OFF|} + - DISplay:WAVEView1:MATH:MATH:AUTOScale? + - DISplay:WAVEView1:MATH:MATH:STATE {ON|OFF|} + - DISplay:WAVEView1:MATH:MATH:STATE? + - DISplay:WAVEView1:MATH:MATH:VERTical:POSition + - DISplay:WAVEView1:MATH:MATH:VERTical:POSition? + - DISplay:WAVEView1:MATH:MATH:VERTical:SCAle + - DISplay:WAVEView1:MATH:MATH:VERTical:SCAle? + - DISplay:WAVEView1:PLOT:PLOT:AUTOScale {ON|OFF|} + - DISplay:WAVEView1:PLOT:PLOT:AUTOScale? + - DISplay:WAVEView1:PLOT:PLOT:STATE {ON|OFF|} + - DISplay:WAVEView1:PLOT:PLOT:STATE? + - DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition + - DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition? + - DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle + - DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle? + - DISplay:WAVEView1:REF:REF:FRAMe + - DISplay:WAVEView1:REF:REF:FRAMe? + - DISplay:WAVEView1:REF:REF:STATE {ON|OFF|} + - DISplay:WAVEView1:REF:REF:STATE? + - DISplay:WAVEView1:REF:REF:VERTical:POSition + - DISplay:WAVEView1:REF:REF:VERTical:POSition? + - DISplay:WAVEView1:REF:REF:VERTical:SCAle + - DISplay:WAVEView1:REF:REF:VERTical:SCAle? + - DISplay:WAVEView1:REF_DALL:FRAMe + - DISplay:WAVEView1:REF_DALL:FRAMe? + - DISplay:WAVEView1:RF_FREQuency:VERTical:POSition + - DISplay:WAVEView1:RF_FREQuency:VERTical:POSition? + - DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle + - DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle? + - DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition + - DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition? + - DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle + - DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle? + - DISplay:WAVEView1:RF_PHASe:VERTical:POSition + - DISplay:WAVEView1:RF_PHASe:VERTical:POSition? + - DISplay:WAVEView1:RF_PHASe:VERTical:SCAle + - DISplay:WAVEView1:RF_PHASe:VERTical:SCAle? + - DISplay:WAVEView1:STYle {VECtors|DOTsonly} + - DISplay:WAVEView1:STYle? + - DISplay:WAVEView1:VIEWStyle {OVErlay|STAcked} + - DISplay:WAVEView1:VIEWStyle? + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition? + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe? + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe? + - DISplay:WAVEView1:ZOOM:ZOOM1:STATe {ON|OFF|} + - DISplay:WAVEView1:ZOOM:ZOOM1:STATe? + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition? + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe? + - DISplay:WAVEView1:ZOOM:ZOOM1? + - DISplay:WAVEView1:ZOOM? + - DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION {GRATICULE|BADGE} + - DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION? + - DISplay:WAVEView:GRIDTYPE {MOVEABLE|FIXED} + - DISplay:WAVEView:GRIDTYPE? + - DISplay:WAVEform {ON|OFF|} + - DISplay:WAVEform? + - DISplay? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedChannel, + ValidatedDigitalBit, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class DisplayWaveform(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEform`` command. + + Description: + - This command globally enables or disables the waveform display. When disabled, the + waveform is still acquired and held in memory, but it is not drawn to the screen. + Disabling the waveform display may improve processing speed. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEform?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEform?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEform value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEform {ON|OFF|} + - DISplay:WAVEform? + ``` + + Info: + - ```` enables or disables the waveform display. 0 disables the waveform display; any + other value enables the waveform display. + - ``ON`` enables the waveform display. + - ``OFF`` disables the waveform display. + """ + + +class DisplayWaveviewGridtype(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView:GRIDTYPE`` command. + + Description: + - This command sets or queries the Waveform View Graticule type. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView:GRIDTYPE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView:GRIDTYPE?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView:GRIDTYPE value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView:GRIDTYPE {MOVEABLE|FIXED} + - DISplay:WAVEView:GRIDTYPE? + ``` + + Info: + - ``MOVEABLE`` sets the Waveform View so that both the waveform and the grid (graticule) + move together when moving the waveform horizontally. + - ``FIXED`` sets the Waveform View so that the grid dows not move when moving the waveform + horizontally. + """ + + +class DisplayWaveviewCursorCursor1Rolocation(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION`` command. + + Description: + - This command sets or queries the location to display the Waveform View cursor readouts (in + the Waveform View graticule or in a badge in the Results Bar). + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION {GRATICULE|BADGE} + - DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION? + ``` + + Info: + - ``GRATICULE`` sets the Waveform View cursor readouts to display as part of the cursors in + the plot view. + - ``BADGE`` removes the Waveform View cursor readouts from the cursors in the graticule and + displays the cursor information as a badge in the Results Bar. + """ + + +class DisplayWaveviewCursorCursor1(SCPICmdRead): + """The ``DISplay:WAVEView:CURSor:CURSOR1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView:CURSor:CURSOR1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView:CURSor:CURSOR1?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.rolocation``: The ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._rolocation = DisplayWaveviewCursorCursor1Rolocation( + device, f"{self._cmd_syntax}:ROLOCATION" + ) + + @property + def rolocation(self) -> DisplayWaveviewCursorCursor1Rolocation: + """Return the ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION`` command. + + Description: + - This command sets or queries the location to display the Waveform View cursor readouts + (in the Waveform View graticule or in a badge in the Results Bar). + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION {GRATICULE|BADGE} + - DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION? + ``` + + Info: + - ``GRATICULE`` sets the Waveform View cursor readouts to display as part of the cursors + in the plot view. + - ``BADGE`` removes the Waveform View cursor readouts from the cursors in the graticule + and displays the cursor information as a badge in the Results Bar. + """ + return self._rolocation + + +class DisplayWaveviewCursor(SCPICmdRead): + """The ``DISplay:WAVEView:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView:CURSor?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.cursor1``: The ``DISplay:WAVEView:CURSor:CURSOR1`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cursor1 = DisplayWaveviewCursorCursor1(device, f"{self._cmd_syntax}:CURSOR1") + + @property + def cursor1(self) -> DisplayWaveviewCursorCursor1: + """Return the ``DISplay:WAVEView:CURSor:CURSOR1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView:CURSor:CURSOR1?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView:CURSor:CURSOR1?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.rolocation``: The ``DISplay:WAVEView:CURSor:CURSOR1:ROLOCATION`` command. + """ + return self._cursor1 + + +class DisplayWaveview1ZoomZoom1VerticalScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe`` command. + + Description: + - This command sets or queries the vertical zoom factor of the specified zoom in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe? + ``` + + Info: + - ```` is the amount of vertical expansion or compression. Based on the value that you + entered, this command uses the nearest scale factor. Setting the vertical scale to 1 + indicates unity (no zoom). + """ + + +class DisplayWaveview1ZoomZoom1VerticalPosition(SCPICmdWrite, SCPICmdRead): + r"""The ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified zoom in the specified + Waveform View. It is freely movable within the confines of the acquired waveform. It is + measured from the top to bottom of the acquisition window. The top of the zoom window is + -5 \* vertical zoom factor. The bottom of the zoom window is +5 \* the vertical zoom + factor. For a zoom of 5x, the position ranges from -25 to 25. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition? + ``` + + Info: + - ``NR3`` is the vertical position of the specified zoom in the specified Waveform View. It + is freely movable within the confines of the acquired waveform. The top of the zoom window + is -5 \\* vertical zoom factor. The bottom of the zoom window is +5 \\* the vertical zoom + factor. For a vertical zoom of 5x, the position ranges from -25 to 25. + """ + + +class DisplayWaveview1ZoomZoom1Vertical(SCPICmdRead): + """The ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1ZoomZoom1VerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._scale = DisplayWaveview1ZoomZoom1VerticalScale(device, f"{self._cmd_syntax}:SCALe") + + @property + def position(self) -> DisplayWaveview1ZoomZoom1VerticalPosition: + r"""Return the ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified zoom in the + specified Waveform View. It is freely movable within the confines of the acquired + waveform. It is measured from the top to bottom of the acquisition window. The top of + the zoom window is -5 \* vertical zoom factor. The bottom of the zoom window is +5 \* + the vertical zoom factor. For a zoom of 5x, the position ranges from -25 to 25. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition? + ``` + + Info: + - ``NR3`` is the vertical position of the specified zoom in the specified Waveform View. + It is freely movable within the confines of the acquired waveform. The top of the zoom + window is -5 \\* vertical zoom factor. The bottom of the zoom window is +5 \\* the + vertical zoom factor. For a vertical zoom of 5x, the position ranges from -25 to 25. + """ + return self._position + + @property + def scale(self) -> DisplayWaveview1ZoomZoom1VerticalScale: + """Return the ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe`` command. + + Description: + - This command sets or queries the vertical zoom factor of the specified zoom in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe + - DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe? + ``` + + Info: + - ```` is the amount of vertical expansion or compression. Based on the value that + you entered, this command uses the nearest scale factor. Setting the vertical scale to + 1 indicates unity (no zoom). + """ + return self._scale + + +class DisplayWaveview1ZoomZoom1State(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe`` command. + + Description: + - This command sets or queries the zoom display state of the specified zoom in the specified + Waveform View. This command is equivalent to pushing the zoom button on the front panel. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:STATe {ON|OFF|} + - DISplay:WAVEView1:ZOOM:ZOOM1:STATe? + ``` + + Info: + - ``ON`` turns the specified zoom on. + - ``OFF`` turns specified zoom off. + - ```` = 0 disables the specified zoom; any other value enables the specified zoom. + """ + + +class DisplayWaveview1ZoomZoom1HorizontalWinscale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe`` command. + + Description: + - This command sets or queries the overview window horizontal scale in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe? + ``` + + Info: + - ```` is the horizontal scale of the zoom window. + """ + + +class DisplayWaveview1ZoomZoom1HorizontalScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe`` command. + + Description: + - This command sets or queries the horizontal zoom factor of the specified zoom in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe? + ``` + + Info: + - ```` is the amount of expansion in the horizontal direction in 1-2-4 increments of + the specified zoom in the specified Waveform View. + """ + + +class DisplayWaveview1ZoomZoom1HorizontalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition`` command. + + Description: + - Sets or queries the horizontal zoom position (of the specified zoom in the specified + Waveform View) of the zoomed waveform or zoom waveform in the display, around which the + zoom waveform displays. It is freely movable around the acquisition settings (horizontal + span). An acquired waveform or reference could extend off screen. The valid zoom area does + not care about the waveform itself, only the user setting for acquisition. For example, if + horizontal scale is set to 1 second, position to 50, then the acquisition area will go + from -5 s to +5 s. Zoom window 0 will focus on -5 s and zoom area 100 will focus on +5 s. + If the instrument is stopped and the scale changed to 0.5 s, there will be data off the + ends of the display. However, 0% zoom will put the user focus on -2.5 s, the lower bound + of the acquisition span. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition? + ``` + + Info: + - ```` is a value from 0 to 100.00 and is the percent of the waveform that is to the + left of screen center, when the zoom factor is 2× or greater. + """ + + +class DisplayWaveview1ZoomZoom1Horizontal(SCPICmdRead): + """The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe`` command. + - ``.winscale``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1ZoomZoom1HorizontalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._scale = DisplayWaveview1ZoomZoom1HorizontalScale(device, f"{self._cmd_syntax}:SCALe") + self._winscale = DisplayWaveview1ZoomZoom1HorizontalWinscale( + device, f"{self._cmd_syntax}:WINSCALe" + ) + + @property + def position(self) -> DisplayWaveview1ZoomZoom1HorizontalPosition: + """Return the ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition`` command. + + Description: + - Sets or queries the horizontal zoom position (of the specified zoom in the specified + Waveform View) of the zoomed waveform or zoom waveform in the display, around which + the zoom waveform displays. It is freely movable around the acquisition settings + (horizontal span). An acquired waveform or reference could extend off screen. The + valid zoom area does not care about the waveform itself, only the user setting for + acquisition. For example, if horizontal scale is set to 1 second, position to 50, then + the acquisition area will go from -5 s to +5 s. Zoom window 0 will focus on -5 s and + zoom area 100 will focus on +5 s. If the instrument is stopped and the scale changed + to 0.5 s, there will be data off the ends of the display. However, 0% zoom will put + the user focus on -2.5 s, the lower bound of the acquisition span. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition? + ``` + + Info: + - ```` is a value from 0 to 100.00 and is the percent of the waveform that is to + the left of screen center, when the zoom factor is 2× or greater. + """ + return self._position + + @property + def scale(self) -> DisplayWaveview1ZoomZoom1HorizontalScale: + """Return the ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe`` command. + + Description: + - This command sets or queries the horizontal zoom factor of the specified zoom in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe? + ``` + + Info: + - ```` is the amount of expansion in the horizontal direction in 1-2-4 increments + of the specified zoom in the specified Waveform View. + """ + return self._scale + + @property + def winscale(self) -> DisplayWaveview1ZoomZoom1HorizontalWinscale: + """Return the ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe`` command. + + Description: + - This command sets or queries the overview window horizontal scale in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe + - DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe? + ``` + + Info: + - ```` is the horizontal scale of the zoom window. + """ + return self._winscale + + +class DisplayWaveview1ZoomZoom1(SCPICmdRead): + """The ``DISplay:WAVEView1:ZOOM:ZOOM1`` command. + + Description: + - This query returns the zoom parameters of the specified zoom in the specified Waveform + View. must be 1. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1? + ``` + + Properties: + - ``.horizontal``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal`` command tree. + - ``.state``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe`` command. + - ``.vertical``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._horizontal = DisplayWaveview1ZoomZoom1Horizontal( + device, f"{self._cmd_syntax}:HORizontal" + ) + self._state = DisplayWaveview1ZoomZoom1State(device, f"{self._cmd_syntax}:STATe") + self._vertical = DisplayWaveview1ZoomZoom1Vertical(device, f"{self._cmd_syntax}:VERTical") + + @property + def horizontal(self) -> DisplayWaveview1ZoomZoom1Horizontal: + """Return the ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:SCALe`` command. + - ``.winscale``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal:WINSCALe`` command. + """ + return self._horizontal + + @property + def state(self) -> DisplayWaveview1ZoomZoom1State: + """Return the ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe`` command. + + Description: + - This command sets or queries the zoom display state of the specified zoom in the + specified Waveform View. This command is equivalent to pushing the zoom button on the + front panel. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1:STATe {ON|OFF|} + - DISplay:WAVEView1:ZOOM:ZOOM1:STATe? + ``` + + Info: + - ``ON`` turns the specified zoom on. + - ``OFF`` turns specified zoom off. + - ```` = 0 disables the specified zoom; any other value enables the specified zoom. + """ + return self._state + + @property + def vertical(self) -> DisplayWaveview1ZoomZoom1Vertical: + """Return the ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical:SCALe`` command. + """ + return self._vertical + + +class DisplayWaveview1Zoom(SCPICmdRead): + """The ``DISplay:WAVEView1:ZOOM`` command. + + Description: + - This query returns the zoom parameters of the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:ZOOM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:ZOOM?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM? + ``` + + Properties: + - ``.zoom1``: The ``DISplay:WAVEView1:ZOOM:ZOOM1`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._zoom1 = DisplayWaveview1ZoomZoom1(device, f"{self._cmd_syntax}:ZOOM1") + + @property + def zoom1(self) -> DisplayWaveview1ZoomZoom1: + """Return the ``DISplay:WAVEView1:ZOOM:ZOOM1`` command. + + Description: + - This query returns the zoom parameters of the specified zoom in the specified Waveform + View. must be 1. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:ZOOM:ZOOM1?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM:ZOOM1? + ``` + + Sub-properties: + - ``.horizontal``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:HORizontal`` command tree. + - ``.state``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:STATe`` command. + - ``.vertical``: The ``DISplay:WAVEView1:ZOOM:ZOOM1:VERTical`` command tree. + """ + return self._zoom1 + + +class DisplayWaveview1Viewstyle(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:VIEWStyle`` command. + + Description: + - The command sets or queries the waveform layout style used by the display. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:VIEWStyle?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:VIEWStyle?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView1:VIEWStyle value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:VIEWStyle {OVErlay|STAcked} + - DISplay:WAVEView1:VIEWStyle? + ``` + + Info: + - ``OVErlay`` specifies that the display view style used by the specified Waveform View is + overlay. + - ``STAcked`` specifies that the display view style used by the specified Waveform View is + stacked. + """ + + +class DisplayWaveview1Style(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:STYle`` command. + + Description: + - This command sets or queries how the waveforms are displayed for analysis mode. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:STYle?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:STYle?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView1:STYle value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:STYle {VECtors|DOTsonly} + - DISplay:WAVEView1:STYle? + ``` + + Info: + - ``DOTs`` displays individual data points. New points immediately replace old ones. + - ``VECtors`` connects adjacent data points. New points immediately replace old ones. + """ + + +class DisplayWaveview1RfPhaseItemVerticalScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified Phase vs. Time trace in + the specified Waveform View in degrees per division. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_PHASe:VERTical:SCAle + - DISplay:WAVEView1:RF_PHASe:VERTical:SCAle? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_PHAse`` specifies the number of the Phase vs. Time Frequency waveform. + - ```` sets the vertical scale, in degrees per division. + """ + + +class DisplayWaveview1RfPhaseItemVerticalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified Phase vs. Time trace + in the Waveform View, in divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_PHASe:VERTical:POSition + - DISplay:WAVEView1:RF_PHASe:VERTical:POSition? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_PHASe`` specifies the number of the Phase vs. Time Frequency waveform. + - ``NR3`` sets the vertical position in divisions. 0.0 divisions is center, 5.0 is the top + of the Waveform View, and -5.0 is the top of the Waveform View. + """ + + +class DisplayWaveview1RfPhaseItemVertical(SCPICmdRead): + """The ``DISplay:WAVEView1:RF_PHASe:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:RF_PHASe:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``RF_PHASe`` specifies the number of the Phase vs. Time Frequency waveform. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1RfPhaseItemVerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._scale = DisplayWaveview1RfPhaseItemVerticalScale(device, f"{self._cmd_syntax}:SCAle") + + @property + def position(self) -> DisplayWaveview1RfPhaseItemVerticalPosition: + """Return the ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified Phase vs. Time + trace in the Waveform View, in divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_PHASe:VERTical:POSition + - DISplay:WAVEView1:RF_PHASe:VERTical:POSition? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_PHASe`` specifies the number of the Phase vs. Time Frequency waveform. + - ``NR3`` sets the vertical position in divisions. 0.0 divisions is center, 5.0 is the + top of the Waveform View, and -5.0 is the top of the Waveform View. + """ + return self._position + + @property + def scale(self) -> DisplayWaveview1RfPhaseItemVerticalScale: + """Return the ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified Phase vs. Time trace + in the specified Waveform View in degrees per division. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_PHASe:VERTical:SCAle + - DISplay:WAVEView1:RF_PHASe:VERTical:SCAle? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_PHAse`` specifies the number of the Phase vs. Time Frequency waveform. + - ```` sets the vertical scale, in degrees per division. + """ + return self._scale + + +class DisplayWaveview1RfPhaseItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:WAVEView1:RF_PHASe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:RF_PHASe?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:RF_PHASe?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``RF_PHASe`` specifies the number of the Phase vs. Time Frequency waveform. + + Properties: + - ``.vertical``: The ``DISplay:WAVEView1:RF_PHASe:VERTical`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._vertical = DisplayWaveview1RfPhaseItemVertical(device, f"{self._cmd_syntax}:VERTical") + + @property + def vertical(self) -> DisplayWaveview1RfPhaseItemVertical: + """Return the ``DISplay:WAVEView1:RF_PHASe:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_PHASe:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``RF_PHASe`` specifies the number of the Phase vs. Time Frequency waveform. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:RF_PHASe:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:RF_PHASe:VERTical:SCAle`` command. + """ + return self._vertical + + +class DisplayWaveview1RfMagnitudeItemVerticalScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified Magnitude vs. Time trace + in the specified Waveform View in Volts, Watts, or dB per division. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle + - DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_MAGnitude`` specifies the number of the Magnitude vs. Time Frequency waveform. + - ``NR3`` sets the vertical scale. The units for the vertical scale depend on the Magnitude + Format setting. If the format is 'Amplitude (linear)', then the units are Volts/div. If + the format is 'Power (linear)', then the units are Watts/div. If the format is 'Power + (log)', then the units are dB/div. + """ + + +class DisplayWaveview1RfMagnitudeItemVerticalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified Magnitude vs. Time + trace in the Waveform View, in divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition + - DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_MAGnitude`` specifies the number of the Magnitude vs. Time Frequency waveform. + - ``NR3`` sets the vertical position in divisions. 0.0 divisions is center, 5.0 is the top + of the Waveform View, and -5.0 is the top of the Waveform View. + """ + + +class DisplayWaveview1RfMagnitudeItemVertical(SCPICmdRead): + """The ``DISplay:WAVEView1:RF_MAGnitude:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``RF_MAGnitude`` specifies the number of the Magnitude vs. Time Frequency waveform. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1RfMagnitudeItemVerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._scale = DisplayWaveview1RfMagnitudeItemVerticalScale( + device, f"{self._cmd_syntax}:SCAle" + ) + + @property + def position(self) -> DisplayWaveview1RfMagnitudeItemVerticalPosition: + """Return the ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified Magnitude vs. Time + trace in the Waveform View, in divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition + - DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_MAGnitude`` specifies the number of the Magnitude vs. Time Frequency waveform. + - ``NR3`` sets the vertical position in divisions. 0.0 divisions is center, 5.0 is the + top of the Waveform View, and -5.0 is the top of the Waveform View. + """ + return self._position + + @property + def scale(self) -> DisplayWaveview1RfMagnitudeItemVerticalScale: + """Return the ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified Magnitude vs. Time + trace in the specified Waveform View in Volts, Watts, or dB per division. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle + - DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_MAGnitude`` specifies the number of the Magnitude vs. Time Frequency waveform. + - ``NR3`` sets the vertical scale. The units for the vertical scale depend on the + Magnitude Format setting. If the format is 'Amplitude (linear)', then the units are + Volts/div. If the format is 'Power (linear)', then the units are Watts/div. If the + format is 'Power (log)', then the units are dB/div. + """ + return self._scale + + +class DisplayWaveview1RfMagnitudeItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:WAVEView1:RF_MAGnitude`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:RF_MAGnitude?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:RF_MAGnitude?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``RF_MAGnitude`` specifies the number of the Magnitude vs. Time Frequency waveform. + + Properties: + - ``.vertical``: The ``DISplay:WAVEView1:RF_MAGnitude:VERTical`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._vertical = DisplayWaveview1RfMagnitudeItemVertical( + device, f"{self._cmd_syntax}:VERTical" + ) + + @property + def vertical(self) -> DisplayWaveview1RfMagnitudeItemVertical: + """Return the ``DISplay:WAVEView1:RF_MAGnitude:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude:VERTical?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``RF_MAGnitude`` specifies the number of the Magnitude vs. Time Frequency waveform. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:RF_MAGnitude:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:RF_MAGnitude:VERTical:SCAle`` command. + """ + return self._vertical + + +class DisplayWaveview1RfFrequencyItemVerticalScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified Frequency vs. Time trace + in the Waveform View, in divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle + - DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_FREQuency`` specifies the number of the Frequency vs. Time waveform. + - ``NR3`` sets the vertical scale, in Hertz per division. + """ + + +class DisplayWaveview1RfFrequencyItemVerticalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified Frequency vs. Time + trace in the Waveform View, in divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_FREQuency:VERTical:POSition + - DISplay:WAVEView1:RF_FREQuency:VERTical:POSition? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_FREQuency`` specifies the number of the Frequency vs. Time waveform. + - ``NR3`` sets the vertical position in divisions. 0.0 divisions is center, 5.0 is the top + of the Waveform View, and -5.0 is the top of the Waveform View. + """ + + +class DisplayWaveview1RfFrequencyItemVertical(SCPICmdRead): + """The ``DISplay:WAVEView1:RF_FREQuency:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``RF_FREQuency`` specifies the number of the Frequency vs. Time waveform. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1RfFrequencyItemVerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._scale = DisplayWaveview1RfFrequencyItemVerticalScale( + device, f"{self._cmd_syntax}:SCAle" + ) + + @property + def position(self) -> DisplayWaveview1RfFrequencyItemVerticalPosition: + """Return the ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified Frequency vs. Time + trace in the Waveform View, in divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_FREQuency:VERTical:POSition + - DISplay:WAVEView1:RF_FREQuency:VERTical:POSition? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_FREQuency`` specifies the number of the Frequency vs. Time waveform. + - ``NR3`` sets the vertical position in divisions. 0.0 divisions is center, 5.0 is the + top of the Waveform View, and -5.0 is the top of the Waveform View. + """ + return self._position + + @property + def scale(self) -> DisplayWaveview1RfFrequencyItemVerticalScale: + """Return the ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified Frequency vs. Time + trace in the Waveform View, in divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle + - DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle? + ``` + + Info: + - ``1`` is always WAVEView1. + - ``RF_FREQuency`` specifies the number of the Frequency vs. Time waveform. + - ``NR3`` sets the vertical scale, in Hertz per division. + """ + return self._scale + + +class DisplayWaveview1RfFrequencyItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:WAVEView1:RF_FREQuency`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:RF_FREQuency?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:RF_FREQuency?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``RF_FREQuency`` specifies the number of the Frequency vs. Time waveform. + + Properties: + - ``.vertical``: The ``DISplay:WAVEView1:RF_FREQuency:VERTical`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._vertical = DisplayWaveview1RfFrequencyItemVertical( + device, f"{self._cmd_syntax}:VERTical" + ) + + @property + def vertical(self) -> DisplayWaveview1RfFrequencyItemVertical: + """Return the ``DISplay:WAVEView1:RF_FREQuency:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency:VERTical?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``RF_FREQuency`` specifies the number of the Frequency vs. Time waveform. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:RF_FREQuency:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:RF_FREQuency:VERTical:SCAle`` command. + """ + return self._vertical + + +class DisplayWaveview1RefItemDallFrame(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:REF_DALL:FRAMe`` command. + + Description: + - This command sets or returns the selected frame of the specified digital ref. Each ref has + a unique selected frame. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF_DALL:FRAMe?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF_DALL:FRAMe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF_DALL:FRAMe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF_DALL:FRAMe + - DISplay:WAVEView1:REF_DALL:FRAMe? + ``` + + Info: + - ```` is the selected frame of the specified digital ref. + """ + + +class DisplayWaveview1RefItemDall(SCPICmdRead): + """The ``DISplay:WAVEView1:REF_DALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF_DALL?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF_DALL?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.frame``: The ``DISplay:WAVEView1:REF_DALL:FRAMe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._frame = DisplayWaveview1RefItemDallFrame(device, f"{self._cmd_syntax}:FRAMe") + + @property + def frame(self) -> DisplayWaveview1RefItemDallFrame: + """Return the ``DISplay:WAVEView1:REF_DALL:FRAMe`` command. + + Description: + - This command sets or returns the selected frame of the specified digital ref. Each ref + has a unique selected frame. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF_DALL:FRAMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:REF_DALL:FRAMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF_DALL:FRAMe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF_DALL:FRAMe + - DISplay:WAVEView1:REF_DALL:FRAMe? + ``` + + Info: + - ```` is the selected frame of the specified digital ref. + """ + return self._frame + + +class DisplayWaveview1RefItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:WAVEView1:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.dall``: The ``DISplay:WAVEView1:REF_DALL`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dall = DisplayWaveview1RefItemDall(device, f"{self._cmd_syntax}_DALL") + + @property + def dall(self) -> DisplayWaveview1RefItemDall: + """Return the ``DISplay:WAVEView1:REF_DALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF_DALL?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF_DALL?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.frame``: The ``DISplay:WAVEView1:REF_DALL:FRAMe`` command. + """ + return self._dall + + +class DisplayWaveview1RefRefItemVerticalScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:REF:REF:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified reference in volts per + div within the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:SCAle?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF:REF:VERTical:SCAle + - DISplay:WAVEView1:REF:REF:VERTical:SCAle? + ``` + + Info: + - ```` is the vertical scale of the specified reference waveform. + """ + + +class DisplayWaveview1RefRefItemVerticalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:REF:REF:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position in divisions of the specified reference + in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF:REF:VERTical:POSition + - DISplay:WAVEView1:REF:REF:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position in divisions. + """ + + +class DisplayWaveview1RefRefItemVertical(SCPICmdRead): + """The ``DISplay:WAVEView1:REF:REF:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF:REF:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:REF:REF:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:REF:REF:VERTical:SCAle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1RefRefItemVerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._scale = DisplayWaveview1RefRefItemVerticalScale(device, f"{self._cmd_syntax}:SCAle") + + @property + def position(self) -> DisplayWaveview1RefRefItemVerticalPosition: + """Return the ``DISplay:WAVEView1:REF:REF:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position in divisions of the specified + reference in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:POSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF:REF:VERTical:POSition + - DISplay:WAVEView1:REF:REF:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position in divisions. + """ + return self._position + + @property + def scale(self) -> DisplayWaveview1RefRefItemVerticalScale: + """Return the ``DISplay:WAVEView1:REF:REF:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified reference in volts + per div within the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:SCAle?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF:REF:VERTical:SCAle + - DISplay:WAVEView1:REF:REF:VERTical:SCAle? + ``` + + Info: + - ```` is the vertical scale of the specified reference waveform. + """ + return self._scale + + +class DisplayWaveview1RefRefItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:REF:REF:STATE`` command. + + Description: + - This command sets or queries the state of the specified reference waveform in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF:REF:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF:REF:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF:REF:STATE {ON|OFF|} + - DISplay:WAVEView1:REF:REF:STATE? + ``` + + Info: + - ```` = 0 disables the specified reference in the specified Waveform View; any other + value turns this feature on. + - ``OFF`` disables the specified reference in the specified Waveform View. + - ``ON`` enables the specified reference in the specified Waveform View. + """ + + +class DisplayWaveview1RefRefItemFrame(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:REF:REF:FRAMe`` command. + + Description: + - This command sets or returns the selected frame of the specified analog ref. Each ref has + a unique selected frame. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF:REF:FRAMe?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF:REF:FRAMe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:FRAMe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF:REF:FRAMe + - DISplay:WAVEView1:REF:REF:FRAMe? + ``` + + Info: + - ```` is the selected frame of the specified analog ref. + """ + + +class DisplayWaveview1RefRefItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:WAVEView1:REF:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF:REF?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:WAVEView1:REF:REF:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:REF:REF:VERTical`` command tree. + - ``.frame``: The ``DISplay:WAVEView1:REF:REF:FRAMe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayWaveview1RefRefItemState(device, f"{self._cmd_syntax}:STATE") + self._vertical = DisplayWaveview1RefRefItemVertical(device, f"{self._cmd_syntax}:VERTical") + self._frame = DisplayWaveview1RefRefItemFrame(device, f"{self._cmd_syntax}:FRAMe") + + @property + def state(self) -> DisplayWaveview1RefRefItemState: + """Return the ``DISplay:WAVEView1:REF:REF:STATE`` command. + + Description: + - This command sets or queries the state of the specified reference waveform in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF:REF:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF:REF:STATE {ON|OFF|} + - DISplay:WAVEView1:REF:REF:STATE? + ``` + + Info: + - ```` = 0 disables the specified reference in the specified Waveform View; any + other value turns this feature on. + - ``OFF`` disables the specified reference in the specified Waveform View. + - ``ON`` enables the specified reference in the specified Waveform View. + """ + return self._state + + @property + def vertical(self) -> DisplayWaveview1RefRefItemVertical: + """Return the ``DISplay:WAVEView1:REF:REF:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF:REF:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:REF:REF:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:REF:REF:VERTical:SCAle`` command. + """ + return self._vertical + + @property + def frame(self) -> DisplayWaveview1RefRefItemFrame: + """Return the ``DISplay:WAVEView1:REF:REF:FRAMe`` command. + + Description: + - This command sets or returns the selected frame of the specified analog ref. Each ref + has a unique selected frame. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF:REF:FRAMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:FRAMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:REF:REF:FRAMe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:REF:REF:FRAMe + - DISplay:WAVEView1:REF:REF:FRAMe? + ``` + + Info: + - ```` is the selected frame of the specified analog ref. + """ + return self._frame + + +class DisplayWaveview1Ref(SCPICmdRead): + """The ``DISplay:WAVEView1:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ref``: The ``DISplay:WAVEView1:REF:REF`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ref: Dict[int, DisplayWaveview1RefRefItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1RefRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + + @property + def ref(self) -> Dict[int, DisplayWaveview1RefRefItem]: + """Return the ``DISplay:WAVEView1:REF:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF:REF?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:WAVEView1:REF:REF:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:REF:REF:VERTical`` command tree. + - ``.frame``: The ``DISplay:WAVEView1:REF:REF:FRAMe`` command. + """ + return self._ref + + +class DisplayWaveview1PlotPlotItemVerticalScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified time trend in units per + division in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle + - DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle? + ``` + + Info: + - ```` is the vertical scale. + """ + + +class DisplayWaveview1PlotPlotItemVerticalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified time trend in the + specified Waveform View in absolute units. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition + - DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position. + """ + + +class DisplayWaveview1PlotPlotItemVertical(SCPICmdRead): + """The ``DISplay:WAVEView1:PLOT:PLOT:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:PLOT:PLOT:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1PlotPlotItemVerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._scale = DisplayWaveview1PlotPlotItemVerticalScale(device, f"{self._cmd_syntax}:SCAle") + + @property + def position(self) -> DisplayWaveview1PlotPlotItemVerticalPosition: + """Return the ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified time trend in the + specified Waveform View in absolute units. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition + - DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position. + """ + return self._position + + @property + def scale(self) -> DisplayWaveview1PlotPlotItemVerticalScale: + """Return the ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle`` command. + + Description: + - This command sets or queries the vertical scale of the specified time trend in units + per division in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle + - DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle? + ``` + + Info: + - ```` is the vertical scale. + """ + return self._scale + + +class DisplayWaveview1PlotPlotItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:PLOT:PLOT:STATE`` command. + + Description: + - This command sets or queries the state of the specified time trend plot waveform in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:PLOT:PLOT:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:PLOT:PLOT:STATE {ON|OFF|} + - DISplay:WAVEView1:PLOT:PLOT:STATE? + ``` + + Info: + - ```` = 0 disables the specified plot in the specified Waveform View; any other value + turns this feature on. + - ``OFF`` disables the specified plot in the specified Waveform View. + - ``ON`` enables the specified plot in the specified Waveform View. + """ + + +class DisplayWaveview1PlotPlotItemAutoscale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale`` command. + + Description: + - This command sets or queries whether the specified trend gets auto-scaled when the new + data is available within the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:PLOT:PLOT:AUTOScale {ON|OFF|} + - DISplay:WAVEView1:PLOT:PLOT:AUTOScale? + ``` + + Info: + - ```` = 0 disables auto-scaling the specified plot in the specified Waveform View; any + other value turns this feature on. + - ``OFF`` disables auto-scaling the specified plot in the specified Waveform View. + - ``ON`` enables auto-scaling the specified plot in the specified Waveform View. + """ + + +class DisplayWaveview1PlotPlotItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:WAVEView1:PLOT:PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:PLOT:PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:PLOT:PLOT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.autoscale``: The ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale`` command. + - ``.state``: The ``DISplay:WAVEView1:PLOT:PLOT:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:PLOT:PLOT:VERTical`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autoscale = DisplayWaveview1PlotPlotItemAutoscale( + device, f"{self._cmd_syntax}:AUTOScale" + ) + self._state = DisplayWaveview1PlotPlotItemState(device, f"{self._cmd_syntax}:STATE") + self._vertical = DisplayWaveview1PlotPlotItemVertical( + device, f"{self._cmd_syntax}:VERTical" + ) + + @property + def autoscale(self) -> DisplayWaveview1PlotPlotItemAutoscale: + """Return the ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale`` command. + + Description: + - This command sets or queries whether the specified trend gets auto-scaled when the new + data is available within the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:PLOT:PLOT:AUTOScale {ON|OFF|} + - DISplay:WAVEView1:PLOT:PLOT:AUTOScale? + ``` + + Info: + - ```` = 0 disables auto-scaling the specified plot in the specified Waveform View; + any other value turns this feature on. + - ``OFF`` disables auto-scaling the specified plot in the specified Waveform View. + - ``ON`` enables auto-scaling the specified plot in the specified Waveform View. + """ + return self._autoscale + + @property + def state(self) -> DisplayWaveview1PlotPlotItemState: + """Return the ``DISplay:WAVEView1:PLOT:PLOT:STATE`` command. + + Description: + - This command sets or queries the state of the specified time trend plot waveform in + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:PLOT:PLOT:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:PLOT:PLOT:STATE {ON|OFF|} + - DISplay:WAVEView1:PLOT:PLOT:STATE? + ``` + + Info: + - ```` = 0 disables the specified plot in the specified Waveform View; any other + value turns this feature on. + - ``OFF`` disables the specified plot in the specified Waveform View. + - ``ON`` enables the specified plot in the specified Waveform View. + """ + return self._state + + @property + def vertical(self) -> DisplayWaveview1PlotPlotItemVertical: + """Return the ``DISplay:WAVEView1:PLOT:PLOT:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:PLOT:PLOT:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:PLOT:PLOT:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:PLOT:PLOT:VERTical:SCAle`` command. + """ + return self._vertical + + +class DisplayWaveview1Plot(SCPICmdRead): + """The ``DISplay:WAVEView1:PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:PLOT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.plot``: The ``DISplay:WAVEView1:PLOT:PLOT`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._plot: Dict[int, DisplayWaveview1PlotPlotItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1PlotPlotItem(device, f"{self._cmd_syntax}:PLOT{x}") + ) + + @property + def plot(self) -> Dict[int, DisplayWaveview1PlotPlotItem]: + """Return the ``DISplay:WAVEView1:PLOT:PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:PLOT:PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:PLOT:PLOT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.autoscale``: The ``DISplay:WAVEView1:PLOT:PLOT:AUTOScale`` command. + - ``.state``: The ``DISplay:WAVEView1:PLOT:PLOT:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:PLOT:PLOT:VERTical`` command tree. + """ + return self._plot + + +class DisplayWaveview1MathMathItemVerticalScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle`` command. + + Description: + - Sets or queries the vertical scale of the specified math in volts per division within the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:MATH:MATH:VERTical:SCAle + - DISplay:WAVEView1:MATH:MATH:VERTical:SCAle? + ``` + + Info: + - ```` is the vertical scale of the specified math waveform. + """ + + +class DisplayWaveview1MathMathItemVerticalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position in divisions of the specified math + waveform in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:MATH:MATH:VERTical:POSition + - DISplay:WAVEView1:MATH:MATH:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position in divisions of the specified math waveform. + """ + + +class DisplayWaveview1MathMathItemVertical(SCPICmdRead): + """The ``DISplay:WAVEView1:MATH:MATH:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:MATH:MATH:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1MathMathItemVerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._scale = DisplayWaveview1MathMathItemVerticalScale(device, f"{self._cmd_syntax}:SCAle") + + @property + def position(self) -> DisplayWaveview1MathMathItemVerticalPosition: + """Return the ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position in divisions of the specified math + waveform in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:MATH:MATH:VERTical:POSition + - DISplay:WAVEView1:MATH:MATH:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position in divisions of the specified math waveform. + """ + return self._position + + @property + def scale(self) -> DisplayWaveview1MathMathItemVerticalScale: + """Return the ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle`` command. + + Description: + - Sets or queries the vertical scale of the specified math in volts per division within + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:MATH:MATH:VERTical:SCAle + - DISplay:WAVEView1:MATH:MATH:VERTical:SCAle? + ``` + + Info: + - ```` is the vertical scale of the specified math waveform. + """ + return self._scale + + +class DisplayWaveview1MathMathItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:MATH:MATH:STATE`` command. + + Description: + - This command sets or queries the state of the specified math waveform in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:MATH:MATH:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:MATH:MATH:STATE {ON|OFF|} + - DISplay:WAVEView1:MATH:MATH:STATE? + ``` + + Info: + - ```` = 0 disables the specified math in the specified Waveform View; any other value + turns this feature on. + - ``OFF`` disables the specified math in the specified Waveform View. + - ``ON`` enables the specified math in the specified Waveform View. + """ + + +class DisplayWaveview1MathMathItemAutoscale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:MATH:MATH:AUTOScale`` command. + + Description: + - This command sets or queries whether the specified math gets auto-scaled when the math + equation changes within the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:MATH:MATH:AUTOScale?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:AUTOScale?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:AUTOScale value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:MATH:MATH:AUTOScale {ON|OFF|} + - DISplay:WAVEView1:MATH:MATH:AUTOScale? + ``` + + Info: + - ```` = 0 disables the autoscaling the math in the specified Waveform View; any other + value turns this feature on. + - ``OFF`` disables the autoscaling the math in the specified Waveform View. + - ``ON`` enables the autoscaling the math in the specified Waveform View. + """ + + +class DisplayWaveview1MathMathItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:WAVEView1:MATH:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:MATH:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:MATH:MATH?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.autoscale``: The ``DISplay:WAVEView1:MATH:MATH:AUTOScale`` command. + - ``.state``: The ``DISplay:WAVEView1:MATH:MATH:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:MATH:MATH:VERTical`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autoscale = DisplayWaveview1MathMathItemAutoscale( + device, f"{self._cmd_syntax}:AUTOScale" + ) + self._state = DisplayWaveview1MathMathItemState(device, f"{self._cmd_syntax}:STATE") + self._vertical = DisplayWaveview1MathMathItemVertical( + device, f"{self._cmd_syntax}:VERTical" + ) + + @property + def autoscale(self) -> DisplayWaveview1MathMathItemAutoscale: + """Return the ``DISplay:WAVEView1:MATH:MATH:AUTOScale`` command. + + Description: + - This command sets or queries whether the specified math gets auto-scaled when the math + equation changes within the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:MATH:MATH:AUTOScale?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:AUTOScale?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:AUTOScale value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:MATH:MATH:AUTOScale {ON|OFF|} + - DISplay:WAVEView1:MATH:MATH:AUTOScale? + ``` + + Info: + - ```` = 0 disables the autoscaling the math in the specified Waveform View; any + other value turns this feature on. + - ``OFF`` disables the autoscaling the math in the specified Waveform View. + - ``ON`` enables the autoscaling the math in the specified Waveform View. + """ + return self._autoscale + + @property + def state(self) -> DisplayWaveview1MathMathItemState: + """Return the ``DISplay:WAVEView1:MATH:MATH:STATE`` command. + + Description: + - This command sets or queries the state of the specified math waveform in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:MATH:MATH:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:MATH:MATH:STATE {ON|OFF|} + - DISplay:WAVEView1:MATH:MATH:STATE? + ``` + + Info: + - ```` = 0 disables the specified math in the specified Waveform View; any other + value turns this feature on. + - ``OFF`` disables the specified math in the specified Waveform View. + - ``ON`` enables the specified math in the specified Waveform View. + """ + return self._state + + @property + def vertical(self) -> DisplayWaveview1MathMathItemVertical: + """Return the ``DISplay:WAVEView1:MATH:MATH:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:MATH:MATH:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:MATH:MATH:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:MATH:MATH:VERTical:SCAle`` command. + """ + return self._vertical + + +class DisplayWaveview1Math(SCPICmdRead): + """The ``DISplay:WAVEView1:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:MATH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.math``: The ``DISplay:WAVEView1:MATH:MATH`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._math: Dict[int, DisplayWaveview1MathMathItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1MathMathItem(device, f"{self._cmd_syntax}:MATH{x}") + ) + + @property + def math(self) -> Dict[int, DisplayWaveview1MathMathItem]: + """Return the ``DISplay:WAVEView1:MATH:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:MATH:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:MATH:MATH?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.autoscale``: The ``DISplay:WAVEView1:MATH:MATH:AUTOScale`` command. + - ``.state``: The ``DISplay:WAVEView1:MATH:MATH:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:MATH:MATH:VERTical`` command tree. + """ + return self._math + + +class DisplayWaveview1IntensityWaveform(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:INTENSITy:WAVEform`` command. + + Description: + - This command sets or queries the waveform saturation level. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:INTENSITy:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:INTENSITy:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:INTENSITy:WAVEform value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:INTENSITy:WAVEform + - DISplay:WAVEView1:INTENSITy:WAVEform? + ``` + + Info: + - ```` is the waveform saturation level. + """ + + +class DisplayWaveview1IntensityGraticule(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:INTENSITy:GRATicule`` command. + + Description: + - This command sets or queries the graticule saturation level. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:INTENSITy:GRATicule?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:INTENSITy:GRATicule?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:INTENSITy:GRATicule value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:INTENSITy:GRATicule + - DISplay:WAVEView1:INTENSITy:GRATicule? + ``` + + Info: + - ```` is the graticule saturation level. + """ + + +class DisplayWaveview1Intensity(SCPICmdRead): + """The ``DISplay:WAVEView1:INTENSITy`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:INTENSITy?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:INTENSITy?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.graticule``: The ``DISplay:WAVEView1:INTENSITy:GRATicule`` command. + - ``.waveform``: The ``DISplay:WAVEView1:INTENSITy:WAVEform`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._graticule = DisplayWaveview1IntensityGraticule( + device, f"{self._cmd_syntax}:GRATicule" + ) + self._waveform = DisplayWaveview1IntensityWaveform(device, f"{self._cmd_syntax}:WAVEform") + + @property + def graticule(self) -> DisplayWaveview1IntensityGraticule: + """Return the ``DISplay:WAVEView1:INTENSITy:GRATicule`` command. + + Description: + - This command sets or queries the graticule saturation level. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:INTENSITy:GRATicule?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:INTENSITy:GRATicule?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:INTENSITy:GRATicule value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:INTENSITy:GRATicule + - DISplay:WAVEView1:INTENSITy:GRATicule? + ``` + + Info: + - ```` is the graticule saturation level. + """ + return self._graticule + + @property + def waveform(self) -> DisplayWaveview1IntensityWaveform: + """Return the ``DISplay:WAVEView1:INTENSITy:WAVEform`` command. + + Description: + - This command sets or queries the waveform saturation level. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:INTENSITy:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:INTENSITy:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:INTENSITy:WAVEform value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:INTENSITy:WAVEform + - DISplay:WAVEView1:INTENSITy:WAVEform? + ``` + + Info: + - ```` is the waveform saturation level. + """ + return self._waveform + + +class DisplayWaveview1Graticule(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:GRAticule`` command. + + Description: + - This command selects or queries the type of graticule that is displayed. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:GRAticule?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:GRAticule?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView1:GRAticule value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:GRAticule {GRId|TIMe|FULl|NONe} + - DISplay:WAVEView1:GRAticule? + ``` + + Info: + - ``GRId`` specifies a frame and grid only. + - ``TIMe`` specifies a time graticule only. + - ``FULl`` specifies a frame, a grid and cross hairs. + - ``NONe`` specified no graticule. + """ + + +class DisplayWaveview1Filter(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:FILTer`` command. + + Description: + - This command sets or queries the type of interpolation filter for the display. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:FILTer?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:FILTer?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView1:FILTer value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:FILTer {SINX|LINear} + - DISplay:WAVEView1:FILTer? + ``` + + Info: + - ``LINEAr`` specifies linear interpolation, where acquired points are connected with + straight lines. + - ``SINX`` specifies sin(x)/x interpolation, where acquired points are fit to a curve. + """ + + +class DisplayWaveview1CursorCursorWaveformBvposition(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition`` command. + + Description: + - This command queries the vertical waveform value at the cursor B position in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursorWaveformAvposition(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition`` command. + + Description: + - This command queries the vertical waveform value at the cursor A position in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursorWaveformAllValues(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values`` command. + + Description: + - This query returns all values (Time, Voltage, Delta) associated with all the active + sources in the Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values? + ``` + """ + + +class DisplayWaveview1CursorCursorWaveformAll(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.values``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._values = DisplayWaveview1CursorCursorWaveformAllValues( + device, f"{self._cmd_syntax}:Values" + ) + + @property + def values(self) -> DisplayWaveview1CursorCursorWaveformAllValues: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values`` command. + + Description: + - This query returns all values (Time, Voltage, Delta) associated with all the active + sources in the Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values? + ``` + """ + return self._values + + +class DisplayWaveview1CursorCursorWaveform(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.all``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL`` command tree. + - ``.avposition``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition`` command. + - ``.bvposition``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._all = DisplayWaveview1CursorCursorWaveformAll(device, f"{self._cmd_syntax}:ALL") + self._avposition = DisplayWaveview1CursorCursorWaveformAvposition( + device, f"{self._cmd_syntax}:AVPOSition" + ) + self._bvposition = DisplayWaveview1CursorCursorWaveformBvposition( + device, f"{self._cmd_syntax}:BVPOSition" + ) + + @property + def all(self) -> DisplayWaveview1CursorCursorWaveformAll: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.values``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL:Values`` command. + """ + return self._all + + @property + def avposition(self) -> DisplayWaveview1CursorCursorWaveformAvposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition`` command. + + Description: + - This command queries the vertical waveform value at the cursor A position in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + return self._avposition + + @property + def bvposition(self) -> DisplayWaveview1CursorCursorWaveformBvposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition`` command. + + Description: + - This command queries the vertical waveform value at the cursor B position in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + return self._bvposition + + +class DisplayWaveview1CursorCursor1WaveformBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position of the specified cursor in + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition? + ``` + + Info: + - ```` is the horizontal cursor B position of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursor1WaveformAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position of the specified cursor in + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursor1Waveform(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition`` command. + - ``.bposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayWaveview1CursorCursor1WaveformAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._bposition = DisplayWaveview1CursorCursor1WaveformBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + + @property + def aposition(self) -> DisplayWaveview1CursorCursor1WaveformAposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position of the specified cursor + in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + return self._aposition + + @property + def bposition(self) -> DisplayWaveview1CursorCursor1WaveformBposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position of the specified cursor + in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition? + ``` + + Info: + - ```` is the horizontal cursor B position of the specified cursor in the specified + Waveform View. + """ + return self._bposition + + +class DisplayWaveview1CursorCursor1VbarsUnits(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts`` command. + + Description: + - This query returns cursor A vertical units of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts? + ``` + """ + + +class DisplayWaveview1CursorCursor1VbarsDelta(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa`` command. + + Description: + - This query sets or returns the delta T cursor readout value of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa? + ``` + """ + + +class DisplayWaveview1CursorCursor1VbarsBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the cursor B horizontal position of the specified cursor in + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition? + ``` + + Info: + - ```` is the horizontal cursor B position of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursor1VbarsAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition`` command. + + Description: + - This command sets or queries the cursor A horizontal position of the specified cursor in + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursor1Vbars(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition`` command. + - ``.bposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition`` command. + - ``.delta``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa`` command. + - ``.units``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayWaveview1CursorCursor1VbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._bposition = DisplayWaveview1CursorCursor1VbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._delta = DisplayWaveview1CursorCursor1VbarsDelta(device, f"{self._cmd_syntax}:DELTa") + self._units = DisplayWaveview1CursorCursor1VbarsUnits(device, f"{self._cmd_syntax}:UNIts") + + @property + def aposition(self) -> DisplayWaveview1CursorCursor1VbarsAposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition`` command. + + Description: + - This command sets or queries the cursor A horizontal position of the specified cursor + in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + return self._aposition + + @property + def bposition(self) -> DisplayWaveview1CursorCursor1VbarsBposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the cursor B horizontal position of the specified cursor + in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition? + ``` + + Info: + - ```` is the horizontal cursor B position of the specified cursor in the specified + Waveform View. + """ + return self._bposition + + @property + def delta(self) -> DisplayWaveview1CursorCursor1VbarsDelta: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa`` command. + + Description: + - This query sets or returns the delta T cursor readout value of the specified cursor in + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa? + ``` + """ + return self._delta + + @property + def units(self) -> DisplayWaveview1CursorCursor1VbarsUnits: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts`` command. + + Description: + - This query returns cursor A vertical units of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts? + ``` + """ + return self._units + + +class DisplayWaveview1CursorCursor1State(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:STATE`` command. + + Description: + - This command sets or queries the visible state of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:STATE {ON|OFF|} + - DISplay:WAVEView1:CURSor:CURSOR1:STATE? + ``` + + Info: + - ```` = 0 disables the specified cursor in the specified Waveform View; any other + value turns this feature on. + - ``OFF`` disables the specified cursor in the specified Waveform View. + - ``ON`` enables the specified cursor in the specified Waveform View. + """ + + +class DisplayWaveview1CursorCursor1Splitmode(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE`` command. + + Description: + - This command sets or queries whether both cursors have the same or different sources. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE {SAME|SPLIT} + - DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE? + ``` + + Info: + - ``SAME`` specifies both cursors have the same source. + - ``SPLIT`` specifies the cursors have different sources. + """ + + +class DisplayWaveview1CursorCursor1ScreenByposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition? + ``` + + Info: + - ```` the vertical cursor B position of the specified cursor in the specified Waveform + View. + """ + + +class DisplayWaveview1CursorCursor1ScreenBxposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition`` command. + + Description: + - Sets or queries the horizontal cursor B position of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition? + ``` + + Info: + - ```` is the horizontal cursor B position of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursor1ScreenAyposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition? + ``` + + Info: + - ```` the vertical cursor A position of the specified cursor in the specified Waveform + View. + """ + + +class DisplayWaveview1CursorCursor1ScreenAxposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition`` command. + + Description: + - Sets or queries the horizontal cursor A position of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursor1Screen(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.axposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition`` command. + - ``.ayposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition`` command. + - ``.bxposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition`` command. + - ``.byposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._axposition = DisplayWaveview1CursorCursor1ScreenAxposition( + device, f"{self._cmd_syntax}:AXPOSition" + ) + self._ayposition = DisplayWaveview1CursorCursor1ScreenAyposition( + device, f"{self._cmd_syntax}:AYPOSition" + ) + self._bxposition = DisplayWaveview1CursorCursor1ScreenBxposition( + device, f"{self._cmd_syntax}:BXPOSition" + ) + self._byposition = DisplayWaveview1CursorCursor1ScreenByposition( + device, f"{self._cmd_syntax}:BYPOSition" + ) + + @property + def axposition(self) -> DisplayWaveview1CursorCursor1ScreenAxposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition`` command. + + Description: + - Sets or queries the horizontal cursor A position of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition? + ``` + + Info: + - ```` is the horizontal cursor A position of the specified cursor in the specified + Waveform View. + """ + return self._axposition + + @property + def ayposition(self) -> DisplayWaveview1CursorCursor1ScreenAyposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition? + ``` + + Info: + - ```` the vertical cursor A position of the specified cursor in the specified + Waveform View. + """ + return self._ayposition + + @property + def bxposition(self) -> DisplayWaveview1CursorCursor1ScreenBxposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition`` command. + + Description: + - Sets or queries the horizontal cursor B position of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition? + ``` + + Info: + - ```` is the horizontal cursor B position of the specified cursor in the specified + Waveform View. + """ + return self._bxposition + + @property + def byposition(self) -> DisplayWaveview1CursorCursor1ScreenByposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition? + ``` + + Info: + - ```` the vertical cursor B position of the specified cursor in the specified + Waveform View. + """ + return self._byposition + + +class DisplayWaveview1CursorCursor1Oneoverdeltatvalue(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE`` command. + + Description: + - This query returns the one over delta T cursor readout value of the specified cursor in + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE? + ``` + """ + + +class DisplayWaveview1CursorCursor1Mode(SCPICmdWrite): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:MODe`` command. + + Description: + - Sets or queries the cursor tracking mode of the specified cursor in the specified Waveform + View. + + Usage: + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:MODe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:MODe {INDEPENDENT|TRACK} + ``` + + Info: + - ``TRACK`` ties the navigational functionality of the two cursors together. For cursor 1 + adjustments, this ties the movement of the two cursors together; however, cursor 2 + continues to move independently of cursor 1. + - ``INDEPENDENT`` allows independent adjustment of the two cursors. + """ + + +class DisplayWaveview1CursorCursor1HbarsDelta(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa`` command. + + Description: + - This command queries the delta V cursor readout value of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa? + ``` + """ + + +class DisplayWaveview1CursorCursor1HbarsBunits(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts`` command. + + Description: + - This command queries the cursor B vertical units of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts? + ``` + """ + + +class DisplayWaveview1CursorCursor1HbarsBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition`` command. + + Description: + - Sets or queries the HBARs vertical B position of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition? + ``` + + Info: + - ```` is the vertical cursor B position of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursor1HbarsAunits(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts`` command. + + Description: + - This command queries the cursor A vertical units of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts? + ``` + + Info: + - ```` is the cursor A vertical units of the specified cursor in the specified + Waveform View. + """ + + +class DisplayWaveview1CursorCursor1HbarsAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition`` command. + + Description: + - Sets or queries the HBARs vertical A position of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition? + ``` + + Info: + - ```` is the vertical cursor A position of the specified cursor in the specified + Waveform View. 0.0 divisions is center, 5.0 top of the waveview, and -5.0 the bottom of + the waveview. + """ + + +class DisplayWaveview1CursorCursor1Hbars(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayWaveview1CursorCursor1HbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._aunits = DisplayWaveview1CursorCursor1HbarsAunits( + device, f"{self._cmd_syntax}:AUNIts" + ) + self._bposition = DisplayWaveview1CursorCursor1HbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._bunits = DisplayWaveview1CursorCursor1HbarsBunits( + device, f"{self._cmd_syntax}:BUNIts" + ) + self._delta = DisplayWaveview1CursorCursor1HbarsDelta(device, f"{self._cmd_syntax}:DELTa") + + @property + def aposition(self) -> DisplayWaveview1CursorCursor1HbarsAposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition`` command. + + Description: + - Sets or queries the HBARs vertical A position of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition? + ``` + + Info: + - ```` is the vertical cursor A position of the specified cursor in the specified + Waveform View. 0.0 divisions is center, 5.0 top of the waveview, and -5.0 the bottom + of the waveview. + """ + return self._aposition + + @property + def aunits(self) -> DisplayWaveview1CursorCursor1HbarsAunits: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts`` command. + + Description: + - This command queries the cursor A vertical units of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts? + ``` + + Info: + - ```` is the cursor A vertical units of the specified cursor in the specified + Waveform View. + """ + return self._aunits + + @property + def bposition(self) -> DisplayWaveview1CursorCursor1HbarsBposition: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition`` command. + + Description: + - Sets or queries the HBARs vertical B position of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition? + ``` + + Info: + - ```` is the vertical cursor B position of the specified cursor in the specified + Waveform View. + """ + return self._bposition + + @property + def bunits(self) -> DisplayWaveview1CursorCursor1HbarsBunits: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts`` command. + + Description: + - This command queries the cursor B vertical units of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts? + ``` + """ + return self._bunits + + @property + def delta(self) -> DisplayWaveview1CursorCursor1HbarsDelta: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa`` command. + + Description: + - This command queries the delta V cursor readout value of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa? + ``` + """ + return self._delta + + +class DisplayWaveview1CursorCursor1Function(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion`` command. + + Description: + - This command sets or queries the cursor type of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion {SCREEN|WAVEFORM|VBArs|HBArs} + - DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion? + ``` + + Info: + - ``HBArs`` specifies horizontal bar cursors, which measure in vertical units. + - ``VBArs`` specifies vertical bar cursors, which measure in horizontal units. + - ``SCREEN`` specifies both horizontal and vertical bar cursors, which measure in horizontal + and vertical units specified by the Cursor 1 and Cursor 2 Sources. Use these cursors to + measure anywhere in the waveform display area. + - ``WAVEform`` specifies paired or split cursors in YT display format for measuring waveform + amplitude and time. In XY and XYZ format, these cursors indicate the amplitude positions + of an XY pair (Ch1 vs Ch2 voltage, where Ch1 is the X axis and Ch2 is the Y axis) relative + to the trigger. + """ + + +class DisplayWaveview1CursorCursor1Ddt(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:DDT`` command. + + Description: + - This query returns the delta V over delta T cursor readout value of the specified cursor + in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:DDT?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:DDT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:DDT? + ``` + """ + + +class DisplayWaveview1CursorCursor1Bsource(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce`` command. + + Description: + - This command sets or queries the cursor B source of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce {CH|BUS|MATH|REF|PLOT} + - DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as source. + - ``MATH`` specifies a math channel as source. + - ``BUS`` specifies a bus as source. + - ``REF`` specifies a reference waveform as the source. + - ``PLOT`` specifies a plot as the source. + """ + + +class DisplayWaveview1CursorCursor1Asource(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce`` command. + + Description: + - This command sets or queries the cursor A source of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce {AUTO|CH|BUS|MATH|REF|PLOT} + - DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce? + ``` + + Info: + - ``AUTO`` specifies to use the selected source. + - ``CH`` specifies an analog channel as source. + - ``MATH`` specifies a math channel as source. + - ``BUS`` specifies a bus as source. + - ``REF`` specifies a reference waveform as the source. + - ``PLOT`` specifies a plot as the source. + """ + + +# pylint: disable=too-many-instance-attributes +class DisplayWaveview1CursorCursor1(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR1`` command. + + Description: + - This query returns the cursor parameters for the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1? + ``` + + Properties: + - ``.asource``: The ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce`` command. + - ``.bsource``: The ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce`` command. + - ``.ddt``: The ``DISplay:WAVEView1:CURSor:CURSOR1:DDT`` command. + - ``.function``: The ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion`` command. + - ``.hbars``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs`` command tree. + - ``.mode``: The ``DISplay:WAVEView1:CURSor:CURSOR1:MODe`` command. + - ``.oneoverdeltatvalue``: The ``DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE`` + command. + - ``.screen``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN`` command tree. + - ``.splitmode``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE`` command. + - ``.state``: The ``DISplay:WAVEView1:CURSor:CURSOR1:STATE`` command. + - ``.vbars``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs`` command tree. + - ``.waveform``: The ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._asource = DisplayWaveview1CursorCursor1Asource(device, f"{self._cmd_syntax}:ASOUrce") + self._bsource = DisplayWaveview1CursorCursor1Bsource(device, f"{self._cmd_syntax}:BSOUrce") + self._ddt = DisplayWaveview1CursorCursor1Ddt(device, f"{self._cmd_syntax}:DDT") + self._function = DisplayWaveview1CursorCursor1Function( + device, f"{self._cmd_syntax}:FUNCtion" + ) + self._hbars = DisplayWaveview1CursorCursor1Hbars(device, f"{self._cmd_syntax}:HBArs") + self._mode = DisplayWaveview1CursorCursor1Mode(device, f"{self._cmd_syntax}:MODe") + self._oneoverdeltatvalue = DisplayWaveview1CursorCursor1Oneoverdeltatvalue( + device, f"{self._cmd_syntax}:ONEOVERDELTATVALUE" + ) + self._screen = DisplayWaveview1CursorCursor1Screen(device, f"{self._cmd_syntax}:SCREEN") + self._splitmode = DisplayWaveview1CursorCursor1Splitmode( + device, f"{self._cmd_syntax}:SPLITMODE" + ) + self._state = DisplayWaveview1CursorCursor1State(device, f"{self._cmd_syntax}:STATE") + self._vbars = DisplayWaveview1CursorCursor1Vbars(device, f"{self._cmd_syntax}:VBArs") + self._waveform = DisplayWaveview1CursorCursor1Waveform( + device, f"{self._cmd_syntax}:WAVEform" + ) + + @property + def asource(self) -> DisplayWaveview1CursorCursor1Asource: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce`` command. + + Description: + - This command sets or queries the cursor A source of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce {AUTO|CH|BUS|MATH|REF|PLOT} + - DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce? + ``` + + Info: + - ``AUTO`` specifies to use the selected source. + - ``CH`` specifies an analog channel as source. + - ``MATH`` specifies a math channel as source. + - ``BUS`` specifies a bus as source. + - ``REF`` specifies a reference waveform as the source. + - ``PLOT`` specifies a plot as the source. + """ + return self._asource + + @property + def bsource(self) -> DisplayWaveview1CursorCursor1Bsource: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce`` command. + + Description: + - This command sets or queries the cursor B source of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce {CH|BUS|MATH|REF|PLOT} + - DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as source. + - ``MATH`` specifies a math channel as source. + - ``BUS`` specifies a bus as source. + - ``REF`` specifies a reference waveform as the source. + - ``PLOT`` specifies a plot as the source. + """ + return self._bsource + + @property + def ddt(self) -> DisplayWaveview1CursorCursor1Ddt: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:DDT`` command. + + Description: + - This query returns the delta V over delta T cursor readout value of the specified + cursor in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1:DDT?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:DDT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:DDT? + ``` + """ + return self._ddt + + @property + def function(self) -> DisplayWaveview1CursorCursor1Function: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion`` command. + + Description: + - This command sets or queries the cursor type of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion {SCREEN|WAVEFORM|VBArs|HBArs} + - DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion? + ``` + + Info: + - ``HBArs`` specifies horizontal bar cursors, which measure in vertical units. + - ``VBArs`` specifies vertical bar cursors, which measure in horizontal units. + - ``SCREEN`` specifies both horizontal and vertical bar cursors, which measure in + horizontal and vertical units specified by the Cursor 1 and Cursor 2 Sources. Use + these cursors to measure anywhere in the waveform display area. + - ``WAVEform`` specifies paired or split cursors in YT display format for measuring + waveform amplitude and time. In XY and XYZ format, these cursors indicate the + amplitude positions of an XY pair (Ch1 vs Ch2 voltage, where Ch1 is the X axis and Ch2 + is the Y axis) relative to the trigger. + """ + return self._function + + @property + def hbars(self) -> DisplayWaveview1CursorCursor1Hbars: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs:DELTa`` command. + """ + return self._hbars + + @property + def mode(self) -> DisplayWaveview1CursorCursor1Mode: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:MODe`` command. + + Description: + - Sets or queries the cursor tracking mode of the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:MODe value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:MODe {INDEPENDENT|TRACK} + ``` + + Info: + - ``TRACK`` ties the navigational functionality of the two cursors together. For cursor + 1 adjustments, this ties the movement of the two cursors together; however, cursor 2 + continues to move independently of cursor 1. + - ``INDEPENDENT`` allows independent adjustment of the two cursors. + """ + return self._mode + + @property + def oneoverdeltatvalue(self) -> DisplayWaveview1CursorCursor1Oneoverdeltatvalue: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE`` command. + + Description: + - This query returns the one over delta T cursor readout value of the specified cursor + in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE? + ``` + """ + return self._oneoverdeltatvalue + + @property + def screen(self) -> DisplayWaveview1CursorCursor1Screen: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.axposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AXPOSition`` command. + - ``.ayposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:AYPOSition`` command. + - ``.bxposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BXPOSition`` command. + - ``.byposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN:BYPOSition`` command. + """ + return self._screen + + @property + def splitmode(self) -> DisplayWaveview1CursorCursor1Splitmode: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE`` command. + + Description: + - This command sets or queries whether both cursors have the same or different sources. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE {SAME|SPLIT} + - DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE? + ``` + + Info: + - ``SAME`` specifies both cursors have the same source. + - ``SPLIT`` specifies the cursors have different sources. + """ + return self._splitmode + + @property + def state(self) -> DisplayWaveview1CursorCursor1State: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:STATE`` command. + + Description: + - This command sets or queries the visible state of the specified cursor in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1:STATE {ON|OFF|} + - DISplay:WAVEView1:CURSor:CURSOR1:STATE? + ``` + + Info: + - ```` = 0 disables the specified cursor in the specified Waveform View; any other + value turns this feature on. + - ``OFF`` disables the specified cursor in the specified Waveform View. + - ``ON`` enables the specified cursor in the specified Waveform View. + """ + return self._state + + @property + def vbars(self) -> DisplayWaveview1CursorCursor1Vbars: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:APOSition`` command. + - ``.bposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:BPOSition`` command. + - ``.delta``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:DELTa`` command. + - ``.units``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs:UNIts`` command. + """ + return self._vbars + + @property + def waveform(self) -> DisplayWaveview1CursorCursor1Waveform: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:APOSition`` command. + - ``.bposition``: The ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform:BPOSition`` command. + """ + return self._waveform + + +class DisplayWaveview1CursorCursor(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor:CURSOR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.waveform``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._waveform = DisplayWaveview1CursorCursorWaveform( + device, f"{self._cmd_syntax}:WAVEform" + ) + + @property + def waveform(self) -> DisplayWaveview1CursorCursorWaveform: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.all``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:ALL`` command tree. + - ``.avposition``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:AVPOSition`` command. + - ``.bvposition``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform:BVPOSition`` command. + """ + return self._waveform + + +class DisplayWaveview1Cursor(SCPICmdRead): + """The ``DISplay:WAVEView1:CURSor`` command. + + Description: + - This query returns the cursor parameters for the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CURSor?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor? + ``` + + Properties: + - ``.cursor``: The ``DISplay:WAVEView1:CURSor:CURSOR`` command tree. + - ``.cursor1``: The ``DISplay:WAVEView1:CURSor:CURSOR1`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cursor = DisplayWaveview1CursorCursor(device, f"{self._cmd_syntax}:CURSOR") + self._cursor1 = DisplayWaveview1CursorCursor1(device, f"{self._cmd_syntax}:CURSOR1") + + @property + def cursor(self) -> DisplayWaveview1CursorCursor: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.waveform``: The ``DISplay:WAVEView1:CURSor:CURSOR:WAVEform`` command tree. + """ + return self._cursor + + @property + def cursor1(self) -> DisplayWaveview1CursorCursor1: + """Return the ``DISplay:WAVEView1:CURSor:CURSOR1`` command. + + Description: + - This query returns the cursor parameters for the specified cursor in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor:CURSOR1?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CURSor:CURSOR1?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor:CURSOR1? + ``` + + Sub-properties: + - ``.asource``: The ``DISplay:WAVEView1:CURSor:CURSOR1:ASOUrce`` command. + - ``.bsource``: The ``DISplay:WAVEView1:CURSor:CURSOR1:BSOUrce`` command. + - ``.ddt``: The ``DISplay:WAVEView1:CURSor:CURSOR1:DDT`` command. + - ``.function``: The ``DISplay:WAVEView1:CURSor:CURSOR1:FUNCtion`` command. + - ``.hbars``: The ``DISplay:WAVEView1:CURSor:CURSOR1:HBArs`` command tree. + - ``.mode``: The ``DISplay:WAVEView1:CURSor:CURSOR1:MODe`` command. + - ``.oneoverdeltatvalue``: The ``DISplay:WAVEView1:CURSor:CURSOR1:ONEOVERDELTATVALUE`` + command. + - ``.screen``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SCREEN`` command tree. + - ``.splitmode``: The ``DISplay:WAVEView1:CURSor:CURSOR1:SPLITMODE`` command. + - ``.state``: The ``DISplay:WAVEView1:CURSor:CURSOR1:STATE`` command. + - ``.vbars``: The ``DISplay:WAVEView1:CURSor:CURSOR1:VBArs`` command tree. + - ``.waveform``: The ``DISplay:WAVEView1:CURSor:CURSOR1:WAVEform`` command tree. + """ + return self._cursor1 + + +class DisplayWaveview1ChannelDallVerticalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CH_DALL:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified digital channel in the + specified Waveform View in divisions. The position ranges from 5.0 to -5.0 divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CH_DALL:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH_DALL:VERTical:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH_DALL:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH_DALL:VERTical:POSition + - DISplay:WAVEView1:CH_DALL:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position of the specified digital channel in the specified + Waveform View in divisions. + """ + + +class DisplayWaveview1ChannelDallVertical(SCPICmdRead): + """The ``DISplay:WAVEView1:CH_DALL:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_DALL:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH_DALL:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:CH_DALL:VERTical:POSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1ChannelDallVerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + + @property + def position(self) -> DisplayWaveview1ChannelDallVerticalPosition: + """Return the ``DISplay:WAVEView1:CH_DALL:VERTical:POSition`` command. + + Description: + - This command sets or queries the vertical position of the specified digital channel in + the specified Waveform View in divisions. The position ranges from 5.0 to -5.0 + divisions. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CH_DALL:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH_DALL:VERTical:POSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH_DALL:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH_DALL:VERTical:POSition + - DISplay:WAVEView1:CH_DALL:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position of the specified digital channel in the specified + Waveform View in divisions. + """ + return self._position + + +class DisplayWaveview1ChannelDallState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CH_DALL:STATE`` command. + + Description: + - This command sets or queries the display state of the specified digital channel in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_DALL:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH_DALL:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH_DALL:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH_DALL:STATE {ON|OFF|} + - DISplay:WAVEView1:CH_DALL:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified channels on the specified Waveform + View; any other value turns this feature on. + - ``OFF`` disables the display of the specified channels on the specified Waveform View. + - ``ON`` enables the display of the specified channels on the specified Waveform View. + """ + + +class DisplayWaveview1ChannelDall(SCPICmdRead): + """The ``DISplay:WAVEView1:CH_DALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_DALL?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH_DALL?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:WAVEView1:CH_DALL:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:CH_DALL:VERTical`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayWaveview1ChannelDallState(device, f"{self._cmd_syntax}:STATE") + self._vertical = DisplayWaveview1ChannelDallVertical(device, f"{self._cmd_syntax}:VERTical") + + @property + def state(self) -> DisplayWaveview1ChannelDallState: + """Return the ``DISplay:WAVEView1:CH_DALL:STATE`` command. + + Description: + - This command sets or queries the display state of the specified digital channel in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_DALL:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH_DALL:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH_DALL:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH_DALL:STATE {ON|OFF|} + - DISplay:WAVEView1:CH_DALL:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified channels on the specified Waveform + View; any other value turns this feature on. + - ``OFF`` disables the display of the specified channels on the specified Waveform View. + - ``ON`` enables the display of the specified channels on the specified Waveform View. + """ + return self._state + + @property + def vertical(self) -> DisplayWaveview1ChannelDallVertical: + """Return the ``DISplay:WAVEView1:CH_DALL:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_DALL:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH_DALL:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:CH_DALL:VERTical:POSition`` command. + """ + return self._vertical + + +class DisplayWaveview1ChannelDigitalBitState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CH_D:STATE`` command. + + Description: + - This command sets or queries the display state of the specified digital channel in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_D:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH_D:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH_D:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH_D:STATE {ON|OFF|} + - DISplay:WAVEView1:CH_D:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified channel on the specified Waveform + View; any other value turns this feature on. + - ``OFF`` disables the display of the specified channel on the specified Waveform View. + - ``ON`` enables the display of the specified channel on the specified Waveform View. + """ + + +class DisplayWaveview1ChannelDigitalBit(ValidatedDigitalBit, SCPICmdRead): + """The ``DISplay:WAVEView1:CH_D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_D?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH_D?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:WAVEView1:CH_D:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayWaveview1ChannelDigitalBitState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> DisplayWaveview1ChannelDigitalBitState: + """Return the ``DISplay:WAVEView1:CH_D:STATE`` command. + + Description: + - This command sets or queries the display state of the specified digital channel in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_D:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH_D:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH_D:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH_D:STATE {ON|OFF|} + - DISplay:WAVEView1:CH_D:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified channel on the specified Waveform + View; any other value turns this feature on. + - ``OFF`` disables the display of the specified channel on the specified Waveform View. + - ``ON`` enables the display of the specified channel on the specified Waveform View. + """ + return self._state + + +class DisplayWaveview1ChannelVerticalScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CH:VERTical:SCAle`` command. + + Description: + - Sets or queries the vertical scale of the specified channel in volts per division within + the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH:VERTical:SCAle?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH:VERTical:SCAle?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH:VERTical:SCAle + - DISplay:WAVEView1:CH:VERTical:SCAle? + ``` + + Info: + - ```` is the vertical scale of the specified channel. + """ + + +class DisplayWaveview1ChannelVerticalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CH:VERTical:POSition`` command. + + Description: + - Sets or queries the vertical position of the specified channel in the specified Waveform + View in divisions. 0.0 divisions is center, 5.0 top of the window, and -5.0 the bottom of + the window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH:VERTical:POSition?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH:VERTical:POSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH:VERTical:POSition + - DISplay:WAVEView1:CH:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position in divisions. 0.0 divisions is center, 5.0 top of the + window, and -5.0 the bottom of the window. + """ + + +class DisplayWaveview1ChannelVertical(SCPICmdRead): + """The ``DISplay:WAVEView1:CH:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH:VERTical?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH:VERTical?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:CH:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:CH:VERTical:SCAle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1ChannelVerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._scale = DisplayWaveview1ChannelVerticalScale(device, f"{self._cmd_syntax}:SCAle") + + @property + def position(self) -> DisplayWaveview1ChannelVerticalPosition: + """Return the ``DISplay:WAVEView1:CH:VERTical:POSition`` command. + + Description: + - Sets or queries the vertical position of the specified channel in the specified + Waveform View in divisions. 0.0 divisions is center, 5.0 top of the window, and -5.0 + the bottom of the window. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CH:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH:VERTical:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH:VERTical:POSition + - DISplay:WAVEView1:CH:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position in divisions. 0.0 divisions is center, 5.0 top of + the window, and -5.0 the bottom of the window. + """ + return self._position + + @property + def scale(self) -> DisplayWaveview1ChannelVerticalScale: + """Return the ``DISplay:WAVEView1:CH:VERTical:SCAle`` command. + + Description: + - Sets or queries the vertical scale of the specified channel in volts per division + within the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:CH:VERTical:SCAle?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH:VERTical:SCAle?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH:VERTical:SCAle value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH:VERTical:SCAle + - DISplay:WAVEView1:CH:VERTical:SCAle? + ``` + + Info: + - ```` is the vertical scale of the specified channel. + """ + return self._scale + + +class DisplayWaveview1ChannelState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:CH:STATE`` command. + + Description: + - Sets or queries the state of the specified channel in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView1:CH:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH:STATE {ON|OFF|} + - DISplay:WAVEView1:CH:STATE? + ``` + + Info: + - ```` = 0 disables the specified channel on the specified Waveform View; any other + value turns this feature on. + - ``OFF`` disables the display the specified channel on the specified Waveform View. + - ``ON`` enables the specified channel on the specified Waveform View. + """ + + +class DisplayWaveview1Channel(ValidatedChannel, SCPICmdRead): + """The ``DISplay:WAVEView1:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:WAVEView1:CH:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:CH:VERTical`` command tree. + - ``.d``: The ``DISplay:WAVEView1:CH_D`` command tree. + - ``.dall``: The ``DISplay:WAVEView1:CH_DALL`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayWaveview1ChannelState(device, f"{self._cmd_syntax}:STATE") + self._vertical = DisplayWaveview1ChannelVertical(device, f"{self._cmd_syntax}:VERTical") + self._d: Dict[int, DisplayWaveview1ChannelDigitalBit] = DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1ChannelDigitalBit(device, f"{self._cmd_syntax}_D{x}") + ) + self._dall = DisplayWaveview1ChannelDall(device, f"{self._cmd_syntax}_DALL") + + @property + def state(self) -> DisplayWaveview1ChannelState: + """Return the ``DISplay:WAVEView1:CH:STATE`` command. + + Description: + - Sets or queries the state of the specified channel in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:CH:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CH:STATE {ON|OFF|} + - DISplay:WAVEView1:CH:STATE? + ``` + + Info: + - ```` = 0 disables the specified channel on the specified Waveform View; any other + value turns this feature on. + - ``OFF`` disables the display the specified channel on the specified Waveform View. + - ``ON`` enables the specified channel on the specified Waveform View. + """ + return self._state + + @property + def vertical(self) -> DisplayWaveview1ChannelVertical: + """Return the ``DISplay:WAVEView1:CH:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:CH:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:CH:VERTical:POSition`` command. + - ``.scale``: The ``DISplay:WAVEView1:CH:VERTical:SCAle`` command. + """ + return self._vertical + + @property + def d(self) -> Dict[int, DisplayWaveview1ChannelDigitalBit]: + """Return the ``DISplay:WAVEView1:CH_D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_D?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH_D?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:WAVEView1:CH_D:STATE`` command. + """ + return self._d + + @property + def dall(self) -> DisplayWaveview1ChannelDall: + """Return the ``DISplay:WAVEView1:CH_DALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH_DALL?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH_DALL?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:WAVEView1:CH_DALL:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:CH_DALL:VERTical`` command tree. + """ + return self._dall + + +class DisplayWaveview1BusBItemVerticalPosition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:BUS:B:VERTical:POSition`` command. + + Description: + - Sets or queries the vertical position of the specified bus in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:BUS:B:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:BUS:B:VERTical:POSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:BUS:B:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:BUS:B:VERTical:POSition + - DISplay:WAVEView1:BUS:B:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position of the specified bus. + """ + + +class DisplayWaveview1BusBItemVertical(SCPICmdRead): + """The ``DISplay:WAVEView1:BUS:B:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:BUS:B:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:BUS:B:VERTical?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.position``: The ``DISplay:WAVEView1:BUS:B:VERTical:POSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = DisplayWaveview1BusBItemVerticalPosition( + device, f"{self._cmd_syntax}:POSition" + ) + + @property + def position(self) -> DisplayWaveview1BusBItemVerticalPosition: + """Return the ``DISplay:WAVEView1:BUS:B:VERTical:POSition`` command. + + Description: + - Sets or queries the vertical position of the specified bus in the specified Waveform + View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:WAVEView1:BUS:B:VERTical:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:BUS:B:VERTical:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:BUS:B:VERTical:POSition value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:BUS:B:VERTical:POSition + - DISplay:WAVEView1:BUS:B:VERTical:POSition? + ``` + + Info: + - ```` is the vertical position of the specified bus. + """ + return self._position + + +class DisplayWaveview1BusBItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:WAVEView1:BUS:B:STATE`` command. + + Description: + - Sets or queries the state of the specified bus in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:BUS:B:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:BUS:B:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:BUS:B:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:BUS:B:STATE {OFF|ON|0|1} + - DISplay:WAVEView1:BUS:B:STATE? + ``` + + Info: + - ``0`` turns specified bus off. + - ``1`` turns the specified bus on. + - ``ON`` turns the specified bus on. + - ``OFF`` turns specified bus off. + """ + + +class DisplayWaveview1BusBItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:WAVEView1:BUS:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:BUS:B?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:BUS:B?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:WAVEView1:BUS:B:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:BUS:B:VERTical`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayWaveview1BusBItemState(device, f"{self._cmd_syntax}:STATE") + self._vertical = DisplayWaveview1BusBItemVertical(device, f"{self._cmd_syntax}:VERTical") + + @property + def state(self) -> DisplayWaveview1BusBItemState: + """Return the ``DISplay:WAVEView1:BUS:B:STATE`` command. + + Description: + - Sets or queries the state of the specified bus in the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:BUS:B:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:BUS:B:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:WAVEView1:BUS:B:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:BUS:B:STATE {OFF|ON|0|1} + - DISplay:WAVEView1:BUS:B:STATE? + ``` + + Info: + - ``0`` turns specified bus off. + - ``1`` turns the specified bus on. + - ``ON`` turns the specified bus on. + - ``OFF`` turns specified bus off. + """ + return self._state + + @property + def vertical(self) -> DisplayWaveview1BusBItemVertical: + """Return the ``DISplay:WAVEView1:BUS:B:VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:BUS:B:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:BUS:B:VERTical?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``DISplay:WAVEView1:BUS:B:VERTical:POSition`` command. + """ + return self._vertical + + +class DisplayWaveview1Bus(SCPICmdRead): + """The ``DISplay:WAVEView1:BUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:BUS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:BUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.b``: The ``DISplay:WAVEView1:BUS:B`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._b: Dict[int, DisplayWaveview1BusBItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1BusBItem(device, f"{self._cmd_syntax}:B{x}") + ) + + @property + def b(self) -> Dict[int, DisplayWaveview1BusBItem]: + """Return the ``DISplay:WAVEView1:BUS:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:BUS:B?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:BUS:B?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:WAVEView1:BUS:B:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:BUS:B:VERTical`` command tree. + """ + return self._b + + +# pylint: disable=too-many-instance-attributes +class DisplayWaveview1(SCPICmdRead): + """The ``DISplay:WAVEView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bus``: The ``DISplay:WAVEView1:BUS`` command tree. + - ``.ch``: The ``DISplay:WAVEView1:CH`` command tree. + - ``.cursor``: The ``DISplay:WAVEView1:CURSor`` command. + - ``.filter``: The ``DISplay:WAVEView1:FILTer`` command. + - ``.graticule``: The ``DISplay:WAVEView1:GRAticule`` command. + - ``.intensity``: The ``DISplay:WAVEView1:INTENSITy`` command tree. + - ``.math``: The ``DISplay:WAVEView1:MATH`` command tree. + - ``.plot``: The ``DISplay:WAVEView1:PLOT`` command tree. + - ``.ref``: The ``DISplay:WAVEView1:REF`` command tree. + - ``.rf_frequency``: The ``DISplay:WAVEView1:RF_FREQuency`` command tree. + - ``.rf_magnitude``: The ``DISplay:WAVEView1:RF_MAGnitude`` command tree. + - ``.rf_phase``: The ``DISplay:WAVEView1:RF_PHASe`` command tree. + - ``.style``: The ``DISplay:WAVEView1:STYle`` command. + - ``.viewstyle``: The ``DISplay:WAVEView1:VIEWStyle`` command. + - ``.zoom``: The ``DISplay:WAVEView1:ZOOM`` command. + - ``.refx``: The ``DISplay:WAVEView1:REF`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bus = DisplayWaveview1Bus(device, f"{self._cmd_syntax}:BUS") + self._ch: Dict[int, DisplayWaveview1Channel] = DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1Channel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._cursor = DisplayWaveview1Cursor(device, f"{self._cmd_syntax}:CURSor") + self._filter = DisplayWaveview1Filter(device, f"{self._cmd_syntax}:FILTer") + self._graticule = DisplayWaveview1Graticule(device, f"{self._cmd_syntax}:GRAticule") + self._intensity = DisplayWaveview1Intensity(device, f"{self._cmd_syntax}:INTENSITy") + self._math = DisplayWaveview1Math(device, f"{self._cmd_syntax}:MATH") + self._plot = DisplayWaveview1Plot(device, f"{self._cmd_syntax}:PLOT") + self._rf_frequency: Dict[int, DisplayWaveview1RfFrequencyItem] = ( + DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1RfFrequencyItem( + device, f"{self._cmd_syntax}:RF_FREQuency{x}" + ) + ) + ) + self._rf_magnitude: Dict[int, DisplayWaveview1RfMagnitudeItem] = ( + DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1RfMagnitudeItem( + device, f"{self._cmd_syntax}:RF_MAGnitude{x}" + ) + ) + ) + self._rf_phase: Dict[int, DisplayWaveview1RfPhaseItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1RfPhaseItem(device, f"{self._cmd_syntax}:RF_PHASe{x}") + ) + self._style = DisplayWaveview1Style(device, f"{self._cmd_syntax}:STYle") + self._viewstyle = DisplayWaveview1Viewstyle(device, f"{self._cmd_syntax}:VIEWStyle") + self._zoom = DisplayWaveview1Zoom(device, f"{self._cmd_syntax}:ZOOM") + self._ref = DisplayWaveview1Ref(device, f"{self._cmd_syntax}:REF") + self._refx: Dict[int, DisplayWaveview1RefItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayWaveview1RefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + + @property + def bus(self) -> DisplayWaveview1Bus: + """Return the ``DISplay:WAVEView1:BUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:BUS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:BUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.b``: The ``DISplay:WAVEView1:BUS:B`` command tree. + """ + return self._bus + + @property + def ch(self) -> Dict[int, DisplayWaveview1Channel]: + """Return the ``DISplay:WAVEView1:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CH?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:WAVEView1:CH:STATE`` command. + - ``.vertical``: The ``DISplay:WAVEView1:CH:VERTical`` command tree. + - ``.d``: The ``DISplay:WAVEView1:CH_D`` command tree. + - ``.dall``: The ``DISplay:WAVEView1:CH_DALL`` command tree. + """ + return self._ch + + @property + def cursor(self) -> DisplayWaveview1Cursor: + """Return the ``DISplay:WAVEView1:CURSor`` command. + + Description: + - This query returns the cursor parameters for the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:CURSor?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:CURSor? + ``` + + Sub-properties: + - ``.cursor``: The ``DISplay:WAVEView1:CURSor:CURSOR`` command tree. + - ``.cursor1``: The ``DISplay:WAVEView1:CURSor:CURSOR1`` command. + """ + return self._cursor + + @property + def filter(self) -> DisplayWaveview1Filter: + """Return the ``DISplay:WAVEView1:FILTer`` command. + + Description: + - This command sets or queries the type of interpolation filter for the display. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:FILTer?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:FILTer?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView1:FILTer value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:FILTer {SINX|LINear} + - DISplay:WAVEView1:FILTer? + ``` + + Info: + - ``LINEAr`` specifies linear interpolation, where acquired points are connected with + straight lines. + - ``SINX`` specifies sin(x)/x interpolation, where acquired points are fit to a curve. + """ + return self._filter + + @property + def graticule(self) -> DisplayWaveview1Graticule: + """Return the ``DISplay:WAVEView1:GRAticule`` command. + + Description: + - This command selects or queries the type of graticule that is displayed. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:GRAticule?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:GRAticule?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView1:GRAticule value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:GRAticule {GRId|TIMe|FULl|NONe} + - DISplay:WAVEView1:GRAticule? + ``` + + Info: + - ``GRId`` specifies a frame and grid only. + - ``TIMe`` specifies a time graticule only. + - ``FULl`` specifies a frame, a grid and cross hairs. + - ``NONe`` specified no graticule. + """ + return self._graticule + + @property + def intensity(self) -> DisplayWaveview1Intensity: + """Return the ``DISplay:WAVEView1:INTENSITy`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:INTENSITy?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:INTENSITy?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.graticule``: The ``DISplay:WAVEView1:INTENSITy:GRATicule`` command. + - ``.waveform``: The ``DISplay:WAVEView1:INTENSITy:WAVEform`` command. + """ + return self._intensity + + @property + def math(self) -> DisplayWaveview1Math: + """Return the ``DISplay:WAVEView1:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:MATH?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.math``: The ``DISplay:WAVEView1:MATH:MATH`` command tree. + """ + return self._math + + @property + def plot(self) -> DisplayWaveview1Plot: + """Return the ``DISplay:WAVEView1:PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:PLOT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.plot``: The ``DISplay:WAVEView1:PLOT:PLOT`` command tree. + """ + return self._plot + + @property + def rf_frequency(self) -> Dict[int, DisplayWaveview1RfFrequencyItem]: + """Return the ``DISplay:WAVEView1:RF_FREQuency`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:RF_FREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_FREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``RF_FREQuency`` specifies the number of the Frequency vs. Time waveform. + + Sub-properties: + - ``.vertical``: The ``DISplay:WAVEView1:RF_FREQuency:VERTical`` command tree. + """ + return self._rf_frequency + + @property + def rf_magnitude(self) -> Dict[int, DisplayWaveview1RfMagnitudeItem]: + """Return the ``DISplay:WAVEView1:RF_MAGnitude`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:RF_MAGnitude?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:WAVEView1:RF_MAGnitude?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``RF_MAGnitude`` specifies the number of the Magnitude vs. Time Frequency waveform. + + Sub-properties: + - ``.vertical``: The ``DISplay:WAVEView1:RF_MAGnitude:VERTical`` command tree. + """ + return self._rf_magnitude + + @property + def rf_phase(self) -> Dict[int, DisplayWaveview1RfPhaseItem]: + """Return the ``DISplay:WAVEView1:RF_PHASe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:RF_PHASe?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:RF_PHASe?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``RF_PHASe`` specifies the number of the Phase vs. Time Frequency waveform. + + Sub-properties: + - ``.vertical``: The ``DISplay:WAVEView1:RF_PHASe:VERTical`` command tree. + """ + return self._rf_phase + + @property + def style(self) -> DisplayWaveview1Style: + """Return the ``DISplay:WAVEView1:STYle`` command. + + Description: + - This command sets or queries how the waveforms are displayed for analysis mode. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:STYle?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:STYle?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView1:STYle value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:STYle {VECtors|DOTsonly} + - DISplay:WAVEView1:STYle? + ``` + + Info: + - ``DOTs`` displays individual data points. New points immediately replace old ones. + - ``VECtors`` connects adjacent data points. New points immediately replace old ones. + """ + return self._style + + @property + def viewstyle(self) -> DisplayWaveview1Viewstyle: + """Return the ``DISplay:WAVEView1:VIEWStyle`` command. + + Description: + - The command sets or queries the waveform layout style used by the display. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:VIEWStyle?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:VIEWStyle?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView1:VIEWStyle value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:VIEWStyle {OVErlay|STAcked} + - DISplay:WAVEView1:VIEWStyle? + ``` + + Info: + - ``OVErlay`` specifies that the display view style used by the specified Waveform View + is overlay. + - ``STAcked`` specifies that the display view style used by the specified Waveform View + is stacked. + """ + return self._viewstyle + + @property + def zoom(self) -> DisplayWaveview1Zoom: + """Return the ``DISplay:WAVEView1:ZOOM`` command. + + Description: + - This query returns the zoom parameters of the specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:ZOOM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:ZOOM?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:WAVEView1:ZOOM? + ``` + + Sub-properties: + - ``.zoom1``: The ``DISplay:WAVEView1:ZOOM:ZOOM1`` command. + """ + return self._zoom + + @property + def ref(self) -> DisplayWaveview1Ref: + """Return the ``DISplay:WAVEView1:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ref``: The ``DISplay:WAVEView1:REF:REF`` command tree. + """ + return self._ref + + @property + def refx(self) -> Dict[int, DisplayWaveview1RefItem]: + """Return the ``DISplay:WAVEView1:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1:REF?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.dall``: The ``DISplay:WAVEView1:REF_DALL`` command tree. + """ + return self._refx + + +class DisplayWaveview(SCPICmdRead): + """The ``DISplay:WAVEView`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.cursor``: The ``DISplay:WAVEView:CURSor`` command tree. + - ``.gridtype``: The ``DISplay:WAVEView:GRIDTYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cursor = DisplayWaveviewCursor(device, f"{self._cmd_syntax}:CURSor") + self._gridtype = DisplayWaveviewGridtype(device, f"{self._cmd_syntax}:GRIDTYPE") + + @property + def cursor(self) -> DisplayWaveviewCursor: + """Return the ``DISplay:WAVEView:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView:CURSor?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.cursor1``: The ``DISplay:WAVEView:CURSor:CURSOR1`` command tree. + """ + return self._cursor + + @property + def gridtype(self) -> DisplayWaveviewGridtype: + """Return the ``DISplay:WAVEView:GRIDTYPE`` command. + + Description: + - This command sets or queries the Waveform View Graticule type. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView:GRIDTYPE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView:GRIDTYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEView:GRIDTYPE value`` + command. + + SCPI Syntax: + ``` + - DISplay:WAVEView:GRIDTYPE {MOVEABLE|FIXED} + - DISplay:WAVEView:GRIDTYPE? + ``` + + Info: + - ``MOVEABLE`` sets the Waveform View so that both the waveform and the grid (graticule) + move together when moving the waveform horizontally. + - ``FIXED`` sets the Waveform View so that the grid dows not move when moving the + waveform horizontally. + """ + return self._gridtype + + +class DisplayVarpersist(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:VARpersist`` command. + + Description: + - This command sets or queries display persistence decay time, which is the approximate + decay time for a freshly struck persistence sample. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:VARpersist?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:VARpersist?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:VARpersist value`` command. + + SCPI Syntax: + ``` + - DISplay:VARpersist + - DISplay:VARpersist? + ``` + + Info: + - ```` indicates the persistence decay time and ranges from 0.5 to 100. + """ + + +class DisplaySpecview1Viewstyle(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:VIEWStyle`` command. + + Description: + - This command sets or queries the spectrum trace layout style used by the Spectrum View + window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:VIEWStyle?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:VIEWStyle?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SPECView1:VIEWStyle value`` + command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:VIEWStyle {OVErlay|STAcked} + - DISplay:SPECView1:VIEWStyle? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``OVErlay`` specifies the Spectrum View window to show all spectrum traces drawn on top of + each other. + - ``STAcked`` specifies the Spectrum View window to show each spectrum trace in a separate + horizontal slice. + """ + + +class DisplaySpecview1IntensityWaveform(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:INTENSITy:WAVEform`` command. + + Description: + - This command sets or queries the spectrum trace saturation (brightness) level in the + Spectrum View window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:INTENSITy:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:INTENSITy:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:INTENSITy:WAVEform value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:INTENSITy:WAVEform + - DISplay:SPECView1:INTENSITy:WAVEform? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the spectrum trace intensity lever as a percent between 1% and 100%. + """ + + +class DisplaySpecview1IntensityGraticule(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:INTENSITy:GRATicule`` command. + + Description: + - This command sets or queries the graticule saturation (brightness) level in the Spectrum + View window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:INTENSITy:GRATicule?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:INTENSITy:GRATicule?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:INTENSITy:GRATicule value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:INTENSITy:GRATicule + - DISplay:SPECView1:INTENSITy:GRATicule? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the Spectrum View graticule intensity lever as a percent between 0% + and 100%. + """ + + +class DisplaySpecview1Intensity(SCPICmdRead): + """The ``DISplay:SPECView1:INTENSITy`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:INTENSITy?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:INTENSITy?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.graticule``: The ``DISplay:SPECView1:INTENSITy:GRATicule`` command. + - ``.waveform``: The ``DISplay:SPECView1:INTENSITy:WAVEform`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._graticule = DisplaySpecview1IntensityGraticule( + device, f"{self._cmd_syntax}:GRATicule" + ) + self._waveform = DisplaySpecview1IntensityWaveform(device, f"{self._cmd_syntax}:WAVEform") + + @property + def graticule(self) -> DisplaySpecview1IntensityGraticule: + """Return the ``DISplay:SPECView1:INTENSITy:GRATicule`` command. + + Description: + - This command sets or queries the graticule saturation (brightness) level in the + Spectrum View window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:INTENSITy:GRATicule?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:INTENSITy:GRATicule?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:INTENSITy:GRATicule value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:INTENSITy:GRATicule + - DISplay:SPECView1:INTENSITy:GRATicule? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the Spectrum View graticule intensity lever as a percent between + 0% and 100%. + """ + return self._graticule + + @property + def waveform(self) -> DisplaySpecview1IntensityWaveform: + """Return the ``DISplay:SPECView1:INTENSITy:WAVEform`` command. + + Description: + - This command sets or queries the spectrum trace saturation (brightness) level in the + Spectrum View window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:INTENSITy:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:INTENSITy:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:INTENSITy:WAVEform value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:INTENSITy:WAVEform + - DISplay:SPECView1:INTENSITy:WAVEform? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the spectrum trace intensity lever as a percent between 1% and + 100%. + """ + return self._waveform + + +class DisplaySpecview1Horz(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:HORZ`` command. + + Description: + - This command sets or queries the horizontal display scaling of the Spectrum View window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:HORZ?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:HORZ?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SPECView1:HORZ value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:HORZ {LOG|LINEAr} + - DISplay:SPECView1:HORZ? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``LINEAr`` sets the Spectrum View horizontal scaling to linear. + - ``LOG`` sets the Spectrum View horizontal scaling to log. + """ + + +class DisplaySpecview1Graticule(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:GRAticule`` command. + + Description: + - This command sets or queries the type of graticule shown in the Spectrum View window. The + same grid is used for all spectrum traces. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:GRAticule?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:GRAticule?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SPECView1:GRAticule value`` + command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:GRAticule {GRId|TIMe|FULl|NONe} + - DISplay:SPECView1:GRAticule? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``GRId`` specifies to show the Grid graticule (frame and grid) in the Spectrum View + window. + - ``TIMe`` specifies to show the Time graticule in the Spectrum View window. + - ``FULl`` specifies to show the Full graticule (frame, a grid and cross hairs) in the + Spectrum View window. + - ``NONe`` specifies to show no graticule in the Spectrum View window. + """ + + +class DisplaySpecview1CursorCursorWaveformBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition`` command. + + Description: + - This command sets or queries the Cursor B horizontal position in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the horizontal position of Spectrum View Cursor B in Hz. The range of + values is the frequencies at the left and right edges of the Spectrum View for the cursor + source. + """ + + +class DisplaySpecview1CursorCursorWaveformAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition`` command. + + Description: + - This command sets or queries the Cursor A horizontal position in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the horizontal position of Spectrum View Cursor A in Hz. The range of + values is the frequencies at the left and right edges of the Spectrum View for the cursor + source. + """ + + +class DisplaySpecview1CursorCursorWaveform(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition`` command. + - ``.bposition``: The ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplaySpecview1CursorCursorWaveformAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._bposition = DisplaySpecview1CursorCursorWaveformBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + + @property + def aposition(self) -> DisplaySpecview1CursorCursorWaveformAposition: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition`` command. + + Description: + - This command sets or queries the Cursor A horizontal position in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the horizontal position of Spectrum View Cursor A in Hz. The range + of values is the frequencies at the left and right edges of the Spectrum View for the + cursor source. + """ + return self._aposition + + @property + def bposition(self) -> DisplaySpecview1CursorCursorWaveformBposition: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition`` command. + + Description: + - This command sets or queries the Cursor B horizontal position in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition + - DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the horizontal position of Spectrum View Cursor B in Hz. The range + of values is the frequencies at the left and right edges of the Spectrum View for the + cursor source. + """ + return self._bposition + + +class DisplaySpecview1CursorCursorVbarsUnits(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts`` command. + + Description: + - This command queries the cursor horizontal units in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + + +class DisplaySpecview1CursorCursorVbarsBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the Cursor B vertical bar's horizontal position in the + Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition + - DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the horizontal position of Cursor B in Hz. The available frequency + range is set by the frequencies at the left and right edges of the Spectrum View for the + cursor source. + """ + + +class DisplaySpecview1CursorCursorVbarsAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition`` command. + + Description: + - This command sets or queries the Cursor A vertical bar's horizontal position in the + Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition + - DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the horizontal position of Cursor A in Hz. The available frequency + range is set by the frequencies at the left and right edges of the Spectrum View for the + cursor source. + """ + + +class DisplaySpecview1CursorCursorVbars(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:VBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition`` command. + - ``.bposition``: The ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition`` command. + - ``.units``: The ``DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplaySpecview1CursorCursorVbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._bposition = DisplaySpecview1CursorCursorVbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._units = DisplaySpecview1CursorCursorVbarsUnits(device, f"{self._cmd_syntax}:UNIts") + + @property + def aposition(self) -> DisplaySpecview1CursorCursorVbarsAposition: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition`` command. + + Description: + - This command sets or queries the Cursor A vertical bar's horizontal position in the + Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition + - DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the horizontal position of Cursor A in Hz. The available frequency + range is set by the frequencies at the left and right edges of the Spectrum View for + the cursor source. + """ + return self._aposition + + @property + def bposition(self) -> DisplaySpecview1CursorCursorVbarsBposition: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the Cursor B vertical bar's horizontal position in the + Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition + - DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ```` specifies the horizontal position of Cursor B in Hz. The available frequency + range is set by the frequencies at the left and right edges of the Spectrum View for + the cursor source. + """ + return self._bposition + + @property + def units(self) -> DisplaySpecview1CursorCursorVbarsUnits: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts`` command. + + Description: + - This command queries the cursor horizontal units in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + return self._units + + +class DisplaySpecview1CursorCursorState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:STATE`` command. + + Description: + - This command sets or queries the visibility state of the cursors in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:STATE {ON|OFF} + - DISplay:SPECView1:CURSor:CURSOR:STATE? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``ON`` enables viewing cursors in the Spectrum View. + - ``OFF`` disables viewing cursors in the Spectrum View. + """ + + +class DisplaySpecview1CursorCursorSplitmode(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE`` command. + + Description: + - This command sets or queries whether both Spectrum View cursors have the same or different + sources. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:SPLITMODE {SAME|SPLIT} + - DISplay:SPECView1:CURSor:CURSOR:SPLITMODE? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``SAME`` specifies that both Spectrum View cursors have the same source. + - ``SPLIT`` specifies that both Spectrum View cursors have independent sources. + """ + + +class DisplaySpecview1CursorCursorReadout(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:READout`` command. + + Description: + - This command sets or queries the Cursor B readout type in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:READout?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:READout?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:READout value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:READout {ABSOLUTE|DELTA} + - DISplay:SPECView1:CURSor:CURSOR:READout? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``ABSOLUTE`` specifies the Cursor B readout displays absolute frequency and amplitude. + - ``DELTA`` specifies the Cursor B readout displays delta frequency and amplitude from + Cursor A. + """ + + +class DisplaySpecview1CursorCursorHbarsBunits(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts`` command. + + Description: + - This command queries the Cursor B horizontal bar's amplitude units in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + + +class DisplaySpecview1CursorCursorHbarsBposition(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition`` command. + + Description: + - This command queries the horizontal bar Cursor B horizontal bar's vertical position (where + it crosses the spectrum signal) in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + + +class DisplaySpecview1CursorCursorHbarsAunits(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts`` command. + + Description: + - This command queries the horizontal bar Cursor A horizontal bar's amplitude units in the + Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + + +class DisplaySpecview1CursorCursorHbarsAposition(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition`` command. + + Description: + - This command queries the Cursor A horizontal bar's vertical position (where it crosses the + spectrum signal) in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + + +class DisplaySpecview1CursorCursorHbars(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:HBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplaySpecview1CursorCursorHbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._aunits = DisplaySpecview1CursorCursorHbarsAunits(device, f"{self._cmd_syntax}:AUNIts") + self._bposition = DisplaySpecview1CursorCursorHbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._bunits = DisplaySpecview1CursorCursorHbarsBunits(device, f"{self._cmd_syntax}:BUNIts") + + @property + def aposition(self) -> DisplaySpecview1CursorCursorHbarsAposition: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition`` command. + + Description: + - This command queries the Cursor A horizontal bar's vertical position (where it crosses + the spectrum signal) in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + return self._aposition + + @property + def aunits(self) -> DisplaySpecview1CursorCursorHbarsAunits: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts`` command. + + Description: + - This command queries the horizontal bar Cursor A horizontal bar's amplitude units in + the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + return self._aunits + + @property + def bposition(self) -> DisplaySpecview1CursorCursorHbarsBposition: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition`` command. + + Description: + - This command queries the horizontal bar Cursor B horizontal bar's vertical position + (where it crosses the spectrum signal) in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + return self._bposition + + @property + def bunits(self) -> DisplaySpecview1CursorCursorHbarsBunits: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts`` command. + + Description: + - This command queries the Cursor B horizontal bar's amplitude units in the Spectrum + View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + """ + return self._bunits + + +class DisplaySpecview1CursorCursorBsource(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce`` command. + + Description: + - This command sets or queries the Cursor B source in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:BSOUrce {AUTO|CH} + - DISplay:SPECView1:CURSor:CURSOR:BSOUrce? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``AUTO`` specifies to use the selected analog channel as the Spectrum View source. + - ``CH`` specifies the analog channel to use as the Spectrum View source. + """ + + +class DisplaySpecview1CursorCursorBnoise(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:BNOISE`` command. + + Description: + - Returns the noise density of the selected RF trace at the Cursor B position when in + Absolute mode, or the phase noise when in Delta mode. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:BNOISE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:BNOISE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:BNOISE? + ``` + """ + + +class DisplaySpecview1CursorCursorAsource(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce`` command. + + Description: + - This command sets or queries the Cursor A source in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:ASOUrce {AUTO|CH} + - DISplay:SPECView1:CURSor:CURSOR:ASOUrce? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``AUTO`` specifies to use the selected analog channel as the Spectrum View source. + - ``CH`` specifies the analog channel to use as the Spectrum View source. + """ + + +class DisplaySpecview1CursorCursorAnoisedensity(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity`` command. + + Description: + - Returns the noise density of the selected RF trace at the Cursor A position + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity? + ``` + """ + + +# pylint: disable=too-many-instance-attributes +class DisplaySpecview1CursorCursor(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor:CURSOR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:CURSor:CURSOR?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.anoisedensity``: The ``DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity`` command. + - ``.asource``: The ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce`` command. + - ``.bnoise``: The ``DISplay:SPECView1:CURSor:CURSOR:BNOISE`` command. + - ``.bsource``: The ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce`` command. + - ``.hbars``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs`` command tree. + - ``.readout``: The ``DISplay:SPECView1:CURSor:CURSOR:READout`` command. + - ``.splitmode``: The ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE`` command. + - ``.state``: The ``DISplay:SPECView1:CURSor:CURSOR:STATE`` command. + - ``.vbars``: The ``DISplay:SPECView1:CURSor:CURSOR:VBArs`` command tree. + - ``.waveform``: The ``DISplay:SPECView1:CURSor:CURSOR:WAVEform`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._anoisedensity = DisplaySpecview1CursorCursorAnoisedensity( + device, f"{self._cmd_syntax}:ANOISEDensity" + ) + self._asource = DisplaySpecview1CursorCursorAsource(device, f"{self._cmd_syntax}:ASOUrce") + self._bnoise = DisplaySpecview1CursorCursorBnoise(device, f"{self._cmd_syntax}:BNOISE") + self._bsource = DisplaySpecview1CursorCursorBsource(device, f"{self._cmd_syntax}:BSOUrce") + self._hbars = DisplaySpecview1CursorCursorHbars(device, f"{self._cmd_syntax}:HBArs") + self._readout = DisplaySpecview1CursorCursorReadout(device, f"{self._cmd_syntax}:READout") + self._splitmode = DisplaySpecview1CursorCursorSplitmode( + device, f"{self._cmd_syntax}:SPLITMODE" + ) + self._state = DisplaySpecview1CursorCursorState(device, f"{self._cmd_syntax}:STATE") + self._vbars = DisplaySpecview1CursorCursorVbars(device, f"{self._cmd_syntax}:VBArs") + self._waveform = DisplaySpecview1CursorCursorWaveform( + device, f"{self._cmd_syntax}:WAVEform" + ) + + @property + def anoisedensity(self) -> DisplaySpecview1CursorCursorAnoisedensity: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity`` command. + + Description: + - Returns the noise density of the selected RF trace at the Cursor A position + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity? + ``` + """ + return self._anoisedensity + + @property + def asource(self) -> DisplaySpecview1CursorCursorAsource: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce`` command. + + Description: + - This command sets or queries the Cursor A source in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:ASOUrce {AUTO|CH} + - DISplay:SPECView1:CURSor:CURSOR:ASOUrce? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``AUTO`` specifies to use the selected analog channel as the Spectrum View source. + - ``CH`` specifies the analog channel to use as the Spectrum View source. + """ + return self._asource + + @property + def bnoise(self) -> DisplaySpecview1CursorCursorBnoise: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:BNOISE`` command. + + Description: + - Returns the noise density of the selected RF trace at the Cursor B position when in + Absolute mode, or the phase noise when in Delta mode. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:BNOISE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:BNOISE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:BNOISE? + ``` + """ + return self._bnoise + + @property + def bsource(self) -> DisplaySpecview1CursorCursorBsource: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce`` command. + + Description: + - This command sets or queries the Cursor B source in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:BSOUrce {AUTO|CH} + - DISplay:SPECView1:CURSor:CURSOR:BSOUrce? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``AUTO`` specifies to use the selected analog channel as the Spectrum View source. + - ``CH`` specifies the analog channel to use as the Spectrum View source. + """ + return self._bsource + + @property + def hbars(self) -> DisplaySpecview1CursorCursorHbars: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:HBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:HBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs:BUNIts`` command. + """ + return self._hbars + + @property + def readout(self) -> DisplaySpecview1CursorCursorReadout: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:READout`` command. + + Description: + - This command sets or queries the Cursor B readout type in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:READout?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:READout?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:READout value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:READout {ABSOLUTE|DELTA} + - DISplay:SPECView1:CURSor:CURSOR:READout? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``ABSOLUTE`` specifies the Cursor B readout displays absolute frequency and amplitude. + - ``DELTA`` specifies the Cursor B readout displays delta frequency and amplitude from + Cursor A. + """ + return self._readout + + @property + def splitmode(self) -> DisplaySpecview1CursorCursorSplitmode: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE`` command. + + Description: + - This command sets or queries whether both Spectrum View cursors have the same or + different sources. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:SPLITMODE {SAME|SPLIT} + - DISplay:SPECView1:CURSor:CURSOR:SPLITMODE? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``SAME`` specifies that both Spectrum View cursors have the same source. + - ``SPLIT`` specifies that both Spectrum View cursors have independent sources. + """ + return self._splitmode + + @property + def state(self) -> DisplaySpecview1CursorCursorState: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:STATE`` command. + + Description: + - This command sets or queries the visibility state of the cursors in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:CURSor:CURSOR:STATE {ON|OFF} + - DISplay:SPECView1:CURSor:CURSOR:STATE? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``ON`` enables viewing cursors in the Spectrum View. + - ``OFF`` disables viewing cursors in the Spectrum View. + """ + return self._state + + @property + def vbars(self) -> DisplaySpecview1CursorCursorVbars: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR:VBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:VBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:SPECView1:CURSor:CURSOR:VBArs:APOSition`` command. + - ``.bposition``: The ``DISplay:SPECView1:CURSor:CURSOR:VBArs:BPOSition`` command. + - ``.units``: The ``DISplay:SPECView1:CURSor:CURSOR:VBArs:UNIts`` command. + """ + return self._vbars + + @property + def waveform(self) -> DisplaySpecview1CursorCursorWaveform: + """Return the ``DISplay:SPECView1:CURSor:CURSOR:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:SPECView1:CURSor:CURSOR:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:APOSition`` command. + - ``.bposition``: The ``DISplay:SPECView1:CURSor:CURSOR:WAVEform:BPOSition`` command. + """ + return self._waveform + + +class DisplaySpecview1Cursor(SCPICmdRead): + """The ``DISplay:SPECView1:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:CURSor?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.cursor``: The ``DISplay:SPECView1:CURSor:CURSOR`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cursor = DisplaySpecview1CursorCursor(device, f"{self._cmd_syntax}:CURSOR") + + @property + def cursor(self) -> DisplaySpecview1CursorCursor: + """Return the ``DISplay:SPECView1:CURSor:CURSOR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor:CURSOR?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:CURSor:CURSOR?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.anoisedensity``: The ``DISplay:SPECView1:CURSor:CURSOR:ANOISEDensity`` command. + - ``.asource``: The ``DISplay:SPECView1:CURSor:CURSOR:ASOUrce`` command. + - ``.bnoise``: The ``DISplay:SPECView1:CURSor:CURSOR:BNOISE`` command. + - ``.bsource``: The ``DISplay:SPECView1:CURSor:CURSOR:BSOUrce`` command. + - ``.hbars``: The ``DISplay:SPECView1:CURSor:CURSOR:HBArs`` command tree. + - ``.readout``: The ``DISplay:SPECView1:CURSor:CURSOR:READout`` command. + - ``.splitmode``: The ``DISplay:SPECView1:CURSor:CURSOR:SPLITMODE`` command. + - ``.state``: The ``DISplay:SPECView1:CURSor:CURSOR:STATE`` command. + - ``.vbars``: The ``DISplay:SPECView1:CURSor:CURSOR:VBArs`` command tree. + - ``.waveform``: The ``DISplay:SPECView1:CURSor:CURSOR:WAVEform`` command tree. + """ + return self._cursor + + +class DisplaySpecview1(SCPICmdRead): + """The ``DISplay:SPECView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.cursor``: The ``DISplay:SPECView1:CURSor`` command tree. + - ``.graticule``: The ``DISplay:SPECView1:GRAticule`` command. + - ``.horz``: The ``DISplay:SPECView1:HORZ`` command. + - ``.intensity``: The ``DISplay:SPECView1:INTENSITy`` command tree. + - ``.viewstyle``: The ``DISplay:SPECView1:VIEWStyle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cursor = DisplaySpecview1Cursor(device, f"{self._cmd_syntax}:CURSor") + self._graticule = DisplaySpecview1Graticule(device, f"{self._cmd_syntax}:GRAticule") + self._horz = DisplaySpecview1Horz(device, f"{self._cmd_syntax}:HORZ") + self._intensity = DisplaySpecview1Intensity(device, f"{self._cmd_syntax}:INTENSITy") + self._viewstyle = DisplaySpecview1Viewstyle(device, f"{self._cmd_syntax}:VIEWStyle") + + @property + def cursor(self) -> DisplaySpecview1Cursor: + """Return the ``DISplay:SPECView1:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:CURSor?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.cursor``: The ``DISplay:SPECView1:CURSor:CURSOR`` command tree. + """ + return self._cursor + + @property + def graticule(self) -> DisplaySpecview1Graticule: + """Return the ``DISplay:SPECView1:GRAticule`` command. + + Description: + - This command sets or queries the type of graticule shown in the Spectrum View window. + The same grid is used for all spectrum traces. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:GRAticule?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:GRAticule?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SPECView1:GRAticule value`` + command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:GRAticule {GRId|TIMe|FULl|NONe} + - DISplay:SPECView1:GRAticule? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``GRId`` specifies to show the Grid graticule (frame and grid) in the Spectrum View + window. + - ``TIMe`` specifies to show the Time graticule in the Spectrum View window. + - ``FULl`` specifies to show the Full graticule (frame, a grid and cross hairs) in the + Spectrum View window. + - ``NONe`` specifies to show no graticule in the Spectrum View window. + """ + return self._graticule + + @property + def horz(self) -> DisplaySpecview1Horz: + """Return the ``DISplay:SPECView1:HORZ`` command. + + Description: + - This command sets or queries the horizontal display scaling of the Spectrum View + window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:HORZ?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:HORZ?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SPECView1:HORZ value`` + command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:HORZ {LOG|LINEAr} + - DISplay:SPECView1:HORZ? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``LINEAr`` sets the Spectrum View horizontal scaling to linear. + - ``LOG`` sets the Spectrum View horizontal scaling to log. + """ + return self._horz + + @property + def intensity(self) -> DisplaySpecview1Intensity: + """Return the ``DISplay:SPECView1:INTENSITy`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:INTENSITy?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:INTENSITy?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.graticule``: The ``DISplay:SPECView1:INTENSITy:GRATicule`` command. + - ``.waveform``: The ``DISplay:SPECView1:INTENSITy:WAVEform`` command. + """ + return self._intensity + + @property + def viewstyle(self) -> DisplaySpecview1Viewstyle: + """Return the ``DISplay:SPECView1:VIEWStyle`` command. + + Description: + - This command sets or queries the spectrum trace layout style used by the Spectrum View + window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1:VIEWStyle?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1:VIEWStyle?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SPECView1:VIEWStyle value`` + command. + + SCPI Syntax: + ``` + - DISplay:SPECView1:VIEWStyle {OVErlay|STAcked} + - DISplay:SPECView1:VIEWStyle? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``OVErlay`` specifies the Spectrum View window to show all spectrum traces drawn on + top of each other. + - ``STAcked`` specifies the Spectrum View window to show each spectrum trace in a + separate horizontal slice. + """ + return self._viewstyle + + +class DisplaySelectWaveview1Source(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SELect:WAVEView1:SOUrce`` command. + + Description: + - This command sets or queries the selected source in the given waveview. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:WAVEView1:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:WAVEView1:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:WAVEView1:SOUrce value`` + command. + + SCPI Syntax: + ``` + - DISplay:SELect:WAVEView1:SOUrce {S_Ch|CH|MATH|BUS|REF|PLOT} + - DISplay:SELect:WAVEView1:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + - ``PLOT`` specifies a plot as the source. + """ + + +class DisplaySelectWaveview1(SCPICmdRead): + """The ``DISplay:SELect:WAVEView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:WAVEView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:WAVEView1?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``DISplay:SELect:WAVEView1:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = DisplaySelectWaveview1Source(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> DisplaySelectWaveview1Source: + """Return the ``DISplay:SELect:WAVEView1:SOUrce`` command. + + Description: + - This command sets or queries the selected source in the given waveview. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:WAVEView1:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:WAVEView1:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SELect:WAVEView1:SOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:SELect:WAVEView1:SOUrce {S_Ch|CH|MATH|BUS|REF|PLOT} + - DISplay:SELect:WAVEView1:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + - ``PLOT`` specifies a plot as the source. + """ + return self._source + + +class DisplaySelectView(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SELect:VIEW`` command. + + Description: + - This command sets or queries the selected view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:VIEW?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:VIEW?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:VIEW value`` command. + + SCPI Syntax: + ``` + - DISplay:SELect:VIEW {WAVEVIEW1|MATHFFT|PLOTVIEW|REFFFT} + - DISplay:SELect:VIEW? + ``` + + Info: + - ``WAVEVIEW1`` + - ``MATHFFT`` + - ``PLOTVIEW`` + - ``REFFFT`` + """ + + +class DisplaySelectSpecview1Source(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SELect:SPECView1:SOUrce`` command. + + Description: + - This command sets or queries the spectrum trace (source channel) to select in the Spectrum + View window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:SPECView1:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:SPECView1:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:SPECView1:SOUrce value`` + command. + + SCPI Syntax: + ``` + - DISplay:SELect:SPECView1:SOUrce {CH} + - DISplay:SELect:SPECView1:SOUrce? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``CH`` specifies the spectrum trace (source channel) to select (make active) in the + Spectrum View. + """ + + +class DisplaySelectSpecview1(SCPICmdRead): + """The ``DISplay:SELect:SPECView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:SPECView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:SPECView1?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``DISplay:SELect:SPECView1:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = DisplaySelectSpecview1Source(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> DisplaySelectSpecview1Source: + """Return the ``DISplay:SELect:SPECView1:SOUrce`` command. + + Description: + - This command sets or queries the spectrum trace (source channel) to select in the + Spectrum View window. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:SPECView1:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:SPECView1:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:SELect:SPECView1:SOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:SELect:SPECView1:SOUrce {CH} + - DISplay:SELect:SPECView1:SOUrce? + ``` + + Info: + - ``1`` specifies the Spectrum View number. is always 1. + - ``CH`` specifies the spectrum trace (source channel) to select (make active) in the + Spectrum View. + """ + return self._source + + +class DisplaySelectSource(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SELect:SOUrce`` command. + + Description: + - This command sets or queries the overall selected source. Sets are applied to all views + that contain the source and the selected view is changed. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:SOUrce value`` command. + + SCPI Syntax: + ``` + - DISplay:SELect:SOUrce {NONE|CH|BUS|MATH|PLOT|REF} + - DISplay:SELect:SOUrce? + ``` + + Info: + - ``PLOT`` specifies the plot as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + - ``NONE`` specifies nothing as the source. + """ + + +class DisplaySelectReference(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SELect:REFerence`` command. + + Description: + - This command sets or queries the overall selected reference waveform. Sets are applied to + all views that contain the source and the selected view is changed. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:REFerence?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:REFerence?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:REFerence value`` + command. + + SCPI Syntax: + ``` + - DISplay:SELect:REFerence {NONE|REF} + - DISplay:SELect:REFerence? + ``` + + Info: + - ``NONE`` + - ``REF`` where x is the specified reference waveform. + """ + + +class DisplaySelectMath(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SELect:MATH`` command. + + Description: + - This command sets or queries the overall selected math. Sets are applied to all views that + contain the source and the selected view is changed. When multiple Math are open, querying + the command gives the correct result, but the required Math cannot be set. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:MATH?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:MATH value`` command. + + SCPI Syntax: + ``` + - DISplay:SELect:MATH MATH + - DISplay:SELect:MATH? + ``` + + Info: + - ``MATH`` is the selected math. + """ + + +class DisplaySelectBus(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:SELect:BUS`` command. + + Description: + - This command sets or queries the overall selected bus. Sets are applied to all views that + contain the source and the selected view is changed. When multiple buses are open, + querying the command gives the correct result, but the bus cannot set. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:BUS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:BUS?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:BUS value`` command. + + SCPI Syntax: + ``` + - DISplay:SELect:BUS BUS + - DISplay:SELect:BUS? + ``` + + Info: + - ``BUS`` is the selected bus. + """ + + +class DisplaySelect(SCPICmdRead): + """The ``DISplay:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bus``: The ``DISplay:SELect:BUS`` command. + - ``.math``: The ``DISplay:SELect:MATH`` command. + - ``.reference``: The ``DISplay:SELect:REFerence`` command. + - ``.source``: The ``DISplay:SELect:SOUrce`` command. + - ``.specview1``: The ``DISplay:SELect:SPECView1`` command tree. + - ``.view``: The ``DISplay:SELect:VIEW`` command. + - ``.waveview1``: The ``DISplay:SELect:WAVEView1`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bus = DisplaySelectBus(device, f"{self._cmd_syntax}:BUS") + self._math = DisplaySelectMath(device, f"{self._cmd_syntax}:MATH") + self._reference = DisplaySelectReference(device, f"{self._cmd_syntax}:REFerence") + self._source = DisplaySelectSource(device, f"{self._cmd_syntax}:SOUrce") + self._specview1 = DisplaySelectSpecview1(device, f"{self._cmd_syntax}:SPECView1") + self._view = DisplaySelectView(device, f"{self._cmd_syntax}:VIEW") + self._waveview1 = DisplaySelectWaveview1(device, f"{self._cmd_syntax}:WAVEView1") + + @property + def bus(self) -> DisplaySelectBus: + """Return the ``DISplay:SELect:BUS`` command. + + Description: + - This command sets or queries the overall selected bus. Sets are applied to all views + that contain the source and the selected view is changed. When multiple buses are + open, querying the command gives the correct result, but the bus cannot set. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:BUS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:BUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:BUS value`` command. + + SCPI Syntax: + ``` + - DISplay:SELect:BUS BUS + - DISplay:SELect:BUS? + ``` + + Info: + - ``BUS`` is the selected bus. + """ + return self._bus + + @property + def math(self) -> DisplaySelectMath: + """Return the ``DISplay:SELect:MATH`` command. + + Description: + - This command sets or queries the overall selected math. Sets are applied to all views + that contain the source and the selected view is changed. When multiple Math are open, + querying the command gives the correct result, but the required Math cannot be set. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:MATH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:MATH value`` + command. + + SCPI Syntax: + ``` + - DISplay:SELect:MATH MATH + - DISplay:SELect:MATH? + ``` + + Info: + - ``MATH`` is the selected math. + """ + return self._math + + @property + def reference(self) -> DisplaySelectReference: + """Return the ``DISplay:SELect:REFerence`` command. + + Description: + - This command sets or queries the overall selected reference waveform. Sets are applied + to all views that contain the source and the selected view is changed. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:REFerence?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:REFerence?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:REFerence value`` + command. + + SCPI Syntax: + ``` + - DISplay:SELect:REFerence {NONE|REF} + - DISplay:SELect:REFerence? + ``` + + Info: + - ``NONE`` + - ``REF`` where x is the specified reference waveform. + """ + return self._reference + + @property + def source(self) -> DisplaySelectSource: + """Return the ``DISplay:SELect:SOUrce`` command. + + Description: + - This command sets or queries the overall selected source. Sets are applied to all + views that contain the source and the selected view is changed. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:SOUrce value`` + command. + + SCPI Syntax: + ``` + - DISplay:SELect:SOUrce {NONE|CH|BUS|MATH|PLOT|REF} + - DISplay:SELect:SOUrce? + ``` + + Info: + - ``PLOT`` specifies the plot as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + - ``NONE`` specifies nothing as the source. + """ + return self._source + + @property + def specview1(self) -> DisplaySelectSpecview1: + """Return the ``DISplay:SELect:SPECView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:SPECView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:SPECView1?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``DISplay:SELect:SPECView1:SOUrce`` command. + """ + return self._specview1 + + @property + def view(self) -> DisplaySelectView: + """Return the ``DISplay:SELect:VIEW`` command. + + Description: + - This command sets or queries the selected view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:VIEW?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:VIEW?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:SELect:VIEW value`` + command. + + SCPI Syntax: + ``` + - DISplay:SELect:VIEW {WAVEVIEW1|MATHFFT|PLOTVIEW|REFFFT} + - DISplay:SELect:VIEW? + ``` + + Info: + - ``WAVEVIEW1`` + - ``MATHFFT`` + - ``PLOTVIEW`` + - ``REFFFT`` + """ + return self._view + + @property + def waveview1(self) -> DisplaySelectWaveview1: + """Return the ``DISplay:SELect:WAVEView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect:WAVEView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect:WAVEView1?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``DISplay:SELect:WAVEView1:SOUrce`` command. + """ + return self._waveview1 + + +class DisplayReffftviewItemZoomYaxisTo(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:ZOOM:YAXIS:TO`` command. + + Description: + - This command sets or queries the top value of the zoom y-axis in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:YAXIS:TO?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:ZOOM:YAXIS:TO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:YAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:ZOOM:YAXIS:TO + - DISplay:REFFFTView:ZOOM:YAXIS:TO? + ``` + + Info: + - ```` is the top value of the zoom y-axis in the specified plot view. + """ + + +class DisplayReffftviewItemZoomYaxisFrom(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:ZOOM:YAXIS:FROM`` command. + + Description: + - This command sets or queries the bottom value of the zoom y-axis in the specified plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:YAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:YAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:YAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:ZOOM:YAXIS:FROM + - DISplay:REFFFTView:ZOOM:YAXIS:FROM? + ``` + + Info: + - ```` is the bottom value of the zoom y-axis in the specified plot view. + """ + + +class DisplayReffftviewItemZoomYaxis(SCPICmdRead): + """The ``DISplay:REFFFTView:ZOOM:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:YAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:ZOOM:YAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.from``: The ``DISplay:REFFFTView:ZOOM:YAXIS:FROM`` command. + - ``.to``: The ``DISplay:REFFFTView:ZOOM:YAXIS:TO`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._from = DisplayReffftviewItemZoomYaxisFrom(device, f"{self._cmd_syntax}:FROM") + self._to = DisplayReffftviewItemZoomYaxisTo(device, f"{self._cmd_syntax}:TO") + + @property + def from_(self) -> DisplayReffftviewItemZoomYaxisFrom: + """Return the ``DISplay:REFFFTView:ZOOM:YAXIS:FROM`` command. + + Description: + - This command sets or queries the bottom value of the zoom y-axis in the specified plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:YAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:YAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:YAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:ZOOM:YAXIS:FROM + - DISplay:REFFFTView:ZOOM:YAXIS:FROM? + ``` + + Info: + - ```` is the bottom value of the zoom y-axis in the specified plot view. + """ + return self._from + + @property + def to(self) -> DisplayReffftviewItemZoomYaxisTo: + """Return the ``DISplay:REFFFTView:ZOOM:YAXIS:TO`` command. + + Description: + - This command sets or queries the top value of the zoom y-axis in the specified plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:YAXIS:TO?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:YAXIS:TO?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:YAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:ZOOM:YAXIS:TO + - DISplay:REFFFTView:ZOOM:YAXIS:TO? + ``` + + Info: + - ```` is the top value of the zoom y-axis in the specified plot view. + """ + return self._to + + +class DisplayReffftviewItemZoomXaxisTo(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:ZOOM:XAXIS:TO`` command. + + Description: + - This command sets or queries the right edge of the zoom x-axis in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:XAXIS:TO?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:ZOOM:XAXIS:TO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:XAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:ZOOM:XAXIS:TO + - DISplay:REFFFTView:ZOOM:XAXIS:TO? + ``` + + Info: + - ```` is the right edge of the zoom x-axis in the specified plot view. + """ + + +class DisplayReffftviewItemZoomXaxisFrom(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:ZOOM:XAXIS:FROM`` command. + + Description: + - This command sets or returns the left edge of the zoom x-axis in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:XAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:XAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:XAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:ZOOM:XAXIS:FROM + - DISplay:REFFFTView:ZOOM:XAXIS:FROM? + ``` + + Info: + - ```` is the left edge of the zoom x-axis in the specified plot view. + """ + + +class DisplayReffftviewItemZoomXaxis(SCPICmdRead): + """The ``DISplay:REFFFTView:ZOOM:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:ZOOM:XAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.from``: The ``DISplay:REFFFTView:ZOOM:XAXIS:FROM`` command. + - ``.to``: The ``DISplay:REFFFTView:ZOOM:XAXIS:TO`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._from = DisplayReffftviewItemZoomXaxisFrom(device, f"{self._cmd_syntax}:FROM") + self._to = DisplayReffftviewItemZoomXaxisTo(device, f"{self._cmd_syntax}:TO") + + @property + def from_(self) -> DisplayReffftviewItemZoomXaxisFrom: + """Return the ``DISplay:REFFFTView:ZOOM:XAXIS:FROM`` command. + + Description: + - This command sets or returns the left edge of the zoom x-axis in the specified plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:XAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:XAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:XAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:ZOOM:XAXIS:FROM + - DISplay:REFFFTView:ZOOM:XAXIS:FROM? + ``` + + Info: + - ```` is the left edge of the zoom x-axis in the specified plot view. + """ + return self._from + + @property + def to(self) -> DisplayReffftviewItemZoomXaxisTo: + """Return the ``DISplay:REFFFTView:ZOOM:XAXIS:TO`` command. + + Description: + - This command sets or queries the right edge of the zoom x-axis in the specified plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:XAXIS:TO?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:XAXIS:TO?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:XAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:ZOOM:XAXIS:TO + - DISplay:REFFFTView:ZOOM:XAXIS:TO? + ``` + + Info: + - ```` is the right edge of the zoom x-axis in the specified plot view. + """ + return self._to + + +class DisplayReffftviewItemZoom(SCPICmdRead): + """The ``DISplay:REFFFTView:ZOOM`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:ZOOM?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.xaxis``: The ``DISplay:REFFFTView:ZOOM:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:REFFFTView:ZOOM:YAXIS`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._xaxis = DisplayReffftviewItemZoomXaxis(device, f"{self._cmd_syntax}:XAXIS") + self._yaxis = DisplayReffftviewItemZoomYaxis(device, f"{self._cmd_syntax}:YAXIS") + + @property + def xaxis(self) -> DisplayReffftviewItemZoomXaxis: + """Return the ``DISplay:REFFFTView:ZOOM:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:XAXIS?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:XAXIS?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.from``: The ``DISplay:REFFFTView:ZOOM:XAXIS:FROM`` command. + - ``.to``: The ``DISplay:REFFFTView:ZOOM:XAXIS:TO`` command. + """ + return self._xaxis + + @property + def yaxis(self) -> DisplayReffftviewItemZoomYaxis: + """Return the ``DISplay:REFFFTView:ZOOM:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM:YAXIS?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:ZOOM:YAXIS?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.from``: The ``DISplay:REFFFTView:ZOOM:YAXIS:FROM`` command. + - ``.to``: The ``DISplay:REFFFTView:ZOOM:YAXIS:TO`` command. + """ + return self._yaxis + + +class DisplayReffftviewItemXaxisScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:XAXIS:SCALE`` command. + + Description: + - This command sets or queries the x-axis scale setting for Ref FFT. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:XAXIS:SCALE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:XAXIS:SCALE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:XAXIS:SCALE value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:XAXIS:SCALE {LINEAr|LOG} + - DISplay:REFFFTView:XAXIS:SCALE? + ``` + + Info: + - ``LINEAr`` specifies a linear scale. + - ``LOG`` specifies a logarithmic scale. + """ + + +class DisplayReffftviewItemXaxis(SCPICmdRead): + """The ``DISplay:REFFFTView:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:XAXIS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.scale``: The ``DISplay:REFFFTView:XAXIS:SCALE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._scale = DisplayReffftviewItemXaxisScale(device, f"{self._cmd_syntax}:SCALE") + + @property + def scale(self) -> DisplayReffftviewItemXaxisScale: + """Return the ``DISplay:REFFFTView:XAXIS:SCALE`` command. + + Description: + - This command sets or queries the x-axis scale setting for Ref FFT. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:XAXIS:SCALE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:XAXIS:SCALE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:XAXIS:SCALE value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:XAXIS:SCALE {LINEAr|LOG} + - DISplay:REFFFTView:XAXIS:SCALE? + ``` + + Info: + - ``LINEAr`` specifies a linear scale. + - ``LOG`` specifies a logarithmic scale. + """ + return self._scale + + +class DisplayReffftviewItemRefRefItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:REF:REF:STATE`` command. + + Description: + - This command sets or queries the state of the specified reference waveform in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:REF:REF:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:REF:REF:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:REF:REF:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:REF:REF:STATE boolean + - DISplay:REFFFTView:REF:REF:STATE? + ``` + + Info: + - ```` = 0 disables the specified reference; any other value turns this feature on. + - ``OFF`` disables the display the specified reference. + - ``ON`` enables the specified reference. + """ + + +class DisplayReffftviewItemRefRefItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:REFFFTView:REF:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:REF:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:REF:REF?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:REFFFTView:REF:REF:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayReffftviewItemRefRefItemState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> DisplayReffftviewItemRefRefItemState: + """Return the ``DISplay:REFFFTView:REF:REF:STATE`` command. + + Description: + - This command sets or queries the state of the specified reference waveform in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:REF:REF:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:REF:REF:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:REF:REF:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:REF:REF:STATE boolean + - DISplay:REFFFTView:REF:REF:STATE? + ``` + + Info: + - ```` = 0 disables the specified reference; any other value turns this feature on. + - ``OFF`` disables the display the specified reference. + - ``ON`` enables the specified reference. + """ + return self._state + + +class DisplayReffftviewItemRef(SCPICmdRead): + """The ``DISplay:REFFFTView:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ref``: The ``DISplay:REFFFTView:REF:REF`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ref: Dict[int, DisplayReffftviewItemRefRefItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayReffftviewItemRefRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + + @property + def ref(self) -> Dict[int, DisplayReffftviewItemRefRefItem]: + """Return the ``DISplay:REFFFTView:REF:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:REF:REF?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:REF:REF?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:REFFFTView:REF:REF:STATE`` command. + """ + return self._ref + + +class DisplayReffftviewItemGridlines(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:GRIDlines`` command. + + Description: + - This command sets or returns the grid lines setting of the plot. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:GRIDlines?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:GRIDlines?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:REFFFTView:GRIDlines value`` + command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:GRIDlines {HORizontal|VERTical|BOTH} + - DISplay:REFFFTView:GRIDlines? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``HORizontal`` specifies horizontal grid lines. + - ``VERTical`` specifies vertical grid lines. + - ``BOTH`` specifies both horizontal and vertical grid lines. + """ + + +class DisplayReffftviewItemCursorWaveformBvposition(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:WAVEform:BVPOSition`` command. + + Description: + - This query-only command returns the value of the cursor B vertical position. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BVPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BVPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:BVPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorWaveformBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition`` command. + + Description: + - Sets or returns the waveform cursor B position in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:BPOSition + - DISplay:REFFFTView:CURSor:WAVEform:BPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the waveform cursor B position in the specified plot view. + """ + + +class DisplayReffftviewItemCursorWaveformBhposition(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:WAVEform:BHPOSition`` command. + + Description: + - This query-only command returns the value of the cursor B horizontal position. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BHPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BHPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:BHPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorWaveformAvposition(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:WAVEform:AVPOSition`` command. + + Description: + - This query-only command returns the value of the cursor A vertical position. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:AVPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:AVPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:AVPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorWaveformAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:WAVEform:APOSition`` command. + + Description: + - Sets or returns the waveform cursor A position in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:APOSition + - DISplay:REFFFTView:CURSor:WAVEform:APOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the waveform cursor A position in the specified plot view. + """ + + +class DisplayReffftviewItemCursorWaveformAhposition(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:WAVEform:AHPOSition`` command. + + Description: + - This query-only command returns the value of the cursor A horizontal position. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:AHPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:AHPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:AHPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorWaveform(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Properties: + - ``.ahposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:AHPOSition`` command. + - ``.aposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:APOSition`` command. + - ``.avposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:AVPOSition`` command. + - ``.bhposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:BHPOSition`` command. + - ``.bposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition`` command. + - ``.bvposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:BVPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ahposition = DisplayReffftviewItemCursorWaveformAhposition( + device, f"{self._cmd_syntax}:AHPOSition" + ) + self._aposition = DisplayReffftviewItemCursorWaveformAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._avposition = DisplayReffftviewItemCursorWaveformAvposition( + device, f"{self._cmd_syntax}:AVPOSition" + ) + self._bhposition = DisplayReffftviewItemCursorWaveformBhposition( + device, f"{self._cmd_syntax}:BHPOSition" + ) + self._bposition = DisplayReffftviewItemCursorWaveformBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._bvposition = DisplayReffftviewItemCursorWaveformBvposition( + device, f"{self._cmd_syntax}:BVPOSition" + ) + + @property + def ahposition(self) -> DisplayReffftviewItemCursorWaveformAhposition: + """Return the ``DISplay:REFFFTView:CURSor:WAVEform:AHPOSition`` command. + + Description: + - This query-only command returns the value of the cursor A horizontal position. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:AHPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:AHPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:AHPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._ahposition + + @property + def aposition(self) -> DisplayReffftviewItemCursorWaveformAposition: + """Return the ``DISplay:REFFFTView:CURSor:WAVEform:APOSition`` command. + + Description: + - Sets or returns the waveform cursor A position in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:APOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:APOSition + - DISplay:REFFFTView:CURSor:WAVEform:APOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the waveform cursor A position in the specified plot view. + """ + return self._aposition + + @property + def avposition(self) -> DisplayReffftviewItemCursorWaveformAvposition: + """Return the ``DISplay:REFFFTView:CURSor:WAVEform:AVPOSition`` command. + + Description: + - This query-only command returns the value of the cursor A vertical position. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:AVPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:AVPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:AVPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._avposition + + @property + def bhposition(self) -> DisplayReffftviewItemCursorWaveformBhposition: + """Return the ``DISplay:REFFFTView:CURSor:WAVEform:BHPOSition`` command. + + Description: + - This query-only command returns the value of the cursor B horizontal position. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BHPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BHPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:BHPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._bhposition + + @property + def bposition(self) -> DisplayReffftviewItemCursorWaveformBposition: + """Return the ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition`` command. + + Description: + - Sets or returns the waveform cursor B position in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:BPOSition + - DISplay:REFFFTView:CURSor:WAVEform:BPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the waveform cursor B position in the specified plot view. + """ + return self._bposition + + @property + def bvposition(self) -> DisplayReffftviewItemCursorWaveformBvposition: + """Return the ``DISplay:REFFFTView:CURSor:WAVEform:BVPOSition`` command. + + Description: + - This query-only command returns the value of the cursor B vertical position. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BVPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform:BVPOSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:WAVEform:BVPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._bvposition + + +class DisplayReffftviewItemCursorVbarsUnits(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:VBArs:UNIts`` command. + + Description: + - This command returns cursor A vertical units of the specified cursor in the specified + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:VBArs:UNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:UNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:VBArs:UNIts? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorVbarsDelta(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:VBArs:DELTa`` command. + + Description: + - This command returns the delta T cursor readout value of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:VBArs:DELTa?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:VBArs:DELTa? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorVbarsBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:BPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:VBArs:BPOSition + - DISplay:REFFFTView:CURSor:VBArs:BPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the horizontal cursor B position of the specified cursor in the specified + view. + """ + + +class DisplayReffftviewItemCursorVbarsAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:VBArs:APOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:APOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:VBArs:APOSition + - DISplay:REFFFTView:CURSor:VBArs:APOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the horizontal cursor A position of the specified cursor in the specified + view. + """ + + +class DisplayReffftviewItemCursorVbars(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:VBArs?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:CURSor:VBArs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Properties: + - ``.aposition``: The ``DISplay:REFFFTView:CURSor:VBArs:APOSition`` command. + - ``.bposition``: The ``DISplay:REFFFTView:CURSor:VBArs:BPOSition`` command. + - ``.delta``: The ``DISplay:REFFFTView:CURSor:VBArs:DELTa`` command. + - ``.units``: The ``DISplay:REFFFTView:CURSor:VBArs:UNIts`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayReffftviewItemCursorVbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._bposition = DisplayReffftviewItemCursorVbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._delta = DisplayReffftviewItemCursorVbarsDelta(device, f"{self._cmd_syntax}:DELTa") + self._units = DisplayReffftviewItemCursorVbarsUnits(device, f"{self._cmd_syntax}:UNIts") + + @property + def aposition(self) -> DisplayReffftviewItemCursorVbarsAposition: + """Return the ``DISplay:REFFFTView:CURSor:VBArs:APOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position of the specified cursor + in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:VBArs:APOSition + - DISplay:REFFFTView:CURSor:VBArs:APOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the horizontal cursor A position of the specified cursor in the specified + view. + """ + return self._aposition + + @property + def bposition(self) -> DisplayReffftviewItemCursorVbarsBposition: + """Return the ``DISplay:REFFFTView:CURSor:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position of the specified cursor + in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:VBArs:BPOSition + - DISplay:REFFFTView:CURSor:VBArs:BPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the horizontal cursor B position of the specified cursor in the specified + view. + """ + return self._bposition + + @property + def delta(self) -> DisplayReffftviewItemCursorVbarsDelta: + """Return the ``DISplay:REFFFTView:CURSor:VBArs:DELTa`` command. + + Description: + - This command returns the delta T cursor readout value of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:DELTa?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:VBArs:DELTa? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._delta + + @property + def units(self) -> DisplayReffftviewItemCursorVbarsUnits: + """Return the ``DISplay:REFFFTView:CURSor:VBArs:UNIts`` command. + + Description: + - This command returns cursor A vertical units of the specified cursor in the specified + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:UNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs:UNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:VBArs:UNIts? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._units + + +class DisplayReffftviewItemCursorState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:STATE`` command. + + Description: + - This command sets or queries the visible state of the cursor of the specified cursor n the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:CURSor:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:STATE {OFF|ON|0|1} + - DISplay:REFFFTView:CURSor:STATE? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``OFF`` specifies the cursor is not visible. + - ``0`` specifies the cursor is not visible. + - ``ON`` displays the cursor. + - ``1`` displays the cursor. + """ + + +class DisplayReffftviewItemCursorSplitmode(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:SPLITMODE`` command. + + Description: + - This command sets or queries whether both cursors have same or different source. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:SPLITMODE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SPLITMODE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SPLITMODE value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SPLITMODE {SAME|SPLIT} + - DISplay:REFFFTView:CURSor:SPLITMODE? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``SAME`` specifies both cursors have the same sources. + - ``SPLIT`` specifies both cursors have different sources. + """ + + +class DisplayReffftviewItemCursorScreenByposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SCREEN:BYPOSition + - DISplay:REFFFTView:CURSor:SCREEN:BYPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the vertical cursor B position of the specified cursor in the specified view. + """ + + +class DisplayReffftviewItemCursorScreenBxposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SCREEN:BXPOSition + - DISplay:REFFFTView:CURSor:SCREEN:BXPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the horizontal cursor B position of the specified cursor in the specified + view. + """ + + +class DisplayReffftviewItemCursorScreenAyposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SCREEN:AYPOSition + - DISplay:REFFFTView:CURSor:SCREEN:AYPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the vertical cursor A position of the specified cursor in the specified view. + """ + + +class DisplayReffftviewItemCursorScreenAxposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SCREEN:AXPOSition + - DISplay:REFFFTView:CURSor:SCREEN:AXPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the horizontal cursor A position of the specified cursor in the specified + view. + """ + + +class DisplayReffftviewItemCursorScreen(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:SCREEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:SCREEN?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:CURSor:SCREEN?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Properties: + - ``.axposition``: The ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition`` command. + - ``.ayposition``: The ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition`` command. + - ``.bxposition``: The ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition`` command. + - ``.byposition``: The ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._axposition = DisplayReffftviewItemCursorScreenAxposition( + device, f"{self._cmd_syntax}:AXPOSition" + ) + self._ayposition = DisplayReffftviewItemCursorScreenAyposition( + device, f"{self._cmd_syntax}:AYPOSition" + ) + self._bxposition = DisplayReffftviewItemCursorScreenBxposition( + device, f"{self._cmd_syntax}:BXPOSition" + ) + self._byposition = DisplayReffftviewItemCursorScreenByposition( + device, f"{self._cmd_syntax}:BYPOSition" + ) + + @property + def axposition(self) -> DisplayReffftviewItemCursorScreenAxposition: + """Return the ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position of the specified cursor + in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SCREEN:AXPOSition + - DISplay:REFFFTView:CURSor:SCREEN:AXPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the horizontal cursor A position of the specified cursor in the specified + view. + """ + return self._axposition + + @property + def ayposition(self) -> DisplayReffftviewItemCursorScreenAyposition: + """Return the ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SCREEN:AYPOSition + - DISplay:REFFFTView:CURSor:SCREEN:AYPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the vertical cursor A position of the specified cursor in the specified + view. + """ + return self._ayposition + + @property + def bxposition(self) -> DisplayReffftviewItemCursorScreenBxposition: + """Return the ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position of the specified cursor + in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SCREEN:BXPOSition + - DISplay:REFFFTView:CURSor:SCREEN:BXPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the horizontal cursor B position of the specified cursor in the specified + view. + """ + return self._bxposition + + @property + def byposition(self) -> DisplayReffftviewItemCursorScreenByposition: + """Return the ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SCREEN:BYPOSition + - DISplay:REFFFTView:CURSor:SCREEN:BYPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the vertical cursor B position of the specified cursor in the specified + view. + """ + return self._byposition + + +class DisplayReffftviewItemCursorRolocation(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:ROLOCATION`` command. + + Description: + - This command sets or queries the location to display the specified Reference FFT plot + cursor readouts (in the plot graticule or in a badge in the Results Bar). + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:ROLOCATION?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:ROLOCATION?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:ROLOCATION value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:ROLOCATION {GRATICULE|BADGE} + - DISplay:REFFFTView:CURSor:ROLOCATION? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``GRATICULE`` sets the Reference FFT plot cursor readouts to display as part of the + cursors in the plot view. + - ``BADGE`` removes the Reference FFT plot cursor readouts from the cursors in the graticule + and displays the cursor information as a badge in the Results Bar. + """ + + +class DisplayReffftviewItemCursorOneoverdeltatvalue(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE`` command. + + Description: + - This command returns the one over delta T cursor readout value of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorMode(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:MODe`` command. + + Description: + - This command sets or queries the cursor tracking mode of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:CURSor:MODe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:MODe value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:MODe {INDEPENDENT|TRACK} + - DISplay:REFFFTView:CURSor:MODe? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``TRACK`` ties the navigational functionality of the two cursors together. For cursor A + adjustments, this ties the movement of the two cursors together; however, cursor B + continues to move independently of cursor A. + - ``INDEPENDENT`` allows independent adjustment of the two cursors. + """ + + +class DisplayReffftviewItemCursorHbarsDelta(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:HBArs:DELTa`` command. + + Description: + - This command returns the delta V cursor readout value of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:HBArs:DELTa?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:DELTa? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorHbarsBunits(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:HBArs:BUNIts`` command. + + Description: + - This command returns the cursor B vertical units of the specified cursor in the specified + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:HBArs:BUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:BUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:BUNIts? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorHbarsBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:HBArs:BPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:BPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:BPOSition + - DISplay:REFFFTView:CURSor:HBArs:BPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the vertical cursor B position of the specified cursor in the specified view. + """ + + +class DisplayReffftviewItemCursorHbarsAunits(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:HBArs:AUNIts`` command. + + Description: + - This command returns cursor A vertical units of the specified cursor in the specified + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:HBArs:AUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:AUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:AUNIts? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorHbarsAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:HBArs:APOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:APOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:APOSition + - DISplay:REFFFTView:CURSor:HBArs:APOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the vertical cursor A position of the specified cursor in the specified view. + """ + + +class DisplayReffftviewItemCursorHbars(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:HBArs?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:CURSor:HBArs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Properties: + - ``.aposition``: The ``DISplay:REFFFTView:CURSor:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:REFFFTView:CURSor:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:REFFFTView:CURSor:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:REFFFTView:CURSor:HBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:REFFFTView:CURSor:HBArs:DELTa`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayReffftviewItemCursorHbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._aunits = DisplayReffftviewItemCursorHbarsAunits(device, f"{self._cmd_syntax}:AUNIts") + self._bposition = DisplayReffftviewItemCursorHbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._bunits = DisplayReffftviewItemCursorHbarsBunits(device, f"{self._cmd_syntax}:BUNIts") + self._delta = DisplayReffftviewItemCursorHbarsDelta(device, f"{self._cmd_syntax}:DELTa") + + @property + def aposition(self) -> DisplayReffftviewItemCursorHbarsAposition: + """Return the ``DISplay:REFFFTView:CURSor:HBArs:APOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:APOSition + - DISplay:REFFFTView:CURSor:HBArs:APOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the vertical cursor A position of the specified cursor in the specified + view. + """ + return self._aposition + + @property + def aunits(self) -> DisplayReffftviewItemCursorHbarsAunits: + """Return the ``DISplay:REFFFTView:CURSor:HBArs:AUNIts`` command. + + Description: + - This command returns cursor A vertical units of the specified cursor in the specified + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:AUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:AUNIts?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:AUNIts? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._aunits + + @property + def bposition(self) -> DisplayReffftviewItemCursorHbarsBposition: + """Return the ``DISplay:REFFFTView:CURSor:HBArs:BPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:BPOSition + - DISplay:REFFFTView:CURSor:HBArs:BPOSition? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ```` is the vertical cursor B position of the specified cursor in the specified + view. + """ + return self._bposition + + @property + def bunits(self) -> DisplayReffftviewItemCursorHbarsBunits: + """Return the ``DISplay:REFFFTView:CURSor:HBArs:BUNIts`` command. + + Description: + - This command returns the cursor B vertical units of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:BUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:BUNIts?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:BUNIts? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._bunits + + @property + def delta(self) -> DisplayReffftviewItemCursorHbarsDelta: + """Return the ``DISplay:REFFFTView:CURSor:HBArs:DELTa`` command. + + Description: + - This command returns the delta V cursor readout value of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:DELTa?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:HBArs:DELTa? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._delta + + +class DisplayReffftviewItemCursorFunction(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:FUNCtion`` command. + + Description: + - This command sets or queries the cursor type of the specified cursor in the specified + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:FUNCtion?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:FUNCtion?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:FUNCtion value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:FUNCtion {WAVEform|VBArs|HBArs|SCREEN} + - DISplay:REFFFTView:CURSor:FUNCtion? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``HBArs`` specifies horizontal bar cursors, which measure in vertical units. + - ``VBArs`` specifies vertical bar cursors, which measure in horizontal units. + - ``SCREEN`` specifies both horizontal and vertical bar cursors, which measure in horizontal + and vertical units specified by the cursor sources. Use these cursors to measure anywhere + in the waveform display area. + - ``WAVEform`` specifies paired or split cursors in YT display format for measuring waveform + amplitude and time. In XY and XYZ format, these cursors indicate the amplitude positions + of an XY pair (Ch1 vs Ch2 voltage, where Ch1 is the X axis and Ch2 is the Y axis) relative + to the trigger. + """ + + +class DisplayReffftviewItemCursorDdt(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:DDT`` command. + + Description: + - This command returns the delta V over delta T cursor readout value of the specified cursor + in the specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:DDT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:CURSor:DDT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:DDT? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorBsource(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:BSOUrce`` command. + + Description: + - This command returns the cursor source for plot cursor B. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:BSOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:BSOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:BSOUrce? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +class DisplayReffftviewItemCursorAsource(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor:ASOUrce`` command. + + Description: + - This command returns the cursor source for plot cursor A + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:ASOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:ASOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:ASOUrce? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + + +# pylint: disable=too-many-instance-attributes +class DisplayReffftviewItemCursor(SCPICmdRead): + """The ``DISplay:REFFFTView:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:CURSor?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Properties: + - ``.asource``: The ``DISplay:REFFFTView:CURSor:ASOUrce`` command. + - ``.bsource``: The ``DISplay:REFFFTView:CURSor:BSOUrce`` command. + - ``.ddt``: The ``DISplay:REFFFTView:CURSor:DDT`` command. + - ``.function``: The ``DISplay:REFFFTView:CURSor:FUNCtion`` command. + - ``.hbars``: The ``DISplay:REFFFTView:CURSor:HBArs`` command tree. + - ``.mode``: The ``DISplay:REFFFTView:CURSor:MODe`` command. + - ``.oneoverdeltatvalue``: The ``DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE`` command. + - ``.rolocation``: The ``DISplay:REFFFTView:CURSor:ROLOCATION`` command. + - ``.screen``: The ``DISplay:REFFFTView:CURSor:SCREEN`` command tree. + - ``.splitmode``: The ``DISplay:REFFFTView:CURSor:SPLITMODE`` command. + - ``.state``: The ``DISplay:REFFFTView:CURSor:STATE`` command. + - ``.vbars``: The ``DISplay:REFFFTView:CURSor:VBArs`` command tree. + - ``.waveform``: The ``DISplay:REFFFTView:CURSor:WAVEform`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._asource = DisplayReffftviewItemCursorAsource(device, f"{self._cmd_syntax}:ASOUrce") + self._bsource = DisplayReffftviewItemCursorBsource(device, f"{self._cmd_syntax}:BSOUrce") + self._ddt = DisplayReffftviewItemCursorDdt(device, f"{self._cmd_syntax}:DDT") + self._function = DisplayReffftviewItemCursorFunction(device, f"{self._cmd_syntax}:FUNCtion") + self._hbars = DisplayReffftviewItemCursorHbars(device, f"{self._cmd_syntax}:HBArs") + self._mode = DisplayReffftviewItemCursorMode(device, f"{self._cmd_syntax}:MODe") + self._oneoverdeltatvalue = DisplayReffftviewItemCursorOneoverdeltatvalue( + device, f"{self._cmd_syntax}:ONEOVERDELTATVALUE" + ) + self._rolocation = DisplayReffftviewItemCursorRolocation( + device, f"{self._cmd_syntax}:ROLOCATION" + ) + self._screen = DisplayReffftviewItemCursorScreen(device, f"{self._cmd_syntax}:SCREEN") + self._splitmode = DisplayReffftviewItemCursorSplitmode( + device, f"{self._cmd_syntax}:SPLITMODE" + ) + self._state = DisplayReffftviewItemCursorState(device, f"{self._cmd_syntax}:STATE") + self._vbars = DisplayReffftviewItemCursorVbars(device, f"{self._cmd_syntax}:VBArs") + self._waveform = DisplayReffftviewItemCursorWaveform(device, f"{self._cmd_syntax}:WAVEform") + + @property + def asource(self) -> DisplayReffftviewItemCursorAsource: + """Return the ``DISplay:REFFFTView:CURSor:ASOUrce`` command. + + Description: + - This command returns the cursor source for plot cursor A + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:ASOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:ASOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:ASOUrce? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._asource + + @property + def bsource(self) -> DisplayReffftviewItemCursorBsource: + """Return the ``DISplay:REFFFTView:CURSor:BSOUrce`` command. + + Description: + - This command returns the cursor source for plot cursor B. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:BSOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:BSOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:BSOUrce? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._bsource + + @property + def ddt(self) -> DisplayReffftviewItemCursorDdt: + """Return the ``DISplay:REFFFTView:CURSor:DDT`` command. + + Description: + - This command returns the delta V over delta T cursor readout value of the specified + cursor in the specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:DDT?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:DDT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:DDT? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._ddt + + @property + def function(self) -> DisplayReffftviewItemCursorFunction: + """Return the ``DISplay:REFFFTView:CURSor:FUNCtion`` command. + + Description: + - This command sets or queries the cursor type of the specified cursor in the specified + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:FUNCtion?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:FUNCtion?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:FUNCtion value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:FUNCtion {WAVEform|VBArs|HBArs|SCREEN} + - DISplay:REFFFTView:CURSor:FUNCtion? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``HBArs`` specifies horizontal bar cursors, which measure in vertical units. + - ``VBArs`` specifies vertical bar cursors, which measure in horizontal units. + - ``SCREEN`` specifies both horizontal and vertical bar cursors, which measure in + horizontal and vertical units specified by the cursor sources. Use these cursors to + measure anywhere in the waveform display area. + - ``WAVEform`` specifies paired or split cursors in YT display format for measuring + waveform amplitude and time. In XY and XYZ format, these cursors indicate the + amplitude positions of an XY pair (Ch1 vs Ch2 voltage, where Ch1 is the X axis and Ch2 + is the Y axis) relative to the trigger. + """ + return self._function + + @property + def hbars(self) -> DisplayReffftviewItemCursorHbars: + """Return the ``DISplay:REFFFTView:CURSor:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:HBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:HBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Sub-properties: + - ``.aposition``: The ``DISplay:REFFFTView:CURSor:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:REFFFTView:CURSor:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:REFFFTView:CURSor:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:REFFFTView:CURSor:HBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:REFFFTView:CURSor:HBArs:DELTa`` command. + """ + return self._hbars + + @property + def mode(self) -> DisplayReffftviewItemCursorMode: + """Return the ``DISplay:REFFFTView:CURSor:MODe`` command. + + Description: + - This command sets or queries the cursor tracking mode of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:MODe?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:MODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:MODe value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:MODe {INDEPENDENT|TRACK} + - DISplay:REFFFTView:CURSor:MODe? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``TRACK`` ties the navigational functionality of the two cursors together. For cursor + A adjustments, this ties the movement of the two cursors together; however, cursor B + continues to move independently of cursor A. + - ``INDEPENDENT`` allows independent adjustment of the two cursors. + """ + return self._mode + + @property + def oneoverdeltatvalue(self) -> DisplayReffftviewItemCursorOneoverdeltatvalue: + """Return the ``DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE`` command. + + Description: + - This command returns the one over delta T cursor readout value of the specified cursor + in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + """ + return self._oneoverdeltatvalue + + @property + def rolocation(self) -> DisplayReffftviewItemCursorRolocation: + """Return the ``DISplay:REFFFTView:CURSor:ROLOCATION`` command. + + Description: + - This command sets or queries the location to display the specified Reference FFT plot + cursor readouts (in the plot graticule or in a badge in the Results Bar). + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:ROLOCATION?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:ROLOCATION?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:ROLOCATION value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:ROLOCATION {GRATICULE|BADGE} + - DISplay:REFFFTView:CURSor:ROLOCATION? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``GRATICULE`` sets the Reference FFT plot cursor readouts to display as part of the + cursors in the plot view. + - ``BADGE`` removes the Reference FFT plot cursor readouts from the cursors in the + graticule and displays the cursor information as a badge in the Results Bar. + """ + return self._rolocation + + @property + def screen(self) -> DisplayReffftviewItemCursorScreen: + """Return the ``DISplay:REFFFTView:CURSor:SCREEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:SCREEN?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SCREEN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Sub-properties: + - ``.axposition``: The ``DISplay:REFFFTView:CURSor:SCREEN:AXPOSition`` command. + - ``.ayposition``: The ``DISplay:REFFFTView:CURSor:SCREEN:AYPOSition`` command. + - ``.bxposition``: The ``DISplay:REFFFTView:CURSor:SCREEN:BXPOSition`` command. + - ``.byposition``: The ``DISplay:REFFFTView:CURSor:SCREEN:BYPOSition`` command. + """ + return self._screen + + @property + def splitmode(self) -> DisplayReffftviewItemCursorSplitmode: + """Return the ``DISplay:REFFFTView:CURSor:SPLITMODE`` command. + + Description: + - This command sets or queries whether both cursors have same or different source. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:REFFFTView:CURSor:SPLITMODE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SPLITMODE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:SPLITMODE value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:SPLITMODE {SAME|SPLIT} + - DISplay:REFFFTView:CURSor:SPLITMODE? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``SAME`` specifies both cursors have the same sources. + - ``SPLIT`` specifies both cursors have different sources. + """ + return self._splitmode + + @property + def state(self) -> DisplayReffftviewItemCursorState: + """Return the ``DISplay:REFFFTView:CURSor:STATE`` command. + + Description: + - This command sets or queries the visible state of the cursor of the specified cursor n + the specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:CURSor:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:CURSor:STATE {OFF|ON|0|1} + - DISplay:REFFFTView:CURSor:STATE? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``OFF`` specifies the cursor is not visible. + - ``0`` specifies the cursor is not visible. + - ``ON`` displays the cursor. + - ``1`` displays the cursor. + """ + return self._state + + @property + def vbars(self) -> DisplayReffftviewItemCursorVbars: + """Return the ``DISplay:REFFFTView:CURSor:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:VBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:VBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Sub-properties: + - ``.aposition``: The ``DISplay:REFFFTView:CURSor:VBArs:APOSition`` command. + - ``.bposition``: The ``DISplay:REFFFTView:CURSor:VBArs:BPOSition`` command. + - ``.delta``: The ``DISplay:REFFFTView:CURSor:VBArs:DELTa`` command. + - ``.units``: The ``DISplay:REFFFTView:CURSor:VBArs:UNIts`` command. + """ + return self._vbars + + @property + def waveform(self) -> DisplayReffftviewItemCursorWaveform: + """Return the ``DISplay:REFFFTView:CURSor:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:REFFFTView:CURSor:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Sub-properties: + - ``.ahposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:AHPOSition`` command. + - ``.aposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:APOSition`` command. + - ``.avposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:AVPOSition`` command. + - ``.bhposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:BHPOSition`` command. + - ``.bposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:BPOSition`` command. + - ``.bvposition``: The ``DISplay:REFFFTView:CURSor:WAVEform:BVPOSition`` command. + """ + return self._waveform + + +class DisplayReffftviewItemAutoscale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REFFFTView:AUTOScale`` command. + + Description: + - This command sets or queries the enabled state of auto-scale for plots. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:AUTOScale?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:AUTOScale?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:REFFFTView:AUTOScale value`` + command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:AUTOScale {OFF|ON|0|1} + - DISplay:REFFFTView:AUTOScale? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``OFF`` disables auto-scale on the specified reffftview. + - ``0`` disables auto-scale on the specified reffftview. + - ``ON`` enables the specified channel on the specified Waveform View. + - ``1`` enables the specified channel on the specified Waveform View. + """ + + +class DisplayReffftviewItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:REFFFTView`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Properties: + - ``.autoscale``: The ``DISplay:REFFFTView:AUTOScale`` command. + - ``.cursor``: The ``DISplay:REFFFTView:CURSor`` command tree. + - ``.gridlines``: The ``DISplay:REFFFTView:GRIDlines`` command. + - ``.ref``: The ``DISplay:REFFFTView:REF`` command tree. + - ``.xaxis``: The ``DISplay:REFFFTView:XAXIS`` command tree. + - ``.zoom``: The ``DISplay:REFFFTView:ZOOM`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autoscale = DisplayReffftviewItemAutoscale(device, f"{self._cmd_syntax}:AUTOScale") + self._cursor = DisplayReffftviewItemCursor(device, f"{self._cmd_syntax}:CURSor") + self._gridlines = DisplayReffftviewItemGridlines(device, f"{self._cmd_syntax}:GRIDlines") + self._ref = DisplayReffftviewItemRef(device, f"{self._cmd_syntax}:REF") + self._xaxis = DisplayReffftviewItemXaxis(device, f"{self._cmd_syntax}:XAXIS") + self._zoom = DisplayReffftviewItemZoom(device, f"{self._cmd_syntax}:ZOOM") + + @property + def autoscale(self) -> DisplayReffftviewItemAutoscale: + """Return the ``DISplay:REFFFTView:AUTOScale`` command. + + Description: + - This command sets or queries the enabled state of auto-scale for plots. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:AUTOScale?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:AUTOScale?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:AUTOScale value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:AUTOScale {OFF|ON|0|1} + - DISplay:REFFFTView:AUTOScale? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``OFF`` disables auto-scale on the specified reffftview. + - ``0`` disables auto-scale on the specified reffftview. + - ``ON`` enables the specified channel on the specified Waveform View. + - ``1`` enables the specified channel on the specified Waveform View. + """ + return self._autoscale + + @property + def cursor(self) -> DisplayReffftviewItemCursor: + """Return the ``DISplay:REFFFTView:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:CURSor?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Sub-properties: + - ``.asource``: The ``DISplay:REFFFTView:CURSor:ASOUrce`` command. + - ``.bsource``: The ``DISplay:REFFFTView:CURSor:BSOUrce`` command. + - ``.ddt``: The ``DISplay:REFFFTView:CURSor:DDT`` command. + - ``.function``: The ``DISplay:REFFFTView:CURSor:FUNCtion`` command. + - ``.hbars``: The ``DISplay:REFFFTView:CURSor:HBArs`` command tree. + - ``.mode``: The ``DISplay:REFFFTView:CURSor:MODe`` command. + - ``.oneoverdeltatvalue``: The ``DISplay:REFFFTView:CURSor:ONEOVERDELTATVALUE`` + command. + - ``.rolocation``: The ``DISplay:REFFFTView:CURSor:ROLOCATION`` command. + - ``.screen``: The ``DISplay:REFFFTView:CURSor:SCREEN`` command tree. + - ``.splitmode``: The ``DISplay:REFFFTView:CURSor:SPLITMODE`` command. + - ``.state``: The ``DISplay:REFFFTView:CURSor:STATE`` command. + - ``.vbars``: The ``DISplay:REFFFTView:CURSor:VBArs`` command tree. + - ``.waveform``: The ``DISplay:REFFFTView:CURSor:WAVEform`` command tree. + """ + return self._cursor + + @property + def gridlines(self) -> DisplayReffftviewItemGridlines: + """Return the ``DISplay:REFFFTView:GRIDlines`` command. + + Description: + - This command sets or returns the grid lines setting of the plot. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:GRIDlines?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:GRIDlines?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:REFFFTView:GRIDlines value`` command. + + SCPI Syntax: + ``` + - DISplay:REFFFTView:GRIDlines {HORizontal|VERTical|BOTH} + - DISplay:REFFFTView:GRIDlines? + ``` + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + - ``HORizontal`` specifies horizontal grid lines. + - ``VERTical`` specifies vertical grid lines. + - ``BOTH`` specifies both horizontal and vertical grid lines. + """ + return self._gridlines + + @property + def ref(self) -> DisplayReffftviewItemRef: + """Return the ``DISplay:REFFFTView:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:REF?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ref``: The ``DISplay:REFFFTView:REF:REF`` command tree. + """ + return self._ref + + @property + def xaxis(self) -> DisplayReffftviewItemXaxis: + """Return the ``DISplay:REFFFTView:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:XAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.scale``: The ``DISplay:REFFFTView:XAXIS:SCALE`` command. + """ + return self._xaxis + + @property + def zoom(self) -> DisplayReffftviewItemZoom: + """Return the ``DISplay:REFFFTView:ZOOM`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView:ZOOM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView:ZOOM?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.xaxis``: The ``DISplay:REFFFTView:ZOOM:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:REFFFTView:ZOOM:YAXIS`` command tree. + """ + return self._zoom + + +class DisplayRefItemNormalcolor(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REF:NORMALColor`` command. + + Description: + - This command sets or queries the normal mode color of the specified input source to the + specified color. You can assign one of 48 unique colors to any channel, math, or reference + waveform. These colors replace the default normal colors and remain in effect until you + reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REF:NORMALColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REF:NORMALColor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:REF:NORMALColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:REF:NORMALColor COLOR + - DISplay:REF:NORMALColor? + ``` + + Info: + - ``REF`` specifies the reference waveform for which you want to change the waveform + color, where is the reference waveform number. + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to 47. + """ + + +class DisplayRefItemInvertcolor(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:REF:INVERTColor`` command. + + Description: + - This command sets or queries the Inverted mode color of the specified input source to the + specified color. You can assign one of 48 unique colors to any channel, math, or reference + waveform. These colors replace the default Inverted colors and remain in effect until you + reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REF:INVERTColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REF:INVERTColor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:REF:INVERTColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:REF:INVERTColor COLOR + - DISplay:REF:INVERTColor? + ``` + + Info: + - ``REF`` specifies the reference waveform for which you want to change the waveform + color, where is the reference waveform number. + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to 47. + """ + + +class DisplayRefItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REF?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``REF`` specifies the reference waveform for which you want to change the waveform + color, where is the reference waveform number. + + Properties: + - ``.invertcolor``: The ``DISplay:REF:INVERTColor`` command. + - ``.normalcolor``: The ``DISplay:REF:NORMALColor`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._invertcolor = DisplayRefItemInvertcolor(device, f"{self._cmd_syntax}:INVERTColor") + self._normalcolor = DisplayRefItemNormalcolor(device, f"{self._cmd_syntax}:NORMALColor") + + @property + def invertcolor(self) -> DisplayRefItemInvertcolor: + """Return the ``DISplay:REF:INVERTColor`` command. + + Description: + - This command sets or queries the Inverted mode color of the specified input source to + the specified color. You can assign one of 48 unique colors to any channel, math, or + reference waveform. These colors replace the default Inverted colors and remain in + effect until you reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REF:INVERTColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REF:INVERTColor?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:REF:INVERTColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:REF:INVERTColor COLOR + - DISplay:REF:INVERTColor? + ``` + + Info: + - ``REF`` specifies the reference waveform for which you want to change the waveform + color, where is the reference waveform number. + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to + 47. + """ + return self._invertcolor + + @property + def normalcolor(self) -> DisplayRefItemNormalcolor: + """Return the ``DISplay:REF:NORMALColor`` command. + + Description: + - This command sets or queries the normal mode color of the specified input source to + the specified color. You can assign one of 48 unique colors to any channel, math, or + reference waveform. These colors replace the default normal colors and remain in + effect until you reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REF:NORMALColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REF:NORMALColor?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:REF:NORMALColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:REF:NORMALColor COLOR + - DISplay:REF:NORMALColor? + ``` + + Info: + - ``REF`` specifies the reference waveform for which you want to change the waveform + color, where is the reference waveform number. + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to + 47. + """ + return self._normalcolor + + +class DisplayPlotview1ZoomYaxisTo(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:ZOOM:YAXIS:TO`` command. + + Description: + - This command sets or queries the top value of the zoom y-axis in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS:TO?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS:TO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS:TO value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:ZOOM:YAXIS:TO + - DISplay:PLOTView1:ZOOM:YAXIS:TO? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the top value of the zoom y-axis. + """ + + +class DisplayPlotview1ZoomYaxisFrom(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:ZOOM:YAXIS:FROM`` command. + + Description: + - This command sets or queries the bottom value of the zoom y-axis in the specified plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS:FROM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS:FROM?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:ZOOM:YAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:ZOOM:YAXIS:FROM + - DISplay:PLOTView1:ZOOM:YAXIS:FROM? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the bottom value of the zoom y-axis. + """ + + +class DisplayPlotview1ZoomYaxis(SCPICmdRead): + """The ``DISplay:PLOTView1:ZOOM:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.from``: The ``DISplay:PLOTView1:ZOOM:YAXIS:FROM`` command. + - ``.to``: The ``DISplay:PLOTView1:ZOOM:YAXIS:TO`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._from = DisplayPlotview1ZoomYaxisFrom(device, f"{self._cmd_syntax}:FROM") + self._to = DisplayPlotview1ZoomYaxisTo(device, f"{self._cmd_syntax}:TO") + + @property + def from_(self) -> DisplayPlotview1ZoomYaxisFrom: + """Return the ``DISplay:PLOTView1:ZOOM:YAXIS:FROM`` command. + + Description: + - This command sets or queries the bottom value of the zoom y-axis in the specified plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:ZOOM:YAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:ZOOM:YAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:ZOOM:YAXIS:FROM + - DISplay:PLOTView1:ZOOM:YAXIS:FROM? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the bottom value of the zoom y-axis. + """ + return self._from + + @property + def to(self) -> DisplayPlotview1ZoomYaxisTo: + """Return the ``DISplay:PLOTView1:ZOOM:YAXIS:TO`` command. + + Description: + - This command sets or queries the top value of the zoom y-axis in the specified plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS:TO?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS:TO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:ZOOM:YAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:ZOOM:YAXIS:TO + - DISplay:PLOTView1:ZOOM:YAXIS:TO? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the top value of the zoom y-axis. + """ + return self._to + + +class DisplayPlotview1ZoomXaxisTo(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:ZOOM:XAXIS:TO`` command. + + Description: + - This command sets or queries the value of the right edge of the specified plot. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS:TO?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS:TO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS:TO value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:ZOOM:XAXIS:TO + - DISplay:PLOTView1:ZOOM:XAXIS:TO? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the end of the zoom x-axis. + """ + + +class DisplayPlotview1ZoomXaxisFrom(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:ZOOM:XAXIS:FROM`` command. + + Description: + - This command sets or queries the value of the left edge of the specified plot. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS:FROM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS:FROM?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:ZOOM:XAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:ZOOM:XAXIS:FROM + - DISplay:PLOTView1:ZOOM:XAXIS:FROM? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is start of the zoom x-axis. + """ + + +class DisplayPlotview1ZoomXaxis(SCPICmdRead): + """The ``DISplay:PLOTView1:ZOOM:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.from``: The ``DISplay:PLOTView1:ZOOM:XAXIS:FROM`` command. + - ``.to``: The ``DISplay:PLOTView1:ZOOM:XAXIS:TO`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._from = DisplayPlotview1ZoomXaxisFrom(device, f"{self._cmd_syntax}:FROM") + self._to = DisplayPlotview1ZoomXaxisTo(device, f"{self._cmd_syntax}:TO") + + @property + def from_(self) -> DisplayPlotview1ZoomXaxisFrom: + """Return the ``DISplay:PLOTView1:ZOOM:XAXIS:FROM`` command. + + Description: + - This command sets or queries the value of the left edge of the specified plot. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:ZOOM:XAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:ZOOM:XAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:ZOOM:XAXIS:FROM + - DISplay:PLOTView1:ZOOM:XAXIS:FROM? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is start of the zoom x-axis. + """ + return self._from + + @property + def to(self) -> DisplayPlotview1ZoomXaxisTo: + """Return the ``DISplay:PLOTView1:ZOOM:XAXIS:TO`` command. + + Description: + - This command sets or queries the value of the right edge of the specified plot. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS:TO?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS:TO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:ZOOM:XAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:ZOOM:XAXIS:TO + - DISplay:PLOTView1:ZOOM:XAXIS:TO? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the end of the zoom x-axis. + """ + return self._to + + +class DisplayPlotview1Zoom(SCPICmdRead): + """The ``DISplay:PLOTView1:ZOOM`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.xaxis``: The ``DISplay:PLOTView1:ZOOM:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:PLOTView1:ZOOM:YAXIS`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._xaxis = DisplayPlotview1ZoomXaxis(device, f"{self._cmd_syntax}:XAXIS") + self._yaxis = DisplayPlotview1ZoomYaxis(device, f"{self._cmd_syntax}:YAXIS") + + @property + def xaxis(self) -> DisplayPlotview1ZoomXaxis: + """Return the ``DISplay:PLOTView1:ZOOM:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:XAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.from``: The ``DISplay:PLOTView1:ZOOM:XAXIS:FROM`` command. + - ``.to``: The ``DISplay:PLOTView1:ZOOM:XAXIS:TO`` command. + """ + return self._xaxis + + @property + def yaxis(self) -> DisplayPlotview1ZoomYaxis: + """Return the ``DISplay:PLOTView1:ZOOM:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM:YAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.from``: The ``DISplay:PLOTView1:ZOOM:YAXIS:FROM`` command. + - ``.to``: The ``DISplay:PLOTView1:ZOOM:YAXIS:TO`` command. + """ + return self._yaxis + + +class DisplayPlotview1Gridlines(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:GRIDlines`` command. + + Description: + - This command sets or queries the Grid (graticule) lines setting of the specified plot. + This command works for plots that have vertical and horizontal units associated with the + graticule. For example, this command does not work for XY or XYZ plots. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:GRIDlines?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:GRIDlines?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTView1:GRIDlines value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:GRIDlines {HORizontal|VERTical|BOTH} + - DISplay:PLOTView1:GRIDlines? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``HORizontal`` specifies horizontal grid lines. + - ``VERTical`` specifies vertical grid lines. + - ``BOTH`` specifies both vertical and horizontal grid lines. + """ + + +class DisplayPlotview1CursorWaveformBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition`` command. + + Description: + - This command sets or queries the waveform cursor B horizontal position of the specified + cursor in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:WAVEform:BPOSition + - DISplay:PLOTView1:CURSor:WAVEform:BPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the horizontal cursor B position. + """ + + +class DisplayPlotview1CursorWaveformAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:WAVEform:APOSition`` command. + + Description: + - This command sets or queries the waveform cursor A horizontal position of the specified + cursor in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:APOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:WAVEform:APOSition + - DISplay:PLOTView1:CURSor:WAVEform:APOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the horizontal cursor A position. + """ + + +class DisplayPlotview1CursorWaveform(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:WAVEform?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:WAVEform?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:PLOTView1:CURSor:WAVEform:APOSition`` command. + - ``.bposition``: The ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayPlotview1CursorWaveformAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._bposition = DisplayPlotview1CursorWaveformBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + + @property + def aposition(self) -> DisplayPlotview1CursorWaveformAposition: + """Return the ``DISplay:PLOTView1:CURSor:WAVEform:APOSition`` command. + + Description: + - This command sets or queries the waveform cursor A horizontal position of the + specified cursor in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:WAVEform:APOSition + - DISplay:PLOTView1:CURSor:WAVEform:APOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the horizontal cursor A position. + """ + return self._aposition + + @property + def bposition(self) -> DisplayPlotview1CursorWaveformBposition: + """Return the ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition`` command. + + Description: + - This command sets or queries the waveform cursor B horizontal position of the + specified cursor in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:WAVEform:BPOSition + - DISplay:PLOTView1:CURSor:WAVEform:BPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the horizontal cursor B position. + """ + return self._bposition + + +class DisplayPlotview1CursorVbarsUnits(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:VBArs:UNIts`` command. + + Description: + - This command queries the VBArs cursor readout units of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:VBArs:UNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:UNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:VBArs:UNIts? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + + +class DisplayPlotview1CursorVbarsDelta(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:VBArs:DELTa`` command. + + Description: + - This command queries the delta T cursor readout value of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:VBArs:DELTa?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:VBArs:DELTa? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + + +class DisplayPlotview1CursorVbarsBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:VBArs:BPOSition?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:BPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:VBArs:BPOSition + - DISplay:PLOTView1:CURSor:VBArs:BPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the vertical cursor B position. + """ + + +class DisplayPlotview1CursorVbarsAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:VBArs:APOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:VBArs:APOSition?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:APOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:VBArs:APOSition + - DISplay:PLOTView1:CURSor:VBArs:APOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the vertical cursor A position. + """ + + +class DisplayPlotview1CursorVbars(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:VBArs?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:VBArs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:PLOTView1:CURSor:VBArs:APOSition`` command. + - ``.bposition``: The ``DISplay:PLOTView1:CURSor:VBArs:BPOSition`` command. + - ``.delta``: The ``DISplay:PLOTView1:CURSor:VBArs:DELTa`` command. + - ``.units``: The ``DISplay:PLOTView1:CURSor:VBArs:UNIts`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayPlotview1CursorVbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._bposition = DisplayPlotview1CursorVbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._delta = DisplayPlotview1CursorVbarsDelta(device, f"{self._cmd_syntax}:DELTa") + self._units = DisplayPlotview1CursorVbarsUnits(device, f"{self._cmd_syntax}:UNIts") + + @property + def aposition(self) -> DisplayPlotview1CursorVbarsAposition: + """Return the ``DISplay:PLOTView1:CURSor:VBArs:APOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:APOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:VBArs:APOSition + - DISplay:PLOTView1:CURSor:VBArs:APOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the vertical cursor A position. + """ + return self._aposition + + @property + def bposition(self) -> DisplayPlotview1CursorVbarsBposition: + """Return the ``DISplay:PLOTView1:CURSor:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:BPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:VBArs:BPOSition + - DISplay:PLOTView1:CURSor:VBArs:BPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the vertical cursor B position. + """ + return self._bposition + + @property + def delta(self) -> DisplayPlotview1CursorVbarsDelta: + """Return the ``DISplay:PLOTView1:CURSor:VBArs:DELTa`` command. + + Description: + - This command queries the delta T cursor readout value of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:VBArs:DELTa?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:VBArs:DELTa? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + return self._delta + + @property + def units(self) -> DisplayPlotview1CursorVbarsUnits: + """Return the ``DISplay:PLOTView1:CURSor:VBArs:UNIts`` command. + + Description: + - This command queries the VBArs cursor readout units of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:VBArs:UNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:VBArs:UNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:VBArs:UNIts? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + return self._units + + +class DisplayPlotview1CursorState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:STATE`` command. + + Description: + - This command sets or queries the visible state of the cursor of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTView1:CURSor:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:STATE {ON|OFF|} + - DISplay:PLOTView1:CURSor:STATE? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``OFF`` disables the specified cursor. + - ``ON`` enables the specified cursor. + - ```` = 0 disables the specified cursor; any other value enables the specified cursor. + """ + + +class DisplayPlotview1CursorSplitmode(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:SPLITMODE`` command. + + Description: + - This command sets or queries the cursor source mode in the specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:SPLITMODE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:SPLITMODE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SPLITMODE value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SPLITMODE {SAME|SPLIT} + - DISplay:PLOTView1:CURSor:SPLITMODE? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``SAME`` specifies that both cursors are on the same waveform. + - ``SPLIT`` specifies that the cursors can be on different waveforms. + """ + + +class DisplayPlotview1CursorScreenByposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SCREEN:BYPOSition + - DISplay:PLOTView1:CURSor:SCREEN:BYPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the vertical cursor B position. + """ + + +class DisplayPlotview1CursorScreenBxposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SCREEN:BXPOSition + - DISplay:PLOTView1:CURSor:SCREEN:BXPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the horizontal cursor B position. + """ + + +class DisplayPlotview1CursorScreenAyposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in the + specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SCREEN:AYPOSition + - DISplay:PLOTView1:CURSor:SCREEN:AYPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the vertical cursor A position. + """ + + +class DisplayPlotview1CursorScreenAxposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SCREEN:AXPOSition + - DISplay:PLOTView1:CURSor:SCREEN:AXPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the horizontal cursor A position. + """ + + +class DisplayPlotview1CursorScreen(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:SCREEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:SCREEN?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:SCREEN?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.axposition``: The ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition`` command. + - ``.ayposition``: The ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition`` command. + - ``.bxposition``: The ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition`` command. + - ``.byposition``: The ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._axposition = DisplayPlotview1CursorScreenAxposition( + device, f"{self._cmd_syntax}:AXPOSition" + ) + self._ayposition = DisplayPlotview1CursorScreenAyposition( + device, f"{self._cmd_syntax}:AYPOSition" + ) + self._bxposition = DisplayPlotview1CursorScreenBxposition( + device, f"{self._cmd_syntax}:BXPOSition" + ) + self._byposition = DisplayPlotview1CursorScreenByposition( + device, f"{self._cmd_syntax}:BYPOSition" + ) + + @property + def axposition(self) -> DisplayPlotview1CursorScreenAxposition: + """Return the ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position of the specified cursor + in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SCREEN:AXPOSition + - DISplay:PLOTView1:CURSor:SCREEN:AXPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the horizontal cursor A position. + """ + return self._axposition + + @property + def ayposition(self) -> DisplayPlotview1CursorScreenAyposition: + """Return the ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor A position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SCREEN:AYPOSition + - DISplay:PLOTView1:CURSor:SCREEN:AYPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the vertical cursor A position. + """ + return self._ayposition + + @property + def bxposition(self) -> DisplayPlotview1CursorScreenBxposition: + """Return the ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position of the specified cursor + in the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SCREEN:BXPOSition + - DISplay:PLOTView1:CURSor:SCREEN:BXPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the horizontal cursor B position. + """ + return self._bxposition + + @property + def byposition(self) -> DisplayPlotview1CursorScreenByposition: + """Return the ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position of the specified cursor in + the specified view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SCREEN:BYPOSition + - DISplay:PLOTView1:CURSor:SCREEN:BYPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the vertical cursor B position. + """ + return self._byposition + + +class DisplayPlotview1CursorRolocation(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:ROLOCATION`` command. + + Description: + - This command sets or queries the location to display the specified plot cursor readouts + (in the plot graticule or in a badge in the Results Bar). + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:ROLOCATION?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:ROLOCATION?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:ROLOCATION value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:ROLOCATION {GRATICULE|BADGE} + - DISplay:PLOTView1:CURSor:ROLOCATION? + ``` + + Info: + - ``1`` is the waveform plot number. + - ``GRATICULE`` sets the plot cursor readouts to display as part of the cursors in the plot + view. + - ``BADGE`` removes the plot cursor readouts from the cursors in the graticule and displays + the cursor information as a badge in the Results Bar. + """ + + +class DisplayPlotview1CursorOneoverdeltatvalue(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE`` command. + + Description: + - This command sets or queries the one over delta T cursor readout value for the specified + Plot view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + + +class DisplayPlotview1CursorMode(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:MODe`` command. + + Description: + - This command sets or queries the cursor tracking mode for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:MODe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTView1:CURSor:MODe value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:MODe {INDEPENDENT|TRACK} + - DISplay:PLOTView1:CURSor:MODe? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``INDEPENDENT`` allows independent adjustment of the two cursors. + - ``TRACK`` ties the navigational functionality of the two cursors together. For cursor A + adjustments, this ties the movement of the two cursors together; however, cursor B + continues to move independently of cursor A. + """ + + +class DisplayPlotview1CursorHbarsDelta(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:HBArs:DELTa`` command. + + Description: + - This command queries the delta V cursor readout value for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs:DELTa?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:DELTa? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + + +class DisplayPlotview1CursorHbarsBunits(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:HBArs:BUNIts`` command. + + Description: + - This command queries the cursor B vertical units for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs:BUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:BUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:BUNIts? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + + +class DisplayPlotview1CursorHbarsBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:HBArs:BPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs:BPOSition?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:BPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:BPOSition + - DISplay:PLOTView1:CURSor:HBArs:BPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the HBArs vertical position. + """ + + +class DisplayPlotview1CursorHbarsAunits(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:HBArs:AUNIts`` command. + + Description: + - This command queries the horizontal cursor A vertical units for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs:AUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:AUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:AUNIts? + ``` + """ + + +class DisplayPlotview1CursorHbarsAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:HBArs:APOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs:APOSition?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:APOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:APOSition + - DISplay:PLOTView1:CURSor:HBArs:APOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the cursor position. + """ + + +class DisplayPlotview1CursorHbars(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:HBArs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:PLOTView1:CURSor:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:PLOTView1:CURSor:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:PLOTView1:CURSor:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:PLOTView1:CURSor:HBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:PLOTView1:CURSor:HBArs:DELTa`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayPlotview1CursorHbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._aunits = DisplayPlotview1CursorHbarsAunits(device, f"{self._cmd_syntax}:AUNIts") + self._bposition = DisplayPlotview1CursorHbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._bunits = DisplayPlotview1CursorHbarsBunits(device, f"{self._cmd_syntax}:BUNIts") + self._delta = DisplayPlotview1CursorHbarsDelta(device, f"{self._cmd_syntax}:DELTa") + + @property + def aposition(self) -> DisplayPlotview1CursorHbarsAposition: + """Return the ``DISplay:PLOTView1:CURSor:HBArs:APOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position for the specified Plot + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:APOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:APOSition + - DISplay:PLOTView1:CURSor:HBArs:APOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the cursor position. + """ + return self._aposition + + @property + def aunits(self) -> DisplayPlotview1CursorHbarsAunits: + """Return the ``DISplay:PLOTView1:CURSor:HBArs:AUNIts`` command. + + Description: + - This command queries the horizontal cursor A vertical units for the specified Plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs:AUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:AUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:AUNIts? + ``` + """ + return self._aunits + + @property + def bposition(self) -> DisplayPlotview1CursorHbarsBposition: + """Return the ``DISplay:PLOTView1:CURSor:HBArs:BPOSition`` command. + + Description: + - This command sets or queries the horizontal cursor B position for the specified Plot + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:BPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:BPOSition + - DISplay:PLOTView1:CURSor:HBArs:BPOSition? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ```` is the HBArs vertical position. + """ + return self._bposition + + @property + def bunits(self) -> DisplayPlotview1CursorHbarsBunits: + """Return the ``DISplay:PLOTView1:CURSor:HBArs:BUNIts`` command. + + Description: + - This command queries the cursor B vertical units for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs:BUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:BUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:BUNIts? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + return self._bunits + + @property + def delta(self) -> DisplayPlotview1CursorHbarsDelta: + """Return the ``DISplay:PLOTView1:CURSor:HBArs:DELTa`` command. + + Description: + - This command queries the delta V cursor readout value for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs:DELTa?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:HBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:HBArs:DELTa? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + return self._delta + + +class DisplayPlotview1CursorFunction(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:FUNCtion`` command. + + Description: + - This command sets or queries the cursor mode for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:FUNCtion?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:FUNCtion?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:FUNCtion value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:FUNCtion {WAVEFORM|VBArs|HBArs|SCREEN} + - DISplay:PLOTView1:CURSor:FUNCtion? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``WAVEFORM`` specifies to display the paired cursors in YT display format for measuring + waveform amplitude and time. + - ``VBArs`` specifies vertical bar cursors, which measure in horizontal units. + - ``HBArs`` specifies horizontal bar cursors, which measure in vertical units. + - ``SCREEN`` specifies to display both horizontal and vertical bar cursors, which measure + the selected waveform in horizontal and vertical units. Use these cursors to measure + anywhere in the waveform display area. + """ + + +class DisplayPlotview1CursorDdt(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:DDT`` command. + + Description: + - This command returns the delta V over delta T cursor readout value for the specified Plot + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:DDT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:DDT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:DDT? + ``` + + Info: + - ``PlotView`` is the Plot waveform number. + """ + + +class DisplayPlotview1CursorBsource(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:BSOUrce`` command. + + Description: + - This command queries the cursor source for plot cursor B. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:BSOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:BSOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:BSOUrce? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + + +class DisplayPlotview1CursorAsource(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor:ASOUrce`` command. + + Description: + - This command queries the cursor source for plot cursor A. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:ASOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:ASOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:ASOUrce? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + + +# pylint: disable=too-many-instance-attributes +class DisplayPlotview1Cursor(SCPICmdRead): + """The ``DISplay:PLOTView1:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.rolocation``: The ``DISplay:PLOTView1:CURSor:ROLOCATION`` command. + - ``.asource``: The ``DISplay:PLOTView1:CURSor:ASOUrce`` command. + - ``.bsource``: The ``DISplay:PLOTView1:CURSor:BSOUrce`` command. + - ``.ddt``: The ``DISplay:PLOTView1:CURSor:DDT`` command. + - ``.function``: The ``DISplay:PLOTView1:CURSor:FUNCtion`` command. + - ``.hbars``: The ``DISplay:PLOTView1:CURSor:HBArs`` command tree. + - ``.mode``: The ``DISplay:PLOTView1:CURSor:MODe`` command. + - ``.oneoverdeltatvalue``: The ``DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE`` command. + - ``.screen``: The ``DISplay:PLOTView1:CURSor:SCREEN`` command tree. + - ``.splitmode``: The ``DISplay:PLOTView1:CURSor:SPLITMODE`` command. + - ``.state``: The ``DISplay:PLOTView1:CURSor:STATE`` command. + - ``.vbars``: The ``DISplay:PLOTView1:CURSor:VBArs`` command tree. + - ``.waveform``: The ``DISplay:PLOTView1:CURSor:WAVEform`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._rolocation = DisplayPlotview1CursorRolocation( + device, f"{self._cmd_syntax}:ROLOCATION" + ) + self._asource = DisplayPlotview1CursorAsource(device, f"{self._cmd_syntax}:ASOUrce") + self._bsource = DisplayPlotview1CursorBsource(device, f"{self._cmd_syntax}:BSOUrce") + self._ddt = DisplayPlotview1CursorDdt(device, f"{self._cmd_syntax}:DDT") + self._function = DisplayPlotview1CursorFunction(device, f"{self._cmd_syntax}:FUNCtion") + self._hbars = DisplayPlotview1CursorHbars(device, f"{self._cmd_syntax}:HBArs") + self._mode = DisplayPlotview1CursorMode(device, f"{self._cmd_syntax}:MODe") + self._oneoverdeltatvalue = DisplayPlotview1CursorOneoverdeltatvalue( + device, f"{self._cmd_syntax}:ONEOVERDELTATVALUE" + ) + self._screen = DisplayPlotview1CursorScreen(device, f"{self._cmd_syntax}:SCREEN") + self._splitmode = DisplayPlotview1CursorSplitmode(device, f"{self._cmd_syntax}:SPLITMODE") + self._state = DisplayPlotview1CursorState(device, f"{self._cmd_syntax}:STATE") + self._vbars = DisplayPlotview1CursorVbars(device, f"{self._cmd_syntax}:VBArs") + self._waveform = DisplayPlotview1CursorWaveform(device, f"{self._cmd_syntax}:WAVEform") + + @property + def rolocation(self) -> DisplayPlotview1CursorRolocation: + """Return the ``DISplay:PLOTView1:CURSor:ROLOCATION`` command. + + Description: + - This command sets or queries the location to display the specified plot cursor + readouts (in the plot graticule or in a badge in the Results Bar). + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:ROLOCATION?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:ROLOCATION?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:ROLOCATION value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:ROLOCATION {GRATICULE|BADGE} + - DISplay:PLOTView1:CURSor:ROLOCATION? + ``` + + Info: + - ``1`` is the waveform plot number. + - ``GRATICULE`` sets the plot cursor readouts to display as part of the cursors in the + plot view. + - ``BADGE`` removes the plot cursor readouts from the cursors in the graticule and + displays the cursor information as a badge in the Results Bar. + """ + return self._rolocation + + @property + def asource(self) -> DisplayPlotview1CursorAsource: + """Return the ``DISplay:PLOTView1:CURSor:ASOUrce`` command. + + Description: + - This command queries the cursor source for plot cursor A. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:ASOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:ASOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:ASOUrce? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + return self._asource + + @property + def bsource(self) -> DisplayPlotview1CursorBsource: + """Return the ``DISplay:PLOTView1:CURSor:BSOUrce`` command. + + Description: + - This command queries the cursor source for plot cursor B. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:BSOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:BSOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:BSOUrce? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + return self._bsource + + @property + def ddt(self) -> DisplayPlotview1CursorDdt: + """Return the ``DISplay:PLOTView1:CURSor:DDT`` command. + + Description: + - This command returns the delta V over delta T cursor readout value for the specified + Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:DDT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:DDT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:DDT? + ``` + + Info: + - ``PlotView`` is the Plot waveform number. + """ + return self._ddt + + @property + def function(self) -> DisplayPlotview1CursorFunction: + """Return the ``DISplay:PLOTView1:CURSor:FUNCtion`` command. + + Description: + - This command sets or queries the cursor mode for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:FUNCtion?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:FUNCtion?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:FUNCtion value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:FUNCtion {WAVEFORM|VBArs|HBArs|SCREEN} + - DISplay:PLOTView1:CURSor:FUNCtion? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``WAVEFORM`` specifies to display the paired cursors in YT display format for + measuring waveform amplitude and time. + - ``VBArs`` specifies vertical bar cursors, which measure in horizontal units. + - ``HBArs`` specifies horizontal bar cursors, which measure in vertical units. + - ``SCREEN`` specifies to display both horizontal and vertical bar cursors, which + measure the selected waveform in horizontal and vertical units. Use these cursors to + measure anywhere in the waveform display area. + """ + return self._function + + @property + def hbars(self) -> DisplayPlotview1CursorHbars: + """Return the ``DISplay:PLOTView1:CURSor:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:HBArs?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:HBArs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:PLOTView1:CURSor:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:PLOTView1:CURSor:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:PLOTView1:CURSor:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:PLOTView1:CURSor:HBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:PLOTView1:CURSor:HBArs:DELTa`` command. + """ + return self._hbars + + @property + def mode(self) -> DisplayPlotview1CursorMode: + """Return the ``DISplay:PLOTView1:CURSor:MODe`` command. + + Description: + - This command sets or queries the cursor tracking mode for the specified Plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:MODe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:MODe value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:MODe {INDEPENDENT|TRACK} + - DISplay:PLOTView1:CURSor:MODe? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``INDEPENDENT`` allows independent adjustment of the two cursors. + - ``TRACK`` ties the navigational functionality of the two cursors together. For cursor + A adjustments, this ties the movement of the two cursors together; however, cursor B + continues to move independently of cursor A. + """ + return self._mode + + @property + def oneoverdeltatvalue(self) -> DisplayPlotview1CursorOneoverdeltatvalue: + """Return the ``DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE`` command. + + Description: + - This command sets or queries the one over delta T cursor readout value for the + specified Plot view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE? + ``` + + Info: + - ``1`` is the Plot waveform number. + """ + return self._oneoverdeltatvalue + + @property + def screen(self) -> DisplayPlotview1CursorScreen: + """Return the ``DISplay:PLOTView1:CURSor:SCREEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:SCREEN?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:SCREEN?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.axposition``: The ``DISplay:PLOTView1:CURSor:SCREEN:AXPOSition`` command. + - ``.ayposition``: The ``DISplay:PLOTView1:CURSor:SCREEN:AYPOSition`` command. + - ``.bxposition``: The ``DISplay:PLOTView1:CURSor:SCREEN:BXPOSition`` command. + - ``.byposition``: The ``DISplay:PLOTView1:CURSor:SCREEN:BYPOSition`` command. + """ + return self._screen + + @property + def splitmode(self) -> DisplayPlotview1CursorSplitmode: + """Return the ``DISplay:PLOTView1:CURSor:SPLITMODE`` command. + + Description: + - This command sets or queries the cursor source mode in the specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:SPLITMODE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SPLITMODE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:SPLITMODE value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:SPLITMODE {SAME|SPLIT} + - DISplay:PLOTView1:CURSor:SPLITMODE? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``SAME`` specifies that both cursors are on the same waveform. + - ``SPLIT`` specifies that the cursors can be on different waveforms. + """ + return self._splitmode + + @property + def state(self) -> DisplayPlotview1CursorState: + """Return the ``DISplay:PLOTView1:CURSor:STATE`` command. + + Description: + - This command sets or queries the visible state of the cursor of the specified cursor + in the specified view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTView1:CURSor:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:CURSor:STATE {ON|OFF|} + - DISplay:PLOTView1:CURSor:STATE? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``OFF`` disables the specified cursor. + - ``ON`` enables the specified cursor. + - ```` = 0 disables the specified cursor; any other value enables the specified + cursor. + """ + return self._state + + @property + def vbars(self) -> DisplayPlotview1CursorVbars: + """Return the ``DISplay:PLOTView1:CURSor:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:VBArs?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor:VBArs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:PLOTView1:CURSor:VBArs:APOSition`` command. + - ``.bposition``: The ``DISplay:PLOTView1:CURSor:VBArs:BPOSition`` command. + - ``.delta``: The ``DISplay:PLOTView1:CURSor:VBArs:DELTa`` command. + - ``.units``: The ``DISplay:PLOTView1:CURSor:VBArs:UNIts`` command. + """ + return self._vbars + + @property + def waveform(self) -> DisplayPlotview1CursorWaveform: + """Return the ``DISplay:PLOTView1:CURSor:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:PLOTView1:CURSor:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:PLOTView1:CURSor:WAVEform:APOSition`` command. + - ``.bposition``: The ``DISplay:PLOTView1:CURSor:WAVEform:BPOSition`` command. + """ + return self._waveform + + +class DisplayPlotview1Autoscale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTView1:AUTOScale`` command. + + Description: + - This command sets or queries the enabled state of autoscale for the specified plot. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:AUTOScale?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:AUTOScale?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTView1:AUTOScale value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:AUTOScale {ON|OFF|} + - DISplay:PLOTView1:AUTOScale? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``OFF`` disables the autoscale feature. + - ``ON`` enables the autoscale feature. + - ```` = 0 disables the autoscale feature; any other value enables the autoscale + feature. + """ + + +class DisplayPlotview1(SCPICmdRead): + """The ``DISplay:PLOTView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.cursor``: The ``DISplay:PLOTView1:CURSor`` command tree. + - ``.autoscale``: The ``DISplay:PLOTView1:AUTOScale`` command. + - ``.gridlines``: The ``DISplay:PLOTView1:GRIDlines`` command. + - ``.zoom``: The ``DISplay:PLOTView1:ZOOM`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autoscale = DisplayPlotview1Autoscale(device, f"{self._cmd_syntax}:AUTOScale") + self._cursor = DisplayPlotview1Cursor(device, f"{self._cmd_syntax}:CURSor") + self._gridlines = DisplayPlotview1Gridlines(device, f"{self._cmd_syntax}:GRIDlines") + self._zoom = DisplayPlotview1Zoom(device, f"{self._cmd_syntax}:ZOOM") + + @property + def autoscale(self) -> DisplayPlotview1Autoscale: + """Return the ``DISplay:PLOTView1:AUTOScale`` command. + + Description: + - This command sets or queries the enabled state of autoscale for the specified plot. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:AUTOScale?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:AUTOScale?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTView1:AUTOScale value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:AUTOScale {ON|OFF|} + - DISplay:PLOTView1:AUTOScale? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``OFF`` disables the autoscale feature. + - ``ON`` enables the autoscale feature. + - ```` = 0 disables the autoscale feature; any other value enables the autoscale + feature. + """ + return self._autoscale + + @property + def cursor(self) -> DisplayPlotview1Cursor: + """Return the ``DISplay:PLOTView1:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:CURSor?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.rolocation``: The ``DISplay:PLOTView1:CURSor:ROLOCATION`` command. + - ``.asource``: The ``DISplay:PLOTView1:CURSor:ASOUrce`` command. + - ``.bsource``: The ``DISplay:PLOTView1:CURSor:BSOUrce`` command. + - ``.ddt``: The ``DISplay:PLOTView1:CURSor:DDT`` command. + - ``.function``: The ``DISplay:PLOTView1:CURSor:FUNCtion`` command. + - ``.hbars``: The ``DISplay:PLOTView1:CURSor:HBArs`` command tree. + - ``.mode``: The ``DISplay:PLOTView1:CURSor:MODe`` command. + - ``.oneoverdeltatvalue``: The ``DISplay:PLOTView1:CURSor:ONEOVERDELTATVALUE`` command. + - ``.screen``: The ``DISplay:PLOTView1:CURSor:SCREEN`` command tree. + - ``.splitmode``: The ``DISplay:PLOTView1:CURSor:SPLITMODE`` command. + - ``.state``: The ``DISplay:PLOTView1:CURSor:STATE`` command. + - ``.vbars``: The ``DISplay:PLOTView1:CURSor:VBArs`` command tree. + - ``.waveform``: The ``DISplay:PLOTView1:CURSor:WAVEform`` command tree. + """ + return self._cursor + + @property + def gridlines(self) -> DisplayPlotview1Gridlines: + """Return the ``DISplay:PLOTView1:GRIDlines`` command. + + Description: + - This command sets or queries the Grid (graticule) lines setting of the specified plot. + This command works for plots that have vertical and horizontal units associated with + the graticule. For example, this command does not work for XY or XYZ plots. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:GRIDlines?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:GRIDlines?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTView1:GRIDlines value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTView1:GRIDlines {HORizontal|VERTical|BOTH} + - DISplay:PLOTView1:GRIDlines? + ``` + + Info: + - ``1`` is the Plot waveform number. + - ``HORizontal`` specifies horizontal grid lines. + - ``VERTical`` specifies vertical grid lines. + - ``BOTH`` specifies both vertical and horizontal grid lines. + """ + return self._gridlines + + @property + def zoom(self) -> DisplayPlotview1Zoom: + """Return the ``DISplay:PLOTView1:ZOOM`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1:ZOOM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1:ZOOM?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.xaxis``: The ``DISplay:PLOTView1:ZOOM:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:PLOTView1:ZOOM:YAXIS`` command tree. + """ + return self._zoom + + +class DisplayPlotviewItemYaxisScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTVIEW:YAXIS:SCALE`` command. + + Description: + - This command sets or queries the vertical scale setting for applicable plots (Linear or + Log) in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW:YAXIS:SCALE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW:YAXIS:SCALE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTVIEW:YAXIS:SCALE value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTVIEW:YAXIS:SCALE {LINEAR|LOG} + - DISplay:PLOTVIEW:YAXIS:SCALE? + ``` + + Info: + - ``PLOTView`` is the Plot waveform number. + - ``LINEAR`` specifies a linear vertical scale. + - ``LOG`` specifies a logarithmic vertical scale. + """ + + +class DisplayPlotviewItemYaxis(SCPICmdRead): + """The ``DISplay:PLOTVIEW:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW:YAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW:YAXIS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.scale``: The ``DISplay:PLOTVIEW:YAXIS:SCALE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._scale = DisplayPlotviewItemYaxisScale(device, f"{self._cmd_syntax}:SCALE") + + @property + def scale(self) -> DisplayPlotviewItemYaxisScale: + """Return the ``DISplay:PLOTVIEW:YAXIS:SCALE`` command. + + Description: + - This command sets or queries the vertical scale setting for applicable plots (Linear + or Log) in the specified plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW:YAXIS:SCALE?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW:YAXIS:SCALE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTVIEW:YAXIS:SCALE value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTVIEW:YAXIS:SCALE {LINEAR|LOG} + - DISplay:PLOTVIEW:YAXIS:SCALE? + ``` + + Info: + - ``PLOTView`` is the Plot waveform number. + - ``LINEAR`` specifies a linear vertical scale. + - ``LOG`` specifies a logarithmic vertical scale. + """ + return self._scale + + +class DisplayPlotviewItemXaxisScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PLOTVIEW:XAXIS:SCALE`` command. + + Description: + - This command sets or queries the horizontal scale setting for applicable plots (Linear or + Log) for the specified plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW:XAXIS:SCALE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW:XAXIS:SCALE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PLOTVIEW:XAXIS:SCALE value`` + command. + + SCPI Syntax: + ``` + - DISplay:PLOTVIEW:XAXIS:SCALE {LINEAR|LOG} + - DISplay:PLOTVIEW:XAXIS:SCALE? + ``` + + Info: + - ``PLOTView`` is the Plot waveform number. + - ``LINEAR`` creates a plot with linear scales. + - ``LOG`` creates a plot with logarithmic scales. + """ + + +class DisplayPlotviewItemXaxis(SCPICmdRead): + """The ``DISplay:PLOTVIEW:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW:XAXIS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.scale``: The ``DISplay:PLOTVIEW:XAXIS:SCALE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._scale = DisplayPlotviewItemXaxisScale(device, f"{self._cmd_syntax}:SCALE") + + @property + def scale(self) -> DisplayPlotviewItemXaxisScale: + """Return the ``DISplay:PLOTVIEW:XAXIS:SCALE`` command. + + Description: + - This command sets or queries the horizontal scale setting for applicable plots (Linear + or Log) for the specified plot view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW:XAXIS:SCALE?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW:XAXIS:SCALE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:PLOTVIEW:XAXIS:SCALE value`` command. + + SCPI Syntax: + ``` + - DISplay:PLOTVIEW:XAXIS:SCALE {LINEAR|LOG} + - DISplay:PLOTVIEW:XAXIS:SCALE? + ``` + + Info: + - ``PLOTView`` is the Plot waveform number. + - ``LINEAR`` creates a plot with linear scales. + - ``LOG`` creates a plot with logarithmic scales. + """ + return self._scale + + +class DisplayPlotviewItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:PLOTVIEW`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.xaxis``: The ``DISplay:PLOTVIEW:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:PLOTVIEW:YAXIS`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._xaxis = DisplayPlotviewItemXaxis(device, f"{self._cmd_syntax}:XAXIS") + self._yaxis = DisplayPlotviewItemYaxis(device, f"{self._cmd_syntax}:YAXIS") + + @property + def xaxis(self) -> DisplayPlotviewItemXaxis: + """Return the ``DISplay:PLOTVIEW:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW:XAXIS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.scale``: The ``DISplay:PLOTVIEW:XAXIS:SCALE`` command. + """ + return self._xaxis + + @property + def yaxis(self) -> DisplayPlotviewItemYaxis: + """Return the ``DISplay:PLOTVIEW:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW:YAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW:YAXIS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.scale``: The ``DISplay:PLOTVIEW:YAXIS:SCALE`` command. + """ + return self._yaxis + + +class DisplayPersistenceReset(SCPICmdWriteNoArguments): + """The ``DISplay:PERSistence:RESET`` command. + + Description: + - This command controls the clearing of persistence data that has been built up over time. + Persistence is valid for wave views only. + + Usage: + - Using the ``.write()`` method will send the ``DISplay:PERSistence:RESET`` command. + + SCPI Syntax: + ``` + - DISplay:PERSistence:RESET + ``` + """ + + +class DisplayPersistence(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:PERSistence`` command. + + Description: + - This command sets or queries the display persistence for analog waveforms. Persistence is + valid for wave views only. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PERSistence?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PERSistence?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PERSistence value`` command. + + SCPI Syntax: + ``` + - DISplay:PERSistence {OFF|AUTO|INFPersist|INFInite|VARpersist|CLEAR} + - DISplay:PERSistence? + ``` + + Info: + - ``OFF`` disables the persistence aspect of the display. + - ``AUTO`` automatically set the persistence. + - ``INFPersist`` sets a display mode where any pixels, once touched by samples, remain set + until cleared by a mode change. + - ``INFInite`` sets a display mode where any pixels, once touched by samples, remain set + until cleared by a mode change. + - ``VARPersist`` sets a display mode where set pixels are gradually dimmed. + - ``CLEAR`` resets the persist time count down and clears the display of acquired points. + + Properties: + - ``.reset``: The ``DISplay:PERSistence:RESET`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._reset = DisplayPersistenceReset(device, f"{self._cmd_syntax}:RESET") + + @property + def reset(self) -> DisplayPersistenceReset: + """Return the ``DISplay:PERSistence:RESET`` command. + + Description: + - This command controls the clearing of persistence data that has been built up over + time. Persistence is valid for wave views only. + + Usage: + - Using the ``.write()`` method will send the ``DISplay:PERSistence:RESET`` command. + + SCPI Syntax: + ``` + - DISplay:PERSistence:RESET + ``` + """ + return self._reset + + +class DisplayMathItemNormalcolor(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:Math:NORMALColor`` command. + + Description: + - This command sets or queries the normal mode color of the specified input source to the + specified color. You can assign one of 48 unique colors to any channel, math, or reference + waveform. These colors replace the default normal colors and remain in effect until you + reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:Math:NORMALColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:Math:NORMALColor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:Math:NORMALColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:Math:NORMALColor COLOR + - DISplay:Math:NORMALColor? + ``` + + Info: + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to 47. + """ + + +class DisplayMathItemInvertcolor(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:Math:INVERTColor`` command. + + Description: + - This command sets or queries the Inverted mode color of the specified input source to the + specified color. You can assign one of 48 unique colors to any channel, math, or reference + waveform. These colors replace the default Inverted colors and remain in effect until you + reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:Math:INVERTColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:Math:INVERTColor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:Math:INVERTColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:Math:INVERTColor COLOR + - DISplay:Math:INVERTColor? + ``` + + Info: + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to 47. + """ + + +class DisplayMathItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:Math`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:Math?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:Math?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.invertcolor``: The ``DISplay:Math:INVERTColor`` command. + - ``.normalcolor``: The ``DISplay:Math:NORMALColor`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._invertcolor = DisplayMathItemInvertcolor(device, f"{self._cmd_syntax}:INVERTColor") + self._normalcolor = DisplayMathItemNormalcolor(device, f"{self._cmd_syntax}:NORMALColor") + + @property + def invertcolor(self) -> DisplayMathItemInvertcolor: + """Return the ``DISplay:Math:INVERTColor`` command. + + Description: + - This command sets or queries the Inverted mode color of the specified input source to + the specified color. You can assign one of 48 unique colors to any channel, math, or + reference waveform. These colors replace the default Inverted colors and remain in + effect until you reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:Math:INVERTColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:Math:INVERTColor?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:Math:INVERTColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:Math:INVERTColor COLOR + - DISplay:Math:INVERTColor? + ``` + + Info: + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to + 47. + """ + return self._invertcolor + + @property + def normalcolor(self) -> DisplayMathItemNormalcolor: + """Return the ``DISplay:Math:NORMALColor`` command. + + Description: + - This command sets or queries the normal mode color of the specified input source to + the specified color. You can assign one of 48 unique colors to any channel, math, or + reference waveform. These colors replace the default normal colors and remain in + effect until you reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:Math:NORMALColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:Math:NORMALColor?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:Math:NORMALColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:Math:NORMALColor COLOR + - DISplay:Math:NORMALColor? + ``` + + Info: + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to + 47. + """ + return self._normalcolor + + +class DisplayMathfftview1ZoomYaxisTo(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO`` command. + + Description: + - This command sets or queries the top edge value of the zoom y-axis area for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:ZOOM:YAXIS:TO + - DISplay:MATHFFTView1:ZOOM:YAXIS:TO? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the top value of the zoom y axis in the specified plot view. + """ + + +class DisplayMathfftview1ZoomYaxisFrom(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM`` command. + + Description: + - This command sets or queries the bottom edge value of the zoom y-axis area for the + specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:ZOOM:YAXIS:FROM + - DISplay:MATHFFTView1:ZOOM:YAXIS:FROM? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the bottom value of the zoom y axis in the specified plot view. + """ + + +class DisplayMathfftview1ZoomYaxis(SCPICmdRead): + """The ``DISplay:MATHFFTView1:ZOOM:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:YAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:ZOOM:YAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.from``: The ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM`` command. + - ``.to``: The ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._from = DisplayMathfftview1ZoomYaxisFrom(device, f"{self._cmd_syntax}:FROM") + self._to = DisplayMathfftview1ZoomYaxisTo(device, f"{self._cmd_syntax}:TO") + + @property + def from_(self) -> DisplayMathfftview1ZoomYaxisFrom: + """Return the ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM`` command. + + Description: + - This command sets or queries the bottom edge value of the zoom y-axis area for the + specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:ZOOM:YAXIS:FROM + - DISplay:MATHFFTView1:ZOOM:YAXIS:FROM? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the bottom value of the zoom y axis in the specified plot view. + """ + return self._from + + @property + def to(self) -> DisplayMathfftview1ZoomYaxisTo: + """Return the ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO`` command. + + Description: + - This command sets or queries the top edge value of the zoom y-axis area for the + specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:ZOOM:YAXIS:TO + - DISplay:MATHFFTView1:ZOOM:YAXIS:TO? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the top value of the zoom y axis in the specified plot view. + """ + return self._to + + +class DisplayMathfftview1ZoomXaxisTo(SCPICmdWrite): + """The ``DISplay:MATHFFTView1:ZOOM:XAXIS:TO`` command. + + Description: + - This command sets or queries the value of the right edge value of the zoom area for the + specified Math-FFT view. + + Usage: + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:XAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:ZOOM:XAXIS:TO + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the value of the right edge of the zoom x axis in the specified plot view. + """ + + +class DisplayMathfftview1ZoomXaxisFrom(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM`` command. + + Description: + - This command sets or queries the value of the left edge of the zoom area for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:ZOOM:XAXIS:FROM + - DISplay:MATHFFTView1:ZOOM:XAXIS:FROM? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the value of the left edge of the zoom x axis in the specified plot view. + """ + + +class DisplayMathfftview1ZoomXaxis(SCPICmdRead): + """The ``DISplay:MATHFFTView1:ZOOM:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:ZOOM:XAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.from``: The ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM`` command. + - ``.to``: The ``DISplay:MATHFFTView1:ZOOM:XAXIS:TO`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._from = DisplayMathfftview1ZoomXaxisFrom(device, f"{self._cmd_syntax}:FROM") + self._to = DisplayMathfftview1ZoomXaxisTo(device, f"{self._cmd_syntax}:TO") + + @property + def from_(self) -> DisplayMathfftview1ZoomXaxisFrom: + """Return the ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM`` command. + + Description: + - This command sets or queries the value of the left edge of the zoom area for the + specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:ZOOM:XAXIS:FROM + - DISplay:MATHFFTView1:ZOOM:XAXIS:FROM? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the value of the left edge of the zoom x axis in the specified plot view. + """ + return self._from + + @property + def to(self) -> DisplayMathfftview1ZoomXaxisTo: + """Return the ``DISplay:MATHFFTView1:ZOOM:XAXIS:TO`` command. + + Description: + - This command sets or queries the value of the right edge value of the zoom area for + the specified Math-FFT view. + + Usage: + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:ZOOM:XAXIS:TO value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:ZOOM:XAXIS:TO + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the value of the right edge of the zoom x axis in the specified plot + view. + """ + return self._to + + +class DisplayMathfftview1Zoom(SCPICmdRead): + """The ``DISplay:MATHFFTView1:ZOOM`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:ZOOM?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.xaxis``: The ``DISplay:MATHFFTView1:ZOOM:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:MATHFFTView1:ZOOM:YAXIS`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._xaxis = DisplayMathfftview1ZoomXaxis(device, f"{self._cmd_syntax}:XAXIS") + self._yaxis = DisplayMathfftview1ZoomYaxis(device, f"{self._cmd_syntax}:YAXIS") + + @property + def xaxis(self) -> DisplayMathfftview1ZoomXaxis: + """Return the ``DISplay:MATHFFTView1:ZOOM:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:XAXIS?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:ZOOM:XAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.from``: The ``DISplay:MATHFFTView1:ZOOM:XAXIS:FROM`` command. + - ``.to``: The ``DISplay:MATHFFTView1:ZOOM:XAXIS:TO`` command. + """ + return self._xaxis + + @property + def yaxis(self) -> DisplayMathfftview1ZoomYaxis: + """Return the ``DISplay:MATHFFTView1:ZOOM:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM:YAXIS?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:ZOOM:YAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.from``: The ``DISplay:MATHFFTView1:ZOOM:YAXIS:FROM`` command. + - ``.to``: The ``DISplay:MATHFFTView1:ZOOM:YAXIS:TO`` command. + """ + return self._yaxis + + +class DisplayMathfftview1YaxisScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:YAXIS:SCALE`` command. + + Description: + - This command sets or queries the vertical scale setting (Linear or dBm) for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:YAXIS:SCALE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:YAXIS:SCALE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:YAXIS:SCALE value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:YAXIS:SCALE {LINEAr|DBM} + - DISplay:MATHFFTView1:YAXIS:SCALE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``LINEAr`` specifies a linear scale. + - ``DBM`` specifies a dBm scale. + """ + + +class DisplayMathfftview1Yaxis(SCPICmdRead): + """The ``DISplay:MATHFFTView1:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:YAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:YAXIS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.scale``: The ``DISplay:MATHFFTView1:YAXIS:SCALE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._scale = DisplayMathfftview1YaxisScale(device, f"{self._cmd_syntax}:SCALE") + + @property + def scale(self) -> DisplayMathfftview1YaxisScale: + """Return the ``DISplay:MATHFFTView1:YAXIS:SCALE`` command. + + Description: + - This command sets or queries the vertical scale setting (Linear or dBm) for the + specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:YAXIS:SCALE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:YAXIS:SCALE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:YAXIS:SCALE value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:YAXIS:SCALE {LINEAr|DBM} + - DISplay:MATHFFTView1:YAXIS:SCALE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``LINEAr`` specifies a linear scale. + - ``DBM`` specifies a dBm scale. + """ + return self._scale + + +class DisplayMathfftview1XaxisScale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:XAXIS:SCALE`` command. + + Description: + - This command sets or queries the x-axis scale (Linear or Log) for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:XAXIS:SCALE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:XAXIS:SCALE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:XAXIS:SCALE value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:XAXIS:SCALE {LINEAr|LOG} + - DISplay:MATHFFTView1:XAXIS:SCALE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``LINEAr`` specifies a linear scale. + - ``LOG`` specifies a logarithmic scale. + """ + + +class DisplayMathfftview1Xaxis(SCPICmdRead): + """The ``DISplay:MATHFFTView1:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:XAXIS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.scale``: The ``DISplay:MATHFFTView1:XAXIS:SCALE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._scale = DisplayMathfftview1XaxisScale(device, f"{self._cmd_syntax}:SCALE") + + @property + def scale(self) -> DisplayMathfftview1XaxisScale: + """Return the ``DISplay:MATHFFTView1:XAXIS:SCALE`` command. + + Description: + - This command sets or queries the x-axis scale (Linear or Log) for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:XAXIS:SCALE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:XAXIS:SCALE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:XAXIS:SCALE value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:XAXIS:SCALE {LINEAr|LOG} + - DISplay:MATHFFTView1:XAXIS:SCALE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``LINEAr`` specifies a linear scale. + - ``LOG`` specifies a logarithmic scale. + """ + return self._scale + + +class DisplayMathfftview1MathMathItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:MATH:MATH:STATE`` command. + + Description: + - This command sets or queries the display state of the specified math waveform for the + specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:MATH:MATH:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:MATH:MATH:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:MATH:MATH:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:MATH:MATH:STATE {ON|OFF|} + - DISplay:MATHFFTView1:MATH:MATH:STATE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``OFF`` disables displaying the specified Math-FFT view. + - ``ON`` enables displaying the specified Math-FFT view. + - ```` = 0 disables the specified Math-FFT view; any other value enables the specified + Math-FFT view. + """ + + +class DisplayMathfftview1MathMathItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:MATHFFTView1:MATH:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:MATH:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:MATH:MATH?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:MATHFFTView1:MATH:MATH:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayMathfftview1MathMathItemState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> DisplayMathfftview1MathMathItemState: + """Return the ``DISplay:MATHFFTView1:MATH:MATH:STATE`` command. + + Description: + - This command sets or queries the display state of the specified math waveform for the + specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:MATH:MATH:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:MATH:MATH:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:MATH:MATH:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:MATH:MATH:STATE {ON|OFF|} + - DISplay:MATHFFTView1:MATH:MATH:STATE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``OFF`` disables displaying the specified Math-FFT view. + - ``ON`` enables displaying the specified Math-FFT view. + - ```` = 0 disables the specified Math-FFT view; any other value enables the + specified Math-FFT view. + """ + return self._state + + +class DisplayMathfftview1Math(SCPICmdRead): + """The ``DISplay:MATHFFTView1:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:MATH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.math``: The ``DISplay:MATHFFTView1:MATH:MATH`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._math: Dict[int, DisplayMathfftview1MathMathItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayMathfftview1MathMathItem(device, f"{self._cmd_syntax}:MATH{x}") + ) + + @property + def math(self) -> Dict[int, DisplayMathfftview1MathMathItem]: + """Return the ``DISplay:MATHFFTView1:MATH:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:MATH:MATH?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:MATH:MATH?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:MATHFFTView1:MATH:MATH:STATE`` command. + """ + return self._math + + +class DisplayMathfftview1Gridlines(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:GRIDlines`` command. + + Description: + - This command sets or queries the grid lines setting for the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:GRIDlines?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:GRIDlines?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:MATHFFTView1:GRIDlines value`` + command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:GRIDlines {HORizontal|VERTical|BOTH} + - DISplay:MATHFFTView1:GRIDlines? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``HORizontal`` specifies horizontal grid lines. + - ``VERTical`` specifies vertical grid lines. + - ``BOTH`` specifies both vertical and horizontal grid lines. + """ + + +class DisplayMathfftview1CursorWaveformBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition`` command. + + Description: + - This command sets or queries the waveform cursor B position for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition + - DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the waveform cursor B position in the specified plot view. + """ + + +class DisplayMathfftview1CursorWaveformAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition`` command. + + Description: + - This command sets or queries the waveform cursor A position for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:WAVEform:APOSition + - DISplay:MATHFFTView1:CURSor:WAVEform:APOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the waveform cursor A position in the specified plot view. + """ + + +class DisplayMathfftview1CursorWaveform(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition`` command. + - ``.bposition``: The ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayMathfftview1CursorWaveformAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._bposition = DisplayMathfftview1CursorWaveformBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + + @property + def aposition(self) -> DisplayMathfftview1CursorWaveformAposition: + """Return the ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition`` command. + + Description: + - This command sets or queries the waveform cursor A position for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:WAVEform:APOSition + - DISplay:MATHFFTView1:CURSor:WAVEform:APOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the waveform cursor A position in the specified plot view. + """ + return self._aposition + + @property + def bposition(self) -> DisplayMathfftview1CursorWaveformBposition: + """Return the ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition`` command. + + Description: + - This command sets or queries the waveform cursor B position for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition + - DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the waveform cursor B position in the specified plot view. + """ + return self._bposition + + +class DisplayMathfftview1CursorVbarsDelta(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:VBArs:DELTa`` command. + + Description: + - This command queries the vertical cursor's delta T readout value for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:VBArs:DELTa?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:DELTa? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +class DisplayMathfftview1CursorVbarsBunits(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:VBArs:BUNIts`` command. + + Description: + - This command queries the vertical cursor B measurement units for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:VBArs:BUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:BUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:BUNIts? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +class DisplayMathfftview1CursorVbarsBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:BPOSition + - DISplay:MATHFFTView1:CURSor:VBArs:BPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` sets the vertical cursor B position in the specified view. + """ + + +class DisplayMathfftview1CursorVbarsAunits(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:VBArs:AUNIts`` command. + + Description: + - This command queries the vertical cursor A measurement units for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:VBArs:AUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:AUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:AUNIts? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +class DisplayMathfftview1CursorVbarsAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:APOSition + - DISplay:MATHFFTView1:CURSor:VBArs:APOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` sets the vertical cursor A position in the specified view. + """ + + +class DisplayMathfftview1CursorVbars(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:VBArs?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor:VBArs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:MATHFFTView1:CURSor:VBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:MATHFFTView1:CURSor:VBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:MATHFFTView1:CURSor:VBArs:DELTa`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayMathfftview1CursorVbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._aunits = DisplayMathfftview1CursorVbarsAunits(device, f"{self._cmd_syntax}:AUNIts") + self._bposition = DisplayMathfftview1CursorVbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._bunits = DisplayMathfftview1CursorVbarsBunits(device, f"{self._cmd_syntax}:BUNIts") + self._delta = DisplayMathfftview1CursorVbarsDelta(device, f"{self._cmd_syntax}:DELTa") + + @property + def aposition(self) -> DisplayMathfftview1CursorVbarsAposition: + """Return the ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition`` command. + + Description: + - This command sets or queries the horizontal cursor A position for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:APOSition + - DISplay:MATHFFTView1:CURSor:VBArs:APOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` sets the vertical cursor A position in the specified view. + """ + return self._aposition + + @property + def aunits(self) -> DisplayMathfftview1CursorVbarsAunits: + """Return the ``DISplay:MATHFFTView1:CURSor:VBArs:AUNIts`` command. + + Description: + - This command queries the vertical cursor A measurement units for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:AUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:AUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:AUNIts? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._aunits + + @property + def bposition(self) -> DisplayMathfftview1CursorVbarsBposition: + """Return the ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition`` command. + + Description: + - This command sets or queries the vertical cursor B position for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:BPOSition + - DISplay:MATHFFTView1:CURSor:VBArs:BPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` sets the vertical cursor B position in the specified view. + """ + return self._bposition + + @property + def bunits(self) -> DisplayMathfftview1CursorVbarsBunits: + """Return the ``DISplay:MATHFFTView1:CURSor:VBArs:BUNIts`` command. + + Description: + - This command queries the vertical cursor B measurement units for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:BUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:BUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:BUNIts? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._bunits + + @property + def delta(self) -> DisplayMathfftview1CursorVbarsDelta: + """Return the ``DISplay:MATHFFTView1:CURSor:VBArs:DELTa`` command. + + Description: + - This command queries the vertical cursor's delta T readout value for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:DELTa?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:VBArs:DELTa? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._delta + + +class DisplayMathfftview1CursorState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:STATE`` command. + + Description: + - This command sets or queries the visible state of cursors for the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:STATE {ON|OFF|} + - DISplay:MATHFFTView1:CURSor:STATE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``ON`` enables the cursors. + - ``1`` enables the cursors. + - ``OFF`` disables the cursors. + - ``0`` disables the cursors. + - ```` = 0 turns off cursors; any other value displays cursors. + """ + + +class DisplayMathfftview1CursorScreenByposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition`` command. + + Description: + - This command sets or returns the vertical cursor B y-axis amplitude measurement value of + the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the vertical cursor B position of the specified cursor in the specified view. + """ + + +class DisplayMathfftview1CursorScreenBxposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition`` command. + + Description: + - This command sets or returns the vertical cursor Bx-axis waveform time measurement + position of the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the horizontal cursor B position of the specified cursor in the specified + view. + """ + + +class DisplayMathfftview1CursorScreenAyposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition`` command. + + Description: + - This command sets or returns the vertical cursor A y-axis amplitude measurement value of + the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the cursor A position of the specified cursor in the specified view. + """ + + +class DisplayMathfftview1CursorScreenAxposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition`` command. + + Description: + - This command sets or returns the vertical cursor A x-axis waveform measurement position of + the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the cursor position in MHz. + """ + + +class DisplayMathfftview1CursorScreen(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:SCREEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:SCREEN?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor:SCREEN?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.axposition``: The ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition`` command. + - ``.ayposition``: The ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition`` command. + - ``.bxposition``: The ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition`` command. + - ``.byposition``: The ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._axposition = DisplayMathfftview1CursorScreenAxposition( + device, f"{self._cmd_syntax}:AXPOSition" + ) + self._ayposition = DisplayMathfftview1CursorScreenAyposition( + device, f"{self._cmd_syntax}:AYPOSition" + ) + self._bxposition = DisplayMathfftview1CursorScreenBxposition( + device, f"{self._cmd_syntax}:BXPOSition" + ) + self._byposition = DisplayMathfftview1CursorScreenByposition( + device, f"{self._cmd_syntax}:BYPOSition" + ) + + @property + def axposition(self) -> DisplayMathfftview1CursorScreenAxposition: + """Return the ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition`` command. + + Description: + - This command sets or returns the vertical cursor A x-axis waveform measurement + position of the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the cursor position in MHz. + """ + return self._axposition + + @property + def ayposition(self) -> DisplayMathfftview1CursorScreenAyposition: + """Return the ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition`` command. + + Description: + - This command sets or returns the vertical cursor A y-axis amplitude measurement value + of the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the cursor A position of the specified cursor in the specified view. + """ + return self._ayposition + + @property + def bxposition(self) -> DisplayMathfftview1CursorScreenBxposition: + """Return the ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition`` command. + + Description: + - This command sets or returns the vertical cursor Bx-axis waveform time measurement + position of the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the horizontal cursor B position of the specified cursor in the specified + view. + """ + return self._bxposition + + @property + def byposition(self) -> DisplayMathfftview1CursorScreenByposition: + """Return the ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition`` command. + + Description: + - This command sets or returns the vertical cursor B y-axis amplitude measurement value + of the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition + - DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the vertical cursor B position of the specified cursor in the specified + view. + """ + return self._byposition + + +class DisplayMathfftview1CursorRolocation(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:ROLOCATION`` command. + + Description: + - This command sets or queries the location to display the specified Math FFT plot cursor + readouts (in the plot graticule or in a badge in the Results Bar). + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:ROLOCATION?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:ROLOCATION?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:ROLOCATION value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:ROLOCATION {GRATICULE|BADGE} + - DISplay:MATHFFTView1:CURSor:ROLOCATION? + ``` + + Info: + - ``1`` is the Math FFT plot number. + - ``GRATICULE`` sets the Math FFT plot cursor readouts to display as part of the cursors in + the plot view. + - ``BADGE`` removes the Math FFT plot cursor readouts from the cursors in the graticule and + displays the cursor information as a badge in the Results Bar. + """ + + +class DisplayMathfftview1CursorOneoverdeltatvalue(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE`` command. + + Description: + - This command queries the one over delta cursor readout value of the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +class DisplayMathfftview1CursorMode(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:MODe`` command. + + Description: + - This command sets or queries the cursor tracking mode of the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor:MODe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:MODe value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:MODe {INDEPENDENT|TRACK} + - DISplay:MATHFFTView1:CURSor:MODe? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``INDEPENDENT`` allows independent adjustment of the two cursors. + - ``TRACK`` ties the navigational functionality of the two cursors together. For cursor 1 + adjustments, this ties the movement of the two cursors together; however, cursor 2 + continues to move independently of cursor 1. + """ + + +class DisplayMathfftview1CursorHbarsDelta(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:HBArs:DELTa`` command. + + Description: + - This command queries the horizontal cursor's delta value of the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:HBArs:DELTa?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:DELTa? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +class DisplayMathfftview1CursorHbarsBunits(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:HBArs:BUNIts`` command. + + Description: + - This command queries the vertical units of horizontal cursor B for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:HBArs:BUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:BUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:BUNIts? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +class DisplayMathfftview1CursorHbarsBposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition`` command. + + Description: + - This command sets or returns the position of horizontal cursor B for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:BPOSition + - DISplay:MATHFFTView1:CURSor:HBArs:BPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the vertical cursor B position for the specified Math-FFT view. + """ + + +class DisplayMathfftview1CursorHbarsAunits(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:HBArs:AUNIts`` command. + + Description: + - This command queries the vertical units of horizontal cursor A for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:HBArs:AUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:AUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:AUNIts? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +class DisplayMathfftview1CursorHbarsAposition(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition`` command. + + Description: + - This command sets or returns the position of horizontal cursor A for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:APOSition + - DISplay:MATHFFTView1:CURSor:HBArs:APOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the cursor position of the specified cursor in the specified view. + """ + + +class DisplayMathfftview1CursorHbars(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:HBArs?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor:HBArs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.aposition``: The ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:MATHFFTView1:CURSor:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:MATHFFTView1:CURSor:HBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:MATHFFTView1:CURSor:HBArs:DELTa`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._aposition = DisplayMathfftview1CursorHbarsAposition( + device, f"{self._cmd_syntax}:APOSition" + ) + self._aunits = DisplayMathfftview1CursorHbarsAunits(device, f"{self._cmd_syntax}:AUNIts") + self._bposition = DisplayMathfftview1CursorHbarsBposition( + device, f"{self._cmd_syntax}:BPOSition" + ) + self._bunits = DisplayMathfftview1CursorHbarsBunits(device, f"{self._cmd_syntax}:BUNIts") + self._delta = DisplayMathfftview1CursorHbarsDelta(device, f"{self._cmd_syntax}:DELTa") + + @property + def aposition(self) -> DisplayMathfftview1CursorHbarsAposition: + """Return the ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition`` command. + + Description: + - This command sets or returns the position of horizontal cursor A for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:APOSition + - DISplay:MATHFFTView1:CURSor:HBArs:APOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the cursor position of the specified cursor in the specified view. + """ + return self._aposition + + @property + def aunits(self) -> DisplayMathfftview1CursorHbarsAunits: + """Return the ``DISplay:MATHFFTView1:CURSor:HBArs:AUNIts`` command. + + Description: + - This command queries the vertical units of horizontal cursor A for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:AUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:AUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:AUNIts? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._aunits + + @property + def bposition(self) -> DisplayMathfftview1CursorHbarsBposition: + """Return the ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition`` command. + + Description: + - This command sets or returns the position of horizontal cursor B for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:BPOSition + - DISplay:MATHFFTView1:CURSor:HBArs:BPOSition? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ```` is the vertical cursor B position for the specified Math-FFT view. + """ + return self._bposition + + @property + def bunits(self) -> DisplayMathfftview1CursorHbarsBunits: + """Return the ``DISplay:MATHFFTView1:CURSor:HBArs:BUNIts`` command. + + Description: + - This command queries the vertical units of horizontal cursor B for the specified + Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:BUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:BUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:BUNIts? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._bunits + + @property + def delta(self) -> DisplayMathfftview1CursorHbarsDelta: + """Return the ``DISplay:MATHFFTView1:CURSor:HBArs:DELTa`` command. + + Description: + - This command queries the horizontal cursor's delta value of the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:DELTa?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs:DELTa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:HBArs:DELTa? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._delta + + +class DisplayMathfftview1CursorFunction(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:FUNCtion`` command. + + Description: + - This command sets or queries the cursor type for the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:FUNCtion?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:FUNCtion?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:FUNCtion value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:FUNCtion {WAVEform|VBArs|HBArs|SCREEN} + - DISplay:MATHFFTView1:CURSor:FUNCtion? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``WAVEFORM`` specifies to display the paired vertical cursors in YT display format for + measuring waveform amplitude and time. Measurements are taken at where the cursor + intersects the waveform, and tracks waveform changes. + - ``VBArs`` specifies vertical bar cursors, which measure in horizontal units. + - ``HBArs`` specifies horizontal bar cursors, which measure in vertical units. + - ``SCREEN`` specifies to display both horizontal and vertical bar cursors, which display + the horizontal and vertical positions of the cursors, not waveform levels. Use these + cursors to measure anywhere in the waveform display area. + """ + + +class DisplayMathfftview1CursorDdt(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:DDT`` command. + + Description: + - This command queries the delta Y over delta X (ΔY/Δ X) cursor readout value of the + specified cursor in the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:DDT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor:DDT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:DDT? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +class DisplayMathfftview1CursorBsource(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:BSOUrce`` command. + + Description: + - This command queries the Math-FFT waveform view source for cursor B. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:BSOUrce?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor:BSOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:BSOUrce? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +class DisplayMathfftview1CursorAsource(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor:ASOUrce`` command. + + Description: + - This command queries the Math-FFT waveform view source for cursor A. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:ASOUrce?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor:ASOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:ASOUrce? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + + +# pylint: disable=too-many-instance-attributes +class DisplayMathfftview1Cursor(SCPICmdRead): + """The ``DISplay:MATHFFTView1:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.rolocation``: The ``DISplay:MATHFFTView1:CURSor:ROLOCATION`` command. + - ``.asource``: The ``DISplay:MATHFFTView1:CURSor:ASOUrce`` command. + - ``.bsource``: The ``DISplay:MATHFFTView1:CURSor:BSOUrce`` command. + - ``.ddt``: The ``DISplay:MATHFFTView1:CURSor:DDT`` command. + - ``.function``: The ``DISplay:MATHFFTView1:CURSor:FUNCtion`` command. + - ``.hbars``: The ``DISplay:MATHFFTView1:CURSor:HBArs`` command tree. + - ``.mode``: The ``DISplay:MATHFFTView1:CURSor:MODe`` command. + - ``.oneoverdeltatvalue``: The ``DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE`` command. + - ``.screen``: The ``DISplay:MATHFFTView1:CURSor:SCREEN`` command tree. + - ``.state``: The ``DISplay:MATHFFTView1:CURSor:STATE`` command. + - ``.vbars``: The ``DISplay:MATHFFTView1:CURSor:VBArs`` command tree. + - ``.waveform``: The ``DISplay:MATHFFTView1:CURSor:WAVEform`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._rolocation = DisplayMathfftview1CursorRolocation( + device, f"{self._cmd_syntax}:ROLOCATION" + ) + self._asource = DisplayMathfftview1CursorAsource(device, f"{self._cmd_syntax}:ASOUrce") + self._bsource = DisplayMathfftview1CursorBsource(device, f"{self._cmd_syntax}:BSOUrce") + self._ddt = DisplayMathfftview1CursorDdt(device, f"{self._cmd_syntax}:DDT") + self._function = DisplayMathfftview1CursorFunction(device, f"{self._cmd_syntax}:FUNCtion") + self._hbars = DisplayMathfftview1CursorHbars(device, f"{self._cmd_syntax}:HBArs") + self._mode = DisplayMathfftview1CursorMode(device, f"{self._cmd_syntax}:MODe") + self._oneoverdeltatvalue = DisplayMathfftview1CursorOneoverdeltatvalue( + device, f"{self._cmd_syntax}:ONEOVERDELTATVALUE" + ) + self._screen = DisplayMathfftview1CursorScreen(device, f"{self._cmd_syntax}:SCREEN") + self._state = DisplayMathfftview1CursorState(device, f"{self._cmd_syntax}:STATE") + self._vbars = DisplayMathfftview1CursorVbars(device, f"{self._cmd_syntax}:VBArs") + self._waveform = DisplayMathfftview1CursorWaveform(device, f"{self._cmd_syntax}:WAVEform") + + @property + def rolocation(self) -> DisplayMathfftview1CursorRolocation: + """Return the ``DISplay:MATHFFTView1:CURSor:ROLOCATION`` command. + + Description: + - This command sets or queries the location to display the specified Math FFT plot + cursor readouts (in the plot graticule or in a badge in the Results Bar). + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:ROLOCATION?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:ROLOCATION?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:ROLOCATION value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:ROLOCATION {GRATICULE|BADGE} + - DISplay:MATHFFTView1:CURSor:ROLOCATION? + ``` + + Info: + - ``1`` is the Math FFT plot number. + - ``GRATICULE`` sets the Math FFT plot cursor readouts to display as part of the cursors + in the plot view. + - ``BADGE`` removes the Math FFT plot cursor readouts from the cursors in the graticule + and displays the cursor information as a badge in the Results Bar. + """ + return self._rolocation + + @property + def asource(self) -> DisplayMathfftview1CursorAsource: + """Return the ``DISplay:MATHFFTView1:CURSor:ASOUrce`` command. + + Description: + - This command queries the Math-FFT waveform view source for cursor A. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:ASOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:ASOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:ASOUrce? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._asource + + @property + def bsource(self) -> DisplayMathfftview1CursorBsource: + """Return the ``DISplay:MATHFFTView1:CURSor:BSOUrce`` command. + + Description: + - This command queries the Math-FFT waveform view source for cursor B. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:BSOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:BSOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:BSOUrce? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._bsource + + @property + def ddt(self) -> DisplayMathfftview1CursorDdt: + """Return the ``DISplay:MATHFFTView1:CURSor:DDT`` command. + + Description: + - This command queries the delta Y over delta X (ΔY/Δ X) cursor readout value of the + specified cursor in the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:DDT?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor:DDT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:DDT? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._ddt + + @property + def function(self) -> DisplayMathfftview1CursorFunction: + """Return the ``DISplay:MATHFFTView1:CURSor:FUNCtion`` command. + + Description: + - This command sets or queries the cursor type for the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:FUNCtion?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:FUNCtion?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:FUNCtion value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:FUNCtion {WAVEform|VBArs|HBArs|SCREEN} + - DISplay:MATHFFTView1:CURSor:FUNCtion? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``WAVEFORM`` specifies to display the paired vertical cursors in YT display format for + measuring waveform amplitude and time. Measurements are taken at where the cursor + intersects the waveform, and tracks waveform changes. + - ``VBArs`` specifies vertical bar cursors, which measure in horizontal units. + - ``HBArs`` specifies horizontal bar cursors, which measure in vertical units. + - ``SCREEN`` specifies to display both horizontal and vertical bar cursors, which + display the horizontal and vertical positions of the cursors, not waveform levels. Use + these cursors to measure anywhere in the waveform display area. + """ + return self._function + + @property + def hbars(self) -> DisplayMathfftview1CursorHbars: + """Return the ``DISplay:MATHFFTView1:CURSor:HBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:HBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:HBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:MATHFFTView1:CURSor:HBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:MATHFFTView1:CURSor:HBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:MATHFFTView1:CURSor:HBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:MATHFFTView1:CURSor:HBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:MATHFFTView1:CURSor:HBArs:DELTa`` command. + """ + return self._hbars + + @property + def mode(self) -> DisplayMathfftview1CursorMode: + """Return the ``DISplay:MATHFFTView1:CURSor:MODe`` command. + + Description: + - This command sets or queries the cursor tracking mode of the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:MODe?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:MODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:MODe value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:MODe {INDEPENDENT|TRACK} + - DISplay:MATHFFTView1:CURSor:MODe? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``INDEPENDENT`` allows independent adjustment of the two cursors. + - ``TRACK`` ties the navigational functionality of the two cursors together. For cursor + 1 adjustments, this ties the movement of the two cursors together; however, cursor 2 + continues to move independently of cursor 1. + """ + return self._mode + + @property + def oneoverdeltatvalue(self) -> DisplayMathfftview1CursorOneoverdeltatvalue: + """Return the ``DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE`` command. + + Description: + - This command queries the one over delta cursor readout value of the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + """ + return self._oneoverdeltatvalue + + @property + def screen(self) -> DisplayMathfftview1CursorScreen: + """Return the ``DISplay:MATHFFTView1:CURSor:SCREEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:SCREEN?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:SCREEN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.axposition``: The ``DISplay:MATHFFTView1:CURSor:SCREEN:AXPOSition`` command. + - ``.ayposition``: The ``DISplay:MATHFFTView1:CURSor:SCREEN:AYPOSition`` command. + - ``.bxposition``: The ``DISplay:MATHFFTView1:CURSor:SCREEN:BXPOSition`` command. + - ``.byposition``: The ``DISplay:MATHFFTView1:CURSor:SCREEN:BYPOSition`` command. + """ + return self._screen + + @property + def state(self) -> DisplayMathfftview1CursorState: + """Return the ``DISplay:MATHFFTView1:CURSor:STATE`` command. + + Description: + - This command sets or queries the visible state of cursors for the specified Math-FFT + view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:CURSor:STATE {ON|OFF|} + - DISplay:MATHFFTView1:CURSor:STATE? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``ON`` enables the cursors. + - ``1`` enables the cursors. + - ``OFF`` disables the cursors. + - ``0`` disables the cursors. + - ```` = 0 turns off cursors; any other value displays cursors. + """ + return self._state + + @property + def vbars(self) -> DisplayMathfftview1CursorVbars: + """Return the ``DISplay:MATHFFTView1:CURSor:VBArs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:VBArs?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:VBArs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:MATHFFTView1:CURSor:VBArs:APOSition`` command. + - ``.aunits``: The ``DISplay:MATHFFTView1:CURSor:VBArs:AUNIts`` command. + - ``.bposition``: The ``DISplay:MATHFFTView1:CURSor:VBArs:BPOSition`` command. + - ``.bunits``: The ``DISplay:MATHFFTView1:CURSor:VBArs:BUNIts`` command. + - ``.delta``: The ``DISplay:MATHFFTView1:CURSor:VBArs:DELTa`` command. + """ + return self._vbars + + @property + def waveform(self) -> DisplayMathfftview1CursorWaveform: + """Return the ``DISplay:MATHFFTView1:CURSor:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor:WAVEform?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:MATHFFTView1:CURSor:WAVEform?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.aposition``: The ``DISplay:MATHFFTView1:CURSor:WAVEform:APOSition`` command. + - ``.bposition``: The ``DISplay:MATHFFTView1:CURSor:WAVEform:BPOSition`` command. + """ + return self._waveform + + +class DisplayMathfftview1Autoscale(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:MATHFFTView1:AUTOScale`` command. + + Description: + - This command sets or returns the enabled state of autoscale for Math/FFT waveforms. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:AUTOScale?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:AUTOScale?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:MATHFFTView1:AUTOScale value`` + command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:AUTOScale {ON|OFF|} + - DISplay:MATHFFTView1:AUTOScale? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``OFF`` disables the autoscale feature. + - ``ON`` enables the autoscale feature. + - ```` = 0 disables the autoscale feature; any other value enables the autoscale + feature. + """ + + +class DisplayMathfftview1(SCPICmdRead): + """The ``DISplay:MATHFFTView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.cursor``: The ``DISplay:MATHFFTView1:CURSor`` command tree. + - ``.autoscale``: The ``DISplay:MATHFFTView1:AUTOScale`` command. + - ``.gridlines``: The ``DISplay:MATHFFTView1:GRIDlines`` command. + - ``.math``: The ``DISplay:MATHFFTView1:MATH`` command tree. + - ``.xaxis``: The ``DISplay:MATHFFTView1:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:MATHFFTView1:YAXIS`` command tree. + - ``.zoom``: The ``DISplay:MATHFFTView1:ZOOM`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autoscale = DisplayMathfftview1Autoscale(device, f"{self._cmd_syntax}:AUTOScale") + self._cursor = DisplayMathfftview1Cursor(device, f"{self._cmd_syntax}:CURSor") + self._gridlines = DisplayMathfftview1Gridlines(device, f"{self._cmd_syntax}:GRIDlines") + self._math = DisplayMathfftview1Math(device, f"{self._cmd_syntax}:MATH") + self._xaxis = DisplayMathfftview1Xaxis(device, f"{self._cmd_syntax}:XAXIS") + self._yaxis = DisplayMathfftview1Yaxis(device, f"{self._cmd_syntax}:YAXIS") + self._zoom = DisplayMathfftview1Zoom(device, f"{self._cmd_syntax}:ZOOM") + + @property + def autoscale(self) -> DisplayMathfftview1Autoscale: + """Return the ``DISplay:MATHFFTView1:AUTOScale`` command. + + Description: + - This command sets or returns the enabled state of autoscale for Math/FFT waveforms. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:AUTOScale?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:AUTOScale?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:AUTOScale value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:AUTOScale {ON|OFF|} + - DISplay:MATHFFTView1:AUTOScale? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``OFF`` disables the autoscale feature. + - ``ON`` enables the autoscale feature. + - ```` = 0 disables the autoscale feature; any other value enables the autoscale + feature. + """ + return self._autoscale + + @property + def cursor(self) -> DisplayMathfftview1Cursor: + """Return the ``DISplay:MATHFFTView1:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:CURSor?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.rolocation``: The ``DISplay:MATHFFTView1:CURSor:ROLOCATION`` command. + - ``.asource``: The ``DISplay:MATHFFTView1:CURSor:ASOUrce`` command. + - ``.bsource``: The ``DISplay:MATHFFTView1:CURSor:BSOUrce`` command. + - ``.ddt``: The ``DISplay:MATHFFTView1:CURSor:DDT`` command. + - ``.function``: The ``DISplay:MATHFFTView1:CURSor:FUNCtion`` command. + - ``.hbars``: The ``DISplay:MATHFFTView1:CURSor:HBArs`` command tree. + - ``.mode``: The ``DISplay:MATHFFTView1:CURSor:MODe`` command. + - ``.oneoverdeltatvalue``: The ``DISplay:MATHFFTView1:CURSor:ONEOVERDELTATVALUE`` + command. + - ``.screen``: The ``DISplay:MATHFFTView1:CURSor:SCREEN`` command tree. + - ``.state``: The ``DISplay:MATHFFTView1:CURSor:STATE`` command. + - ``.vbars``: The ``DISplay:MATHFFTView1:CURSor:VBArs`` command tree. + - ``.waveform``: The ``DISplay:MATHFFTView1:CURSor:WAVEform`` command tree. + """ + return self._cursor + + @property + def gridlines(self) -> DisplayMathfftview1Gridlines: + """Return the ``DISplay:MATHFFTView1:GRIDlines`` command. + + Description: + - This command sets or queries the grid lines setting for the specified Math-FFT view. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:GRIDlines?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:GRIDlines?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:MATHFFTView1:GRIDlines value`` command. + + SCPI Syntax: + ``` + - DISplay:MATHFFTView1:GRIDlines {HORizontal|VERTical|BOTH} + - DISplay:MATHFFTView1:GRIDlines? + ``` + + Info: + - ``1`` is the Math-FFT waveform number. + - ``HORizontal`` specifies horizontal grid lines. + - ``VERTical`` specifies vertical grid lines. + - ``BOTH`` specifies both vertical and horizontal grid lines. + """ + return self._gridlines + + @property + def math(self) -> DisplayMathfftview1Math: + """Return the ``DISplay:MATHFFTView1:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:MATH?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.math``: The ``DISplay:MATHFFTView1:MATH:MATH`` command tree. + """ + return self._math + + @property + def xaxis(self) -> DisplayMathfftview1Xaxis: + """Return the ``DISplay:MATHFFTView1:XAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:XAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:XAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.scale``: The ``DISplay:MATHFFTView1:XAXIS:SCALE`` command. + """ + return self._xaxis + + @property + def yaxis(self) -> DisplayMathfftview1Yaxis: + """Return the ``DISplay:MATHFFTView1:YAXIS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:YAXIS?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:YAXIS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.scale``: The ``DISplay:MATHFFTView1:YAXIS:SCALE`` command. + """ + return self._yaxis + + @property + def zoom(self) -> DisplayMathfftview1Zoom: + """Return the ``DISplay:MATHFFTView1:ZOOM`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1:ZOOM?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1:ZOOM?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.xaxis``: The ``DISplay:MATHFFTView1:ZOOM:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:MATHFFTView1:ZOOM:YAXIS`` command tree. + """ + return self._zoom + + +class DisplayIntensityBacklightAutodimTime(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe`` command. + + Description: + - Sets or queries the amount of time, in minutes, to wait for no user interface activity + before automatically dimming the display. The time can range from a minimum of 10 minutes + to a maximum of 1440 minutes (24 hours). The default is 10 minutes. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe value`` command. + + SCPI Syntax: + ``` + - DISplay:INTENSITy:BACKLight:AUTODim:TIMe + - DISplay:INTENSITy:BACKLight:AUTODim:TIMe? + ``` + + Info: + - ```` is the amount of time, in minutes, to wait for no user interface activity before + automatically dimming the display. + """ + + +class DisplayIntensityBacklightAutodimEnable(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble`` command. + + Description: + - Sets or queries the state of the display auto-dim feature. The default is enabled. Once + the backlight has dimmed, any button push, knob turn or mouse movement returns the + backlight value to the value set by ``:DISplay:INTENSITy:BACKLight``. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble value`` command. + + SCPI Syntax: + ``` + - DISplay:INTENSITy:BACKLight:AUTODim:ENAble {ON|OFF} + - DISplay:INTENSITy:BACKLight:AUTODim:ENAble? + ``` + + Info: + - ``ON`` enables the display auto-dim feature. + - ``OFF`` disables the display auto-dim feature. + """ + + +class DisplayIntensityBacklightAutodim(SCPICmdRead): + """The ``DISplay:INTENSITy:BACKLight:AUTODim`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:INTENSITy:BACKLight:AUTODim?`` + query. + - Using the ``.verify(value)`` method will send the ``DISplay:INTENSITy:BACKLight:AUTODim?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.enable``: The ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble`` command. + - ``.time``: The ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._enable = DisplayIntensityBacklightAutodimEnable(device, f"{self._cmd_syntax}:ENAble") + self._time = DisplayIntensityBacklightAutodimTime(device, f"{self._cmd_syntax}:TIMe") + + @property + def enable(self) -> DisplayIntensityBacklightAutodimEnable: + """Return the ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble`` command. + + Description: + - Sets or queries the state of the display auto-dim feature. The default is enabled. + Once the backlight has dimmed, any button push, knob turn or mouse movement returns + the backlight value to the value set by ``:DISplay:INTENSITy:BACKLight``. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble value`` command. + + SCPI Syntax: + ``` + - DISplay:INTENSITy:BACKLight:AUTODim:ENAble {ON|OFF} + - DISplay:INTENSITy:BACKLight:AUTODim:ENAble? + ``` + + Info: + - ``ON`` enables the display auto-dim feature. + - ``OFF`` disables the display auto-dim feature. + """ + return self._enable + + @property + def time(self) -> DisplayIntensityBacklightAutodimTime: + """Return the ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe`` command. + + Description: + - Sets or queries the amount of time, in minutes, to wait for no user interface activity + before automatically dimming the display. The time can range from a minimum of 10 + minutes to a maximum of 1440 minutes (24 hours). The default is 10 minutes. + + Usage: + - Using the ``.query()`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe?`` query. + - Using the ``.verify(value)`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe value`` command. + + SCPI Syntax: + ``` + - DISplay:INTENSITy:BACKLight:AUTODim:TIMe + - DISplay:INTENSITy:BACKLight:AUTODim:TIMe? + ``` + + Info: + - ```` is the amount of time, in minutes, to wait for no user interface activity + before automatically dimming the display. + """ + return self._time + + +class DisplayIntensityBacklight(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:INTENSITy:BACKLight`` command. + + Description: + - This command sets or queries the display backlight intensity setting. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:INTENSITy:BACKLight?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:INTENSITy:BACKLight?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:INTENSITy:BACKLight value`` + command. + + SCPI Syntax: + ``` + - DISplay:INTENSITy:BACKLight {LOW|MEDium|HIGH} + - DISplay:INTENSITy:BACKLight? + ``` + + Info: + - ``LOW`` selects a low brightness level. + - ``MEDium`` selects a moderate brightness level. + - ``HIGH`` selects a full brightness level. + + Properties: + - ``.autodim``: The ``DISplay:INTENSITy:BACKLight:AUTODim`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autodim = DisplayIntensityBacklightAutodim(device, f"{self._cmd_syntax}:AUTODim") + + @property + def autodim(self) -> DisplayIntensityBacklightAutodim: + """Return the ``DISplay:INTENSITy:BACKLight:AUTODim`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:INTENSITy:BACKLight:AUTODim?`` + query. + - Using the ``.verify(value)`` method will send the + ``DISplay:INTENSITy:BACKLight:AUTODim?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.enable``: The ``DISplay:INTENSITy:BACKLight:AUTODim:ENAble`` command. + - ``.time``: The ``DISplay:INTENSITy:BACKLight:AUTODim:TIMe`` command. + """ + return self._autodim + + +class DisplayIntensity(SCPICmdRead): + """The ``DISplay:INTENSITy`` command. + + Description: + - This query-only command returns the waveform saturation level and screen saver settings. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:INTENSITy?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:INTENSITy?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:INTENSITy? + ``` + + Properties: + - ``.backlight``: The ``DISplay:INTENSITy:BACKLight`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._backlight = DisplayIntensityBacklight(device, f"{self._cmd_syntax}:BACKLight") + + @property + def backlight(self) -> DisplayIntensityBacklight: + """Return the ``DISplay:INTENSITy:BACKLight`` command. + + Description: + - This command sets or queries the display backlight intensity setting. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:INTENSITy:BACKLight?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:INTENSITy:BACKLight?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:INTENSITy:BACKLight value`` + command. + + SCPI Syntax: + ``` + - DISplay:INTENSITy:BACKLight {LOW|MEDium|HIGH} + - DISplay:INTENSITy:BACKLight? + ``` + + Info: + - ``LOW`` selects a low brightness level. + - ``MEDium`` selects a moderate brightness level. + - ``HIGH`` selects a full brightness level. + + Sub-properties: + - ``.autodim``: The ``DISplay:INTENSITy:BACKLight:AUTODim`` command tree. + """ + return self._backlight + + +class DisplayGlobalRefItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:GLObal:REF:STATE`` command. + + Description: + - this command sets or queries the global state (display mode On or Off) of the specified + reference waveform. Setting this value true (On or NR1 ≠ 0 ) turns on the source in the + waveform view. Setting this value false (Off or NR1 = 0 ) turns off the source in the + waveform view. This command only works if the specified reference waveform is added + already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:REF:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:REF:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:GLObal:REF:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:GLObal:REF:STATE {ON|OFF|} + - DISplay:GLObal:REF:STATE? + ``` + + Info: + - ``REF`` is the Reference waveform number. + - ```` = 0 disables the display of the specified reference; any other value enables + display of the reference. + - ``ON`` enables display of the specified reference. + - ``OFF`` disables display of the specified reference. + """ + + +class DisplayGlobalRefItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:GLObal:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``REF`` is the Reference waveform number. + + Properties: + - ``.state``: The ``DISplay:GLObal:REF:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayGlobalRefItemState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> DisplayGlobalRefItemState: + """Return the ``DISplay:GLObal:REF:STATE`` command. + + Description: + - this command sets or queries the global state (display mode On or Off) of the + specified reference waveform. Setting this value true (On or NR1 ≠ 0 ) turns on the + source in the waveform view. Setting this value false (Off or NR1 = 0 ) turns off the + source in the waveform view. This command only works if the specified reference + waveform is added already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:REF:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:REF:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:GLObal:REF:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:GLObal:REF:STATE {ON|OFF|} + - DISplay:GLObal:REF:STATE? + ``` + + Info: + - ``REF`` is the Reference waveform number. + - ```` = 0 disables the display of the specified reference; any other value enables + display of the reference. + - ``ON`` enables display of the specified reference. + - ``OFF`` disables display of the specified reference. + """ + return self._state + + +class DisplayGlobalPlotItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:GLObal:PLOT:STATE`` command. + + Description: + - This command sets or queries the global state (display mode On or Off) of the specified + time trend plot. Setting this value true (On or NR1 ≠ 0 ) turns on the source in the + waveform view. Setting this value false (Off or NR1 = 0 ) turns off the source in the + waveform view. This command only works if the specified plot is added already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:PLOT:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:PLOT:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:GLObal:PLOT:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:GLObal:PLOT:STATE {ON|OFF|} + - DISplay:GLObal:PLOT:STATE? + ``` + + Info: + - ``PLOT`` is the plot number. + - ```` = 0 disables the display of the specified plot; any other value enables display + of the plot. + - ``ON`` enables display of the specified plot. + - ``OFF`` disables display of the specified plot. + """ + + +class DisplayGlobalPlotItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:GLObal:PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:PLOT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Properties: + - ``.state``: The ``DISplay:GLObal:PLOT:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayGlobalPlotItemState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> DisplayGlobalPlotItemState: + """Return the ``DISplay:GLObal:PLOT:STATE`` command. + + Description: + - This command sets or queries the global state (display mode On or Off) of the + specified time trend plot. Setting this value true (On or NR1 ≠ 0 ) turns on the + source in the waveform view. Setting this value false (Off or NR1 = 0 ) turns off the + source in the waveform view. This command only works if the specified plot is added + already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:PLOT:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:PLOT:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:GLObal:PLOT:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:GLObal:PLOT:STATE {ON|OFF|} + - DISplay:GLObal:PLOT:STATE? + ``` + + Info: + - ``PLOT`` is the plot number. + - ```` = 0 disables the display of the specified plot; any other value enables + display of the plot. + - ``ON`` enables display of the specified plot. + - ``OFF`` disables display of the specified plot. + """ + return self._state + + +class DisplayGlobalMathItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:GLObal:MATH:STATE`` command. + + Description: + - This command sets or queries the global state (display mode On or Off) of the specified + math. Setting this value true (On or NR1 ≠ 0 ) turns on the source in the waveform view. + Setting this value false (Off or NR1 = 0 ) turns off the source in the waveform view. This + command only works if the specified math waveform is added already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:MATH:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:MATH:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:GLObal:MATH:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:GLObal:MATH:STATE {ON|OFF|} + - DISplay:GLObal:MATH:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified math; any other value enables display + of the math. + - ``ON`` enables display of the specified math. + - ``OFF`` disables display of the specified math. + """ + + +class DisplayGlobalMathItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:GLObal:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:MATH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:GLObal:MATH:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayGlobalMathItemState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> DisplayGlobalMathItemState: + """Return the ``DISplay:GLObal:MATH:STATE`` command. + + Description: + - This command sets or queries the global state (display mode On or Off) of the + specified math. Setting this value true (On or NR1 ≠ 0 ) turns on the source in the + waveform view. Setting this value false (Off or NR1 = 0 ) turns off the source in the + waveform view. This command only works if the specified math waveform is added + already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:MATH:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:MATH:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``DISplay:GLObal:MATH:STATE value`` command. + + SCPI Syntax: + ``` + - DISplay:GLObal:MATH:STATE {ON|OFF|} + - DISplay:GLObal:MATH:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified math; any other value enables + display of the math. + - ``ON`` enables display of the specified math. + - ``OFF`` disables display of the specified math. + """ + return self._state + + +class DisplayGlobalChannelState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:GLObal:CH:STATE`` command. + + Description: + - This command sets or queries the global state (display mode On or Off) of the specified + channel (both analog and digital). Setting this value true (On or NR1 ≠ 0 ) turns on the + source in the waveform view. Setting this value false (Off or NR1 = 0 ) turns off the + source in the waveform view. This command only works if the specified channel is added + already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:CH:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:CH:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:GLObal:CH:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:GLObal:CH:STATE {ON|OFF|} + - DISplay:GLObal:CH:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified channel; any other value enables + display of the channel. + - ``ON`` enables display of the specified channel. + - ``OFF`` disables display of the specified channel. + """ + + +class DisplayGlobalChannel(ValidatedChannel, SCPICmdRead): + """The ``DISplay:GLObal:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:CH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:GLObal:CH:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayGlobalChannelState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> DisplayGlobalChannelState: + """Return the ``DISplay:GLObal:CH:STATE`` command. + + Description: + - This command sets or queries the global state (display mode On or Off) of the + specified channel (both analog and digital). Setting this value true (On or NR1 ≠ 0 ) + turns on the source in the waveform view. Setting this value false (Off or NR1 = 0 ) + turns off the source in the waveform view. This command only works if the specified + channel is added already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:CH:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:CH:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:GLObal:CH:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:GLObal:CH:STATE {ON|OFF|} + - DISplay:GLObal:CH:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified channel; any other value enables + display of the channel. + - ``ON`` enables display of the specified channel. + - ``OFF`` disables display of the specified channel. + """ + return self._state + + +class DisplayGlobalBItemState(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:GLObal:B:STATE`` command. + + Description: + - This command sets or queries the global state (display mode On or Off) of the specified + bus. Setting this value true (On or NR1 ≠ 0 ) turns on the source in the waveform view. + Setting this value false (Off or NR1 = 0 ) turns off the source in the waveform view. This + command only works if the specified bus is added already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:B:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:B:STATE?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:GLObal:B:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:GLObal:B:STATE {ON|OFF|} + - DISplay:GLObal:B:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified bus; any other value enables display + of the bus. + - ``ON`` enables display of the specified bus. + - ``OFF`` disables display of the specified bus. + """ + + +class DisplayGlobalBItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``DISplay:GLObal:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:B?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:B?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``DISplay:GLObal:B:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = DisplayGlobalBItemState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> DisplayGlobalBItemState: + """Return the ``DISplay:GLObal:B:STATE`` command. + + Description: + - This command sets or queries the global state (display mode On or Off) of the + specified bus. Setting this value true (On or NR1 ≠ 0 ) turns on the source in the + waveform view. Setting this value false (Off or NR1 = 0 ) turns off the source in the + waveform view. This command only works if the specified bus is added already. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:B:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:B:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:GLObal:B:STATE value`` + command. + + SCPI Syntax: + ``` + - DISplay:GLObal:B:STATE {ON|OFF|} + - DISplay:GLObal:B:STATE? + ``` + + Info: + - ```` = 0 disables the display of the specified bus; any other value enables + display of the bus. + - ``ON`` enables display of the specified bus. + - ``OFF`` disables display of the specified bus. + """ + return self._state + + +class DisplayGlobal(SCPICmdRead): + """The ``DISplay:GLObal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.b``: The ``DISplay:GLObal:B`` command tree. + - ``.ch``: The ``DISplay:GLObal:CH`` command tree. + - ``.math``: The ``DISplay:GLObal:MATH`` command tree. + - ``.plot``: The ``DISplay:GLObal:PLOT`` command tree. + - ``.ref``: The ``DISplay:GLObal:REF`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._b: Dict[int, DisplayGlobalBItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayGlobalBItem(device, f"{self._cmd_syntax}:B{x}") + ) + self._ch: Dict[int, DisplayGlobalChannel] = DefaultDictPassKeyToFactory( + lambda x: DisplayGlobalChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._math: Dict[int, DisplayGlobalMathItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayGlobalMathItem(device, f"{self._cmd_syntax}:MATH{x}") + ) + self._plot: Dict[int, DisplayGlobalPlotItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayGlobalPlotItem(device, f"{self._cmd_syntax}:PLOT{x}") + ) + self._ref: Dict[int, DisplayGlobalRefItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayGlobalRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + + @property + def b(self) -> Dict[int, DisplayGlobalBItem]: + """Return the ``DISplay:GLObal:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:B?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:B?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:GLObal:B:STATE`` command. + """ + return self._b + + @property + def ch(self) -> Dict[int, DisplayGlobalChannel]: + """Return the ``DISplay:GLObal:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:CH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:GLObal:CH:STATE`` command. + """ + return self._ch + + @property + def math(self) -> Dict[int, DisplayGlobalMathItem]: + """Return the ``DISplay:GLObal:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:MATH?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``DISplay:GLObal:MATH:STATE`` command. + """ + return self._math + + @property + def plot(self) -> Dict[int, DisplayGlobalPlotItem]: + """Return the ``DISplay:GLObal:PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:PLOT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Sub-properties: + - ``.state``: The ``DISplay:GLObal:PLOT:STATE`` command. + """ + return self._plot + + @property + def ref(self) -> Dict[int, DisplayGlobalRefItem]: + """Return the ``DISplay:GLObal:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``REF`` is the Reference waveform number. + + Sub-properties: + - ``.state``: The ``DISplay:GLObal:REF:STATE`` command. + """ + return self._ref + + +class DisplayColors(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:COLors`` command. + + Description: + - Sets or queries the color mode for the graticule and waveform display. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:COLors?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:COLors?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:COLors value`` command. + + SCPI Syntax: + ``` + - DISplay:COLors {NORMal|INVERTed} + - DISplay:COLors? + ``` + + Info: + - ``NORMal`` specifies normal color mode. + - ``INVERTed`` specifies inverted color mode. + """ + + +class DisplayChannelNormalcolor(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:CH:NORMALColor`` command. + + Description: + - This command sets or queries the normal mode color of the specified input source to the + specified color. You can assign one of 48 unique colors to any channel, math, or reference + waveform. These colors replace the default normal colors and remain in effect until you + reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:CH:NORMALColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:CH:NORMALColor?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:CH:NORMALColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:CH:NORMALColor COLOR + - DISplay:CH:NORMALColor? + ``` + + Info: + - ``CH`` specifies the input channel for which you want to change the waveform color, + where is the channel number. + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to 47. + """ + + +class DisplayChannelInvertcolor(SCPICmdWrite, SCPICmdRead): + """The ``DISplay:CH:INVERTColor`` command. + + Description: + - This command sets or queries the Inverted mode color of the specified input source to the + specified color. You can assign one of 48 unique colors to any channel, math, or reference + waveform. These colors replace the default Inverted colors and remain in effect until you + reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:CH:INVERTColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:CH:INVERTColor?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:CH:INVERTColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:CH:INVERTColor COLOR + - DISplay:CH:INVERTColor? + ``` + + Info: + - ``CH`` specifies the input channel for which you want to change the waveform color, + where is the channel number. + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to 47. + """ + + +class DisplayChannel(ValidatedChannel, SCPICmdRead): + """The ``DISplay:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:CH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:CH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` specifies the input channel for which you want to change the waveform color, + where is the channel number. + + Properties: + - ``.invertcolor``: The ``DISplay:CH:INVERTColor`` command. + - ``.normalcolor``: The ``DISplay:CH:NORMALColor`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._invertcolor = DisplayChannelInvertcolor(device, f"{self._cmd_syntax}:INVERTColor") + self._normalcolor = DisplayChannelNormalcolor(device, f"{self._cmd_syntax}:NORMALColor") + + @property + def invertcolor(self) -> DisplayChannelInvertcolor: + """Return the ``DISplay:CH:INVERTColor`` command. + + Description: + - This command sets or queries the Inverted mode color of the specified input source to + the specified color. You can assign one of 48 unique colors to any channel, math, or + reference waveform. These colors replace the default Inverted colors and remain in + effect until you reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:CH:INVERTColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:CH:INVERTColor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:CH:INVERTColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:CH:INVERTColor COLOR + - DISplay:CH:INVERTColor? + ``` + + Info: + - ``CH`` specifies the input channel for which you want to change the waveform color, + where is the channel number. + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to + 47. + """ + return self._invertcolor + + @property + def normalcolor(self) -> DisplayChannelNormalcolor: + """Return the ``DISplay:CH:NORMALColor`` command. + + Description: + - This command sets or queries the normal mode color of the specified input source to + the specified color. You can assign one of 48 unique colors to any channel, math, or + reference waveform. These colors replace the default normal colors and remain in + effect until you reset the colors. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:CH:NORMALColor?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:CH:NORMALColor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:CH:NORMALColor value`` + command. + + SCPI Syntax: + ``` + - DISplay:CH:NORMALColor COLOR + - DISplay:CH:NORMALColor? + ``` + + Info: + - ``CH`` specifies the input channel for which you want to change the waveform color, + where is the channel number. + - ``COLOR`` specifies the color to assign to the specified waveform, where = 0 to + 47. + """ + return self._normalcolor + + +# pylint: disable=too-many-instance-attributes +class Display(SCPICmdRead): + """The ``DISplay`` command. + + Description: + - This query-only command returns the current Display settings. + + Usage: + - Using the ``.query()`` method will send the ``DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay? + ``` + + Properties: + - ``.colors``: The ``DISplay:COLors`` command. + - ``.global``: The ``DISplay:GLObal`` command tree. + - ``.intensity``: The ``DISplay:INTENSITy`` command. + - ``.mathfftview1``: The ``DISplay:MATHFFTView1`` command tree. + - ``.persistence``: The ``DISplay:PERSistence`` command. + - ``.plotview``: The ``DISplay:PLOTVIEW`` command tree. + - ``.plotview1``: The ``DISplay:PLOTView1`` command tree. + - ``.reffftview``: The ``DISplay:REFFFTView`` command tree. + - ``.select``: The ``DISplay:SELect`` command tree. + - ``.specview1``: The ``DISplay:SPECView1`` command tree. + - ``.varpersist``: The ``DISplay:VARpersist`` command. + - ``.waveview``: The ``DISplay:WAVEView`` command tree. + - ``.waveview1``: The ``DISplay:WAVEView1`` command tree. + - ``.waveform``: The ``DISplay:WAVEform`` command. + - ``.ch``: The ``DISplay:CH`` command tree. + - ``.math``: The ``DISplay:Math`` command tree. + - ``.ref``: The ``DISplay:REF`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "DISplay") -> None: + super().__init__(device, cmd_syntax) + self._colors = DisplayColors(device, f"{self._cmd_syntax}:COLors") + self._global = DisplayGlobal(device, f"{self._cmd_syntax}:GLObal") + self._intensity = DisplayIntensity(device, f"{self._cmd_syntax}:INTENSITy") + self._mathfftview1 = DisplayMathfftview1(device, f"{self._cmd_syntax}:MATHFFTView1") + self._persistence = DisplayPersistence(device, f"{self._cmd_syntax}:PERSistence") + self._plotview: Dict[int, DisplayPlotviewItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayPlotviewItem(device, f"{self._cmd_syntax}:PLOTVIEW{x}") + ) + self._plotview1 = DisplayPlotview1(device, f"{self._cmd_syntax}:PLOTView1") + self._reffftview: Dict[int, DisplayReffftviewItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayReffftviewItem(device, f"{self._cmd_syntax}:REFFFTView{x}") + ) + self._select = DisplaySelect(device, f"{self._cmd_syntax}:SELect") + self._specview1 = DisplaySpecview1(device, f"{self._cmd_syntax}:SPECView1") + self._varpersist = DisplayVarpersist(device, f"{self._cmd_syntax}:VARpersist") + self._waveview = DisplayWaveview(device, f"{self._cmd_syntax}:WAVEView") + self._waveview1 = DisplayWaveview1(device, f"{self._cmd_syntax}:WAVEView1") + self._waveform = DisplayWaveform(device, f"{self._cmd_syntax}:WAVEform") + self._ch: Dict[int, DisplayChannel] = DefaultDictPassKeyToFactory( + lambda x: DisplayChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._math: Dict[int, DisplayMathItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayMathItem(device, f"{self._cmd_syntax}:Math{x}") + ) + self._ref: Dict[int, DisplayRefItem] = DefaultDictPassKeyToFactory( + lambda x: DisplayRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + + @property + def colors(self) -> DisplayColors: + """Return the ``DISplay:COLors`` command. + + Description: + - Sets or queries the color mode for the graticule and waveform display. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:COLors?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:COLors?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:COLors value`` command. + + SCPI Syntax: + ``` + - DISplay:COLors {NORMal|INVERTed} + - DISplay:COLors? + ``` + + Info: + - ``NORMal`` specifies normal color mode. + - ``INVERTed`` specifies inverted color mode. + """ + return self._colors + + @property + def global_(self) -> DisplayGlobal: + """Return the ``DISplay:GLObal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:GLObal?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:GLObal?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.b``: The ``DISplay:GLObal:B`` command tree. + - ``.ch``: The ``DISplay:GLObal:CH`` command tree. + - ``.math``: The ``DISplay:GLObal:MATH`` command tree. + - ``.plot``: The ``DISplay:GLObal:PLOT`` command tree. + - ``.ref``: The ``DISplay:GLObal:REF`` command tree. + """ + return self._global + + @property + def intensity(self) -> DisplayIntensity: + """Return the ``DISplay:INTENSITy`` command. + + Description: + - This query-only command returns the waveform saturation level and screen saver + settings. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:INTENSITy?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:INTENSITy?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay:INTENSITy? + ``` + + Sub-properties: + - ``.backlight``: The ``DISplay:INTENSITy:BACKLight`` command. + """ + return self._intensity + + @property + def mathfftview1(self) -> DisplayMathfftview1: + """Return the ``DISplay:MATHFFTView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:MATHFFTView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:MATHFFTView1?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.cursor``: The ``DISplay:MATHFFTView1:CURSor`` command tree. + - ``.autoscale``: The ``DISplay:MATHFFTView1:AUTOScale`` command. + - ``.gridlines``: The ``DISplay:MATHFFTView1:GRIDlines`` command. + - ``.math``: The ``DISplay:MATHFFTView1:MATH`` command tree. + - ``.xaxis``: The ``DISplay:MATHFFTView1:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:MATHFFTView1:YAXIS`` command tree. + - ``.zoom``: The ``DISplay:MATHFFTView1:ZOOM`` command tree. + """ + return self._mathfftview1 + + @property + def persistence(self) -> DisplayPersistence: + """Return the ``DISplay:PERSistence`` command. + + Description: + - This command sets or queries the display persistence for analog waveforms. Persistence + is valid for wave views only. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PERSistence?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PERSistence?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:PERSistence value`` + command. + + SCPI Syntax: + ``` + - DISplay:PERSistence {OFF|AUTO|INFPersist|INFInite|VARpersist|CLEAR} + - DISplay:PERSistence? + ``` + + Info: + - ``OFF`` disables the persistence aspect of the display. + - ``AUTO`` automatically set the persistence. + - ``INFPersist`` sets a display mode where any pixels, once touched by samples, remain + set until cleared by a mode change. + - ``INFInite`` sets a display mode where any pixels, once touched by samples, remain set + until cleared by a mode change. + - ``VARPersist`` sets a display mode where set pixels are gradually dimmed. + - ``CLEAR`` resets the persist time count down and clears the display of acquired + points. + + Sub-properties: + - ``.reset``: The ``DISplay:PERSistence:RESET`` command. + """ + return self._persistence + + @property + def plotview(self) -> Dict[int, DisplayPlotviewItem]: + """Return the ``DISplay:PLOTVIEW`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTVIEW?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTVIEW?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.xaxis``: The ``DISplay:PLOTVIEW:XAXIS`` command tree. + - ``.yaxis``: The ``DISplay:PLOTVIEW:YAXIS`` command tree. + """ + return self._plotview + + @property + def plotview1(self) -> DisplayPlotview1: + """Return the ``DISplay:PLOTView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:PLOTView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:PLOTView1?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.cursor``: The ``DISplay:PLOTView1:CURSor`` command tree. + - ``.autoscale``: The ``DISplay:PLOTView1:AUTOScale`` command. + - ``.gridlines``: The ``DISplay:PLOTView1:GRIDlines`` command. + - ``.zoom``: The ``DISplay:PLOTView1:ZOOM`` command tree. + """ + return self._plotview1 + + @property + def reffftview(self) -> Dict[int, DisplayReffftviewItem]: + """Return the ``DISplay:REFFFTView`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REFFFTView?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REFFFTView?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``REFFFTView`` is the Reference FFT plot number. + + Sub-properties: + - ``.autoscale``: The ``DISplay:REFFFTView:AUTOScale`` command. + - ``.cursor``: The ``DISplay:REFFFTView:CURSor`` command tree. + - ``.gridlines``: The ``DISplay:REFFFTView:GRIDlines`` command. + - ``.ref``: The ``DISplay:REFFFTView:REF`` command tree. + - ``.xaxis``: The ``DISplay:REFFFTView:XAXIS`` command tree. + - ``.zoom``: The ``DISplay:REFFFTView:ZOOM`` command tree. + """ + return self._reffftview + + @property + def select(self) -> DisplaySelect: + """Return the ``DISplay:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SELect?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bus``: The ``DISplay:SELect:BUS`` command. + - ``.math``: The ``DISplay:SELect:MATH`` command. + - ``.reference``: The ``DISplay:SELect:REFerence`` command. + - ``.source``: The ``DISplay:SELect:SOUrce`` command. + - ``.specview1``: The ``DISplay:SELect:SPECView1`` command tree. + - ``.view``: The ``DISplay:SELect:VIEW`` command. + - ``.waveview1``: The ``DISplay:SELect:WAVEView1`` command tree. + """ + return self._select + + @property + def specview1(self) -> DisplaySpecview1: + """Return the ``DISplay:SPECView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:SPECView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:SPECView1?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.cursor``: The ``DISplay:SPECView1:CURSor`` command tree. + - ``.graticule``: The ``DISplay:SPECView1:GRAticule`` command. + - ``.horz``: The ``DISplay:SPECView1:HORZ`` command. + - ``.intensity``: The ``DISplay:SPECView1:INTENSITy`` command tree. + - ``.viewstyle``: The ``DISplay:SPECView1:VIEWStyle`` command. + """ + return self._specview1 + + @property + def varpersist(self) -> DisplayVarpersist: + """Return the ``DISplay:VARpersist`` command. + + Description: + - This command sets or queries display persistence decay time, which is the approximate + decay time for a freshly struck persistence sample. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:VARpersist?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:VARpersist?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:VARpersist value`` command. + + SCPI Syntax: + ``` + - DISplay:VARpersist + - DISplay:VARpersist? + ``` + + Info: + - ```` indicates the persistence decay time and ranges from 0.5 to 100. + """ + return self._varpersist + + @property + def waveview(self) -> DisplayWaveview: + """Return the ``DISplay:WAVEView`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.cursor``: The ``DISplay:WAVEView:CURSor`` command tree. + - ``.gridtype``: The ``DISplay:WAVEView:GRIDTYPE`` command. + """ + return self._waveview + + @property + def waveview1(self) -> DisplayWaveview1: + """Return the ``DISplay:WAVEView1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEView1?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEView1?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bus``: The ``DISplay:WAVEView1:BUS`` command tree. + - ``.ch``: The ``DISplay:WAVEView1:CH`` command tree. + - ``.cursor``: The ``DISplay:WAVEView1:CURSor`` command. + - ``.filter``: The ``DISplay:WAVEView1:FILTer`` command. + - ``.graticule``: The ``DISplay:WAVEView1:GRAticule`` command. + - ``.intensity``: The ``DISplay:WAVEView1:INTENSITy`` command tree. + - ``.math``: The ``DISplay:WAVEView1:MATH`` command tree. + - ``.plot``: The ``DISplay:WAVEView1:PLOT`` command tree. + - ``.ref``: The ``DISplay:WAVEView1:REF`` command tree. + - ``.rf_frequency``: The ``DISplay:WAVEView1:RF_FREQuency`` command tree. + - ``.rf_magnitude``: The ``DISplay:WAVEView1:RF_MAGnitude`` command tree. + - ``.rf_phase``: The ``DISplay:WAVEView1:RF_PHASe`` command tree. + - ``.style``: The ``DISplay:WAVEView1:STYle`` command. + - ``.viewstyle``: The ``DISplay:WAVEView1:VIEWStyle`` command. + - ``.zoom``: The ``DISplay:WAVEView1:ZOOM`` command. + - ``.refx``: The ``DISplay:WAVEView1:REF`` command tree. + """ + return self._waveview1 + + @property + def waveform(self) -> DisplayWaveform: + """Return the ``DISplay:WAVEform`` command. + + Description: + - This command globally enables or disables the waveform display. When disabled, the + waveform is still acquired and held in memory, but it is not drawn to the screen. + Disabling the waveform display may improve processing speed. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:WAVEform?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:WAVEform?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DISplay:WAVEform value`` command. + + SCPI Syntax: + ``` + - DISplay:WAVEform {ON|OFF|} + - DISplay:WAVEform? + ``` + + Info: + - ```` enables or disables the waveform display. 0 disables the waveform display; + any other value enables the waveform display. + - ``ON`` enables the waveform display. + - ``OFF`` disables the waveform display. + """ + return self._waveform + + @property + def ch(self) -> Dict[int, DisplayChannel]: + """Return the ``DISplay:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:CH?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:CH?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` specifies the input channel for which you want to change the waveform color, + where is the channel number. + + Sub-properties: + - ``.invertcolor``: The ``DISplay:CH:INVERTColor`` command. + - ``.normalcolor``: The ``DISplay:CH:NORMALColor`` command. + """ + return self._ch + + @property + def math(self) -> Dict[int, DisplayMathItem]: + """Return the ``DISplay:Math`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:Math?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:Math?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.invertcolor``: The ``DISplay:Math:INVERTColor`` command. + - ``.normalcolor``: The ``DISplay:Math:NORMALColor`` command. + """ + return self._math + + @property + def ref(self) -> Dict[int, DisplayRefItem]: + """Return the ``DISplay:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``DISplay:REF?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay:REF?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``REF`` specifies the reference waveform for which you want to change the waveform + color, where is the reference waveform number. + + Sub-properties: + - ``.invertcolor``: The ``DISplay:REF:INVERTColor`` command. + - ``.normalcolor``: The ``DISplay:REF:NORMALColor`` command. + """ + return self._ref diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/filesys.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/filesys.py new file mode 100644 index 00000000..4943644e --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/filesys.py @@ -0,0 +1,86 @@ +"""The filesys commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - FILESYS:COLLECTLOGFILES + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class FilesysCollectlogfiles(SCPICmdWrite): + """The ``FILESYS:COLLECTLOGFILES`` command. + + Description: + - This command copies the internal log files to the local, USB, TekDrive or network drive + specified by the quoted string argument. + + Usage: + - Using the ``.write(value)`` method will send the ``FILESYS:COLLECTLOGFILES value`` + command. + + SCPI Syntax: + ``` + - FILESYS:COLLECTLOGFILES + ``` + + Info: + - ```` is a quoted string that specifies the file path to save the .zip file to. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class Filesys(SCPICmdRead): + """The ``FILESYS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``FILESYS?`` query. + - Using the ``.verify(value)`` method will send the ``FILESYS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.collectlogfiles``: The ``FILESYS:COLLECTLOGFILES`` command. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "FILESYS") -> None: + super().__init__(device, cmd_syntax) + self._collectlogfiles = FilesysCollectlogfiles( + device, f"{self._cmd_syntax}:COLLECTLOGFILES" + ) + + @property + def collectlogfiles(self) -> FilesysCollectlogfiles: + """Return the ``FILESYS:COLLECTLOGFILES`` command. + + Description: + - This command copies the internal log files to the local, USB, TekDrive or network + drive specified by the quoted string argument. + + Usage: + - Using the ``.write(value)`` method will send the ``FILESYS:COLLECTLOGFILES value`` + command. + + SCPI Syntax: + ``` + - FILESYS:COLLECTLOGFILES + ``` + + Info: + - ```` is a quoted string that specifies the file path to save the .zip file + to. + """ + return self._collectlogfiles diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/histogram.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/histogram.py new file mode 100644 index 00000000..35972345 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/histogram.py @@ -0,0 +1,1811 @@ +# pylint: disable=line-too-long +"""The histogram commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - HISTogram:ADDNew + - HISTogram:DELETEALL + - HISTogram:DELete + - HISTogram:HISTogram:BOX ,,, + - HISTogram:HISTogram:BOX? + - HISTogram:HISTogram:BSTate {ON|OFF} + - HISTogram:HISTogram:BSTate? + - HISTogram:HISTogram:DATa? + - HISTogram:HISTogram:DISPlay {LINEAr|LOG} + - HISTogram:HISTogram:DISPlay? + - HISTogram:HISTogram:FUNCtion {HORizontal|VERTical} + - HISTogram:HISTogram:FUNCtion? + - HISTogram:HISTogram:MEASurement:COUNt {ON|OFF} + - HISTogram:HISTogram:MEASurement:COUNt? + - HISTogram:HISTogram:MEASurement:HITS {ON|OFF} + - HISTogram:HISTogram:MEASurement:HITS? + - HISTogram:HISTogram:MEASurement:MAX {ON|OFF} + - HISTogram:HISTogram:MEASurement:MAX? + - HISTogram:HISTogram:MEASurement:MEAN {ON|OFF} + - HISTogram:HISTogram:MEASurement:MEAN? + - HISTogram:HISTogram:MEASurement:MEDian {ON|OFF} + - HISTogram:HISTogram:MEASurement:MEDian? + - HISTogram:HISTogram:MEASurement:MIN {ON|OFF} + - HISTogram:HISTogram:MEASurement:MIN? + - HISTogram:HISTogram:MEASurement:MODE {ON|OFF} + - HISTogram:HISTogram:MEASurement:MODE? + - HISTogram:HISTogram:MEASurement:ONESigma {ON|OFF} + - HISTogram:HISTogram:MEASurement:ONESigma? + - HISTogram:HISTogram:MEASurement:PHITs {ON|OFF} + - HISTogram:HISTogram:MEASurement:PHITs? + - HISTogram:HISTogram:MEASurement:PK2PK {ON|OFF} + - HISTogram:HISTogram:MEASurement:PK2PK? + - HISTogram:HISTogram:MEASurement:RESUlts? {COUNt| HITS| MAX| MIN| PK2PK| MODE| MEAN| MEDian| PHITs| STDDev| ONESigma| TWOSigma| THRSigma},{ALLAcqs| CURRentacq| HISTory},{MAXimum| MEAN| MINimum| PK2PK| POPUlation| STDDev} + - HISTogram:HISTogram:MEASurement:STDDev {ON|OFF} + - HISTogram:HISTogram:MEASurement:STDDev? + - HISTogram:HISTogram:MEASurement:THRSigma {ON|OFF} + - HISTogram:HISTogram:MEASurement:THRSigma? + - HISTogram:HISTogram:MEASurement:TWOSigma {ON|OFF} + - HISTogram:HISTogram:MEASurement:TWOSigma? + - HISTogram:HISTogram:SAVe + - HISTogram:HISTogram:SIZe + - HISTogram:HISTogram:SIZe? + - HISTogram:HISTogram:SOUrce {S_CH|CH|MATH|REF} + - HISTogram:HISTogram:SOUrce? + - HISTogram:HISTogram:STATE {ON|OFF} + - HISTogram:HISTogram:STATE? + - HISTogram:HISTogram:TRANsparency + - HISTogram:HISTogram:TRANsparency? + - HISTogram:LIST? + ``` +""" # noqa: E501 + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdReadWithArguments, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class HistogramList(SCPICmdRead): + """The ``HISTogram:LIST`` command. + + Description: + - This query returns a comma separated list of all currently defined histograms. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HISTogram:LIST? + ``` + """ + + +class HistogramHistogramItemTransparency(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:TRANsparency`` command. + + Description: + - This command sets or queries the transparency of the histogram bins. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:TRANsparency?`` + query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:TRANsparency?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:TRANsparency value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:TRANsparency + - HISTogram:HISTogram:TRANsparency? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ```` specifies the transparency as a percentage, with a minimum of 0 and a maximum of + 100. + """ + + +class HistogramHistogramItemState(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:STATE`` command. + + Description: + - This command sets or queries whether histogram calculations are enabled for the specified + histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:STATE value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:STATE {ON|OFF} + - HISTogram:HISTogram:STATE? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the histogram calculations. + - ``OFF`` disables the histogram calculations. + """ + + +class HistogramHistogramItemSource(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:SOUrce`` command. + + Description: + - This command sets or queries which source waveform will be compared against the histogram + box when the histogram testing is enabled. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:SOUrce value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:SOUrce {S_CH|CH|MATH|REF} + - HISTogram:HISTogram:SOUrce? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``S_CH`` specifies is the remote scope number and the analog channel as source. + - ``CH`` specifies an analog channel as source. + - ``MATH`` specifies a math channel as source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class HistogramHistogramItemSize(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:SIZe`` command. + + Description: + - This command sets or queries the height or width of the specified histogram bins in + divisions. This size can be larger than the box, which allows you to view the histogram + bins easily. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:SIZe value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:SIZe + - HISTogram:HISTogram:SIZe? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ```` specifies the number of divisions to set the height or width of the histogram + bins to. + """ + + +class HistogramHistogramItemSave(SCPICmdWrite): + """The ``HISTogram:HISTogram:SAVe`` command. + + Description: + - This command saves the specified histograms data as a comma separated list of values. + + Usage: + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:SAVe value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:SAVe + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ```` is the file path to save the .csv file to. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class HistogramHistogramItemMeasurementTwosigma(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:TWOSigma`` command. + + Description: + - This command sets or queries whether the µ±2(sigma) measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:TWOSigma?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:TWOSigma?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:TWOSigma value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:TWOSigma {ON|OFF} + - HISTogram:HISTogram:MEASurement:TWOSigma? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the µ±2(sigma) measurement. + - ``OFF`` disables the µ±2(sigma) measurement. + """ + + +class HistogramHistogramItemMeasurementThrsigma(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:THRSigma`` command. + + Description: + - This command sets or queries whether the µ±3(sigma) measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:THRSigma?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:THRSigma?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:THRSigma value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:THRSigma {ON|OFF} + - HISTogram:HISTogram:MEASurement:THRSigma? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the µ±3(sigma) measurement. + - ``OFF`` disables the µ±3(sigma) measurement. + """ + + +class HistogramHistogramItemMeasurementStddev(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:STDDev`` command. + + Description: + - This command sets or queries whether the Standard Deviation measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:STDDev?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:STDDev?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:STDDev value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:STDDev {ON|OFF} + - HISTogram:HISTogram:MEASurement:STDDev? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Standard Deviation measurement. + - ``OFF`` disables the Standard Deviation measurement. + """ + + +class HistogramHistogramItemMeasurementResults(SCPICmdReadWithArguments): + """The ``HISTogram:HISTogram:MEASurement:RESUlts`` command. + + Description: + - This query only command returns the measurement results from the specified histogram. The + argument must be in the form of {argument 1},{argument 2},{argument 3}. Argument 1 + specifies which histogram measurement to return results for. Argument 2 specifies which + acquisitions to return measurement results for. Argument 3 specifies which statistic to + return measurement results for. + + Usage: + - Using the ``.query(argument)`` method will send the + ``HISTogram:HISTogram:MEASurement:RESUlts? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``HISTogram:HISTogram:MEASurement:RESUlts? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:RESUlts? {COUNt| HITS| MAX| MIN| PK2PK| MODE| MEAN| MEDian| PHITs| STDDev| ONESigma| TWOSigma| THRSigma},{ALLAcqs| CURRentacq| HISTory},{MAXimum| MEAN| MINimum| PK2PK| POPUlation| STDDev} + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``COUNt`` specifies the Count as the histogram measurement to return results for. + - ``HITS`` specifies the Hits as the histogram measurement to return results for. + - ``MAX`` specifies the Max as the histogram measurement to return results for. + - ``MIN`` specifies the Min as the histogram measurement to return results for. + - ``PK2PK`` specifies the Peak-to-peak as the histogram measurement or statistic to return + results for. + - ``MODE`` specifies the Mode as the histogram measurement to return results for. + - ``MEAN`` specifies the Mean as the histogram measurement or statistic to return results + for. + - ``MEDian`` specifies the Median as the histogram measurement to return results for. + - ``PHITs`` specifies the Peak Hits as the histogram measurement to return results for. + - ``STDDev`` specifies the Standard Deviation as the histogram measurement or statistic to + return results for. + - ``ONESigma`` specifies the µ±1(sigma) as the histogram measurement to return results for. + - ``TWOSigma`` specifies the µ±2(sigma) as the histogram measurement to return results for. + - ``THRSigma`` specifies the µ±3(sigma) as the histogram measurement to return results for. + - ``ALLAcqs`` specifies the All Acquisitions as the acquisitions to return results for. + - ``CURRentacq`` specifies the Current Acquisitions as the acquisitions to return results + for. + - ``HISTory`` specifies the History as the acquisitions to return results for. + - ``MAXimum`` specifies the Maximum as the statistic to return results for. + - ``MINimum`` specifies the Minimum as the statistic to return results for. + - ``POPUlation`` specifies the Population as the statistic to return results for. + """ # noqa: E501 + + +class HistogramHistogramItemMeasurementPk2pk(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:PK2PK`` command. + + Description: + - This command sets or queries whether the Peak-to-peak measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:PK2PK?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:PK2PK?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:PK2PK value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:PK2PK {ON|OFF} + - HISTogram:HISTogram:MEASurement:PK2PK? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Peak-to-peak measurement. + - ``OFF`` disables the Peak-to-peak measurement. + """ + + +class HistogramHistogramItemMeasurementPhits(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:PHITs`` command. + + Description: + - This command sets or queries whether the Peak Hits measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:PHITs?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:PHITs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:PHITs value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:PHITs {ON|OFF} + - HISTogram:HISTogram:MEASurement:PHITs? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Peak Hits measurement. + - ``OFF`` disables the Peak Hits measurement. + """ + + +class HistogramHistogramItemMeasurementOnesigma(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:ONESigma`` command. + + Description: + - This command sets or queries whether the µ±1(sigma) measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:ONESigma?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:ONESigma?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:ONESigma value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:ONESigma {ON|OFF} + - HISTogram:HISTogram:MEASurement:ONESigma? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the µ±1(sigma) measurement. + - ``OFF`` disables the µ±1(sigma) measurement. + """ + + +class HistogramHistogramItemMeasurementMode(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:MODE`` command. + + Description: + - This command sets or queries whether the Mode measurement is enabled on the histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:MODE?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MODE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MODE value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MODE {ON|OFF} + - HISTogram:HISTogram:MEASurement:MODE? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Mode measurement. + - ``OFF`` disables the Mode measurement. + """ + + +class HistogramHistogramItemMeasurementMin(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:MIN`` command. + + Description: + - This command sets or queries whether the Min measurement is enabled on the histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:MIN?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MIN?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MIN value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MIN {ON|OFF} + - HISTogram:HISTogram:MEASurement:MIN? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Min measurement. + - ``OFF`` disables the Min measurement. + """ + + +class HistogramHistogramItemMeasurementMedian(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:MEDian`` command. + + Description: + - This command sets or queries whether the Median measurement is enabled on the histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:MEDian?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MEDian?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MEDian value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MEDian {ON|OFF} + - HISTogram:HISTogram:MEASurement:MEDian? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Median measurement. + - ``OFF`` disables the Median measurement. + """ + + +class HistogramHistogramItemMeasurementMean(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:MEAN`` command. + + Description: + - This command sets or queries whether the Mean measurement is enabled on the histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:MEAN?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MEAN?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MEAN value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MEAN {ON|OFF} + - HISTogram:HISTogram:MEASurement:MEAN? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Mean measurement. + - ``OFF`` disables the Mean measurement. + """ + + +class HistogramHistogramItemMeasurementMax(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:MAX`` command. + + Description: + - This command sets or queries whether the Max measurement is enabled on the histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:MAX?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MAX?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MAX value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MAX {ON|OFF} + - HISTogram:HISTogram:MEASurement:MAX? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Max measurement. + - ``OFF`` disables the Max measurement. + """ + + +class HistogramHistogramItemMeasurementHits(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:HITS`` command. + + Description: + - This command sets or queries whether the Hits in Box measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:HITS?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:HITS?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:HITS value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:HITS {ON|OFF} + - HISTogram:HISTogram:MEASurement:HITS? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Hits in Box measurement. + - ``OFF`` disables the Hits in Box measurement. + """ + + +class HistogramHistogramItemMeasurementCount(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement:COUNt`` command. + + Description: + - This command sets or queries whether the waveform count measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement:COUNt?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:COUNt?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:COUNt value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:COUNt {ON|OFF} + - HISTogram:HISTogram:MEASurement:COUNt? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the waveform count measurement. + - ``OFF`` disables the waveform count measurement. + """ + + +# pylint: disable=too-many-instance-attributes +class HistogramHistogramItemMeasurement(SCPICmdRead): + """The ``HISTogram:HISTogram:MEASurement`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:MEASurement?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``HISTogram`` specifies the histogram number. + + Properties: + - ``.count``: The ``HISTogram:HISTogram:MEASurement:COUNt`` command. + - ``.hits``: The ``HISTogram:HISTogram:MEASurement:HITS`` command. + - ``.max``: The ``HISTogram:HISTogram:MEASurement:MAX`` command. + - ``.mean``: The ``HISTogram:HISTogram:MEASurement:MEAN`` command. + - ``.median``: The ``HISTogram:HISTogram:MEASurement:MEDian`` command. + - ``.min``: The ``HISTogram:HISTogram:MEASurement:MIN`` command. + - ``.mode``: The ``HISTogram:HISTogram:MEASurement:MODE`` command. + - ``.onesigma``: The ``HISTogram:HISTogram:MEASurement:ONESigma`` command. + - ``.phits``: The ``HISTogram:HISTogram:MEASurement:PHITs`` command. + - ``.pk2pk``: The ``HISTogram:HISTogram:MEASurement:PK2PK`` command. + - ``.results``: The ``HISTogram:HISTogram:MEASurement:RESUlts`` command. + - ``.stddev``: The ``HISTogram:HISTogram:MEASurement:STDDev`` command. + - ``.thrsigma``: The ``HISTogram:HISTogram:MEASurement:THRSigma`` command. + - ``.twosigma``: The ``HISTogram:HISTogram:MEASurement:TWOSigma`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._count = HistogramHistogramItemMeasurementCount(device, f"{self._cmd_syntax}:COUNt") + self._hits = HistogramHistogramItemMeasurementHits(device, f"{self._cmd_syntax}:HITS") + self._max = HistogramHistogramItemMeasurementMax(device, f"{self._cmd_syntax}:MAX") + self._mean = HistogramHistogramItemMeasurementMean(device, f"{self._cmd_syntax}:MEAN") + self._median = HistogramHistogramItemMeasurementMedian(device, f"{self._cmd_syntax}:MEDian") + self._min = HistogramHistogramItemMeasurementMin(device, f"{self._cmd_syntax}:MIN") + self._mode = HistogramHistogramItemMeasurementMode(device, f"{self._cmd_syntax}:MODE") + self._onesigma = HistogramHistogramItemMeasurementOnesigma( + device, f"{self._cmd_syntax}:ONESigma" + ) + self._phits = HistogramHistogramItemMeasurementPhits(device, f"{self._cmd_syntax}:PHITs") + self._pk2pk = HistogramHistogramItemMeasurementPk2pk(device, f"{self._cmd_syntax}:PK2PK") + self._results = HistogramHistogramItemMeasurementResults( + device, f"{self._cmd_syntax}:RESUlts" + ) + self._stddev = HistogramHistogramItemMeasurementStddev(device, f"{self._cmd_syntax}:STDDev") + self._thrsigma = HistogramHistogramItemMeasurementThrsigma( + device, f"{self._cmd_syntax}:THRSigma" + ) + self._twosigma = HistogramHistogramItemMeasurementTwosigma( + device, f"{self._cmd_syntax}:TWOSigma" + ) + + @property + def count(self) -> HistogramHistogramItemMeasurementCount: + """Return the ``HISTogram:HISTogram:MEASurement:COUNt`` command. + + Description: + - This command sets or queries whether the waveform count measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:COUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:COUNt?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:COUNt value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:COUNt {ON|OFF} + - HISTogram:HISTogram:MEASurement:COUNt? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the waveform count measurement. + - ``OFF`` disables the waveform count measurement. + """ + return self._count + + @property + def hits(self) -> HistogramHistogramItemMeasurementHits: + """Return the ``HISTogram:HISTogram:MEASurement:HITS`` command. + + Description: + - This command sets or queries whether the Hits in Box measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:HITS?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:HITS?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:HITS value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:HITS {ON|OFF} + - HISTogram:HISTogram:MEASurement:HITS? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Hits in Box measurement. + - ``OFF`` disables the Hits in Box measurement. + """ + return self._hits + + @property + def max(self) -> HistogramHistogramItemMeasurementMax: + """Return the ``HISTogram:HISTogram:MEASurement:MAX`` command. + + Description: + - This command sets or queries whether the Max measurement is enabled on the histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:MAX?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MAX?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MAX value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MAX {ON|OFF} + - HISTogram:HISTogram:MEASurement:MAX? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Max measurement. + - ``OFF`` disables the Max measurement. + """ + return self._max + + @property + def mean(self) -> HistogramHistogramItemMeasurementMean: + """Return the ``HISTogram:HISTogram:MEASurement:MEAN`` command. + + Description: + - This command sets or queries whether the Mean measurement is enabled on the histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:MEAN?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MEAN?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MEAN value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MEAN {ON|OFF} + - HISTogram:HISTogram:MEASurement:MEAN? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Mean measurement. + - ``OFF`` disables the Mean measurement. + """ + return self._mean + + @property + def median(self) -> HistogramHistogramItemMeasurementMedian: + """Return the ``HISTogram:HISTogram:MEASurement:MEDian`` command. + + Description: + - This command sets or queries whether the Median measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:MEDian?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MEDian?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MEDian value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MEDian {ON|OFF} + - HISTogram:HISTogram:MEASurement:MEDian? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Median measurement. + - ``OFF`` disables the Median measurement. + """ + return self._median + + @property + def min(self) -> HistogramHistogramItemMeasurementMin: + """Return the ``HISTogram:HISTogram:MEASurement:MIN`` command. + + Description: + - This command sets or queries whether the Min measurement is enabled on the histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:MIN?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MIN?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MIN value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MIN {ON|OFF} + - HISTogram:HISTogram:MEASurement:MIN? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Min measurement. + - ``OFF`` disables the Min measurement. + """ + return self._min + + @property + def mode(self) -> HistogramHistogramItemMeasurementMode: + """Return the ``HISTogram:HISTogram:MEASurement:MODE`` command. + + Description: + - This command sets or queries whether the Mode measurement is enabled on the histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:MODE?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MODE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:MODE value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:MODE {ON|OFF} + - HISTogram:HISTogram:MEASurement:MODE? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Mode measurement. + - ``OFF`` disables the Mode measurement. + """ + return self._mode + + @property + def onesigma(self) -> HistogramHistogramItemMeasurementOnesigma: + """Return the ``HISTogram:HISTogram:MEASurement:ONESigma`` command. + + Description: + - This command sets or queries whether the µ±1(sigma) measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:ONESigma?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:ONESigma?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:ONESigma value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:ONESigma {ON|OFF} + - HISTogram:HISTogram:MEASurement:ONESigma? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the µ±1(sigma) measurement. + - ``OFF`` disables the µ±1(sigma) measurement. + """ + return self._onesigma + + @property + def phits(self) -> HistogramHistogramItemMeasurementPhits: + """Return the ``HISTogram:HISTogram:MEASurement:PHITs`` command. + + Description: + - This command sets or queries whether the Peak Hits measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:PHITs?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:PHITs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:PHITs value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:PHITs {ON|OFF} + - HISTogram:HISTogram:MEASurement:PHITs? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Peak Hits measurement. + - ``OFF`` disables the Peak Hits measurement. + """ + return self._phits + + @property + def pk2pk(self) -> HistogramHistogramItemMeasurementPk2pk: + """Return the ``HISTogram:HISTogram:MEASurement:PK2PK`` command. + + Description: + - This command sets or queries whether the Peak-to-peak measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:PK2PK?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:PK2PK?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:PK2PK value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:PK2PK {ON|OFF} + - HISTogram:HISTogram:MEASurement:PK2PK? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Peak-to-peak measurement. + - ``OFF`` disables the Peak-to-peak measurement. + """ + return self._pk2pk + + @property + def results(self) -> HistogramHistogramItemMeasurementResults: + """Return the ``HISTogram:HISTogram:MEASurement:RESUlts`` command. + + Description: + - This query only command returns the measurement results from the specified histogram. + The argument must be in the form of {argument 1},{argument 2},{argument 3}. Argument 1 + specifies which histogram measurement to return results for. Argument 2 specifies + which acquisitions to return measurement results for. Argument 3 specifies which + statistic to return measurement results for. + + Usage: + - Using the ``.query(argument)`` method will send the + ``HISTogram:HISTogram:MEASurement:RESUlts? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``HISTogram:HISTogram:MEASurement:RESUlts? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:RESUlts? {COUNt| HITS| MAX| MIN| PK2PK| MODE| MEAN| MEDian| PHITs| STDDev| ONESigma| TWOSigma| THRSigma},{ALLAcqs| CURRentacq| HISTory},{MAXimum| MEAN| MINimum| PK2PK| POPUlation| STDDev} + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``COUNt`` specifies the Count as the histogram measurement to return results for. + - ``HITS`` specifies the Hits as the histogram measurement to return results for. + - ``MAX`` specifies the Max as the histogram measurement to return results for. + - ``MIN`` specifies the Min as the histogram measurement to return results for. + - ``PK2PK`` specifies the Peak-to-peak as the histogram measurement or statistic to + return results for. + - ``MODE`` specifies the Mode as the histogram measurement to return results for. + - ``MEAN`` specifies the Mean as the histogram measurement or statistic to return + results for. + - ``MEDian`` specifies the Median as the histogram measurement to return results for. + - ``PHITs`` specifies the Peak Hits as the histogram measurement to return results for. + - ``STDDev`` specifies the Standard Deviation as the histogram measurement or statistic + to return results for. + - ``ONESigma`` specifies the µ±1(sigma) as the histogram measurement to return results + for. + - ``TWOSigma`` specifies the µ±2(sigma) as the histogram measurement to return results + for. + - ``THRSigma`` specifies the µ±3(sigma) as the histogram measurement to return results + for. + - ``ALLAcqs`` specifies the All Acquisitions as the acquisitions to return results for. + - ``CURRentacq`` specifies the Current Acquisitions as the acquisitions to return + results for. + - ``HISTory`` specifies the History as the acquisitions to return results for. + - ``MAXimum`` specifies the Maximum as the statistic to return results for. + - ``MINimum`` specifies the Minimum as the statistic to return results for. + - ``POPUlation`` specifies the Population as the statistic to return results for. + """ # noqa: E501 + return self._results + + @property + def stddev(self) -> HistogramHistogramItemMeasurementStddev: + """Return the ``HISTogram:HISTogram:MEASurement:STDDev`` command. + + Description: + - This command sets or queries whether the Standard Deviation measurement is enabled on + the histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:STDDev?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:STDDev value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:STDDev {ON|OFF} + - HISTogram:HISTogram:MEASurement:STDDev? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the Standard Deviation measurement. + - ``OFF`` disables the Standard Deviation measurement. + """ + return self._stddev + + @property + def thrsigma(self) -> HistogramHistogramItemMeasurementThrsigma: + """Return the ``HISTogram:HISTogram:MEASurement:THRSigma`` command. + + Description: + - This command sets or queries whether the µ±3(sigma) measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:THRSigma?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:THRSigma?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:THRSigma value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:THRSigma {ON|OFF} + - HISTogram:HISTogram:MEASurement:THRSigma? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the µ±3(sigma) measurement. + - ``OFF`` disables the µ±3(sigma) measurement. + """ + return self._thrsigma + + @property + def twosigma(self) -> HistogramHistogramItemMeasurementTwosigma: + """Return the ``HISTogram:HISTogram:MEASurement:TWOSigma`` command. + + Description: + - This command sets or queries whether the µ±2(sigma) measurement is enabled on the + histogram. + + Usage: + - Using the ``.query()`` method will send the + ``HISTogram:HISTogram:MEASurement:TWOSigma?`` query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:TWOSigma?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:MEASurement:TWOSigma value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:MEASurement:TWOSigma {ON|OFF} + - HISTogram:HISTogram:MEASurement:TWOSigma? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the µ±2(sigma) measurement. + - ``OFF`` disables the µ±2(sigma) measurement. + """ + return self._twosigma + + +class HistogramHistogramItemFunction(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:FUNCtion`` command. + + Description: + - This command sets or queries the histogram mode. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:FUNCtion?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:FUNCtion?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:FUNCtion value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:FUNCtion {HORizontal|VERTical} + - HISTogram:HISTogram:FUNCtion? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``HORizontal`` sets the histogram mode to horizontal. + - ``VERTical`` sets the histogram mode to vertical. + """ + + +class HistogramHistogramItemDisplay(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:DISPlay`` command. + + Description: + - This command sets or queries the histogram scaling display setting. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:DISPlay?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:DISPlay?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:DISPlay value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:DISPlay {LINEAr|LOG} + - HISTogram:HISTogram:DISPlay? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``LINEAr`` sets the histogram scaling to linear mode. + - ``LOG`` sets the histogram scaling to logarithmic mode. + """ + + +class HistogramHistogramItemData(SCPICmdRead): + """The ``HISTogram:HISTogram:DATa`` command. + + Description: + - This query only command returns a comma separated list of numbers representing the + histogram bin data. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:DATa?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:DATa? + ``` + """ + + +class HistogramHistogramItemBstate(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:BSTate`` command. + + Description: + - This command sets or queries whether the histogram badge is displayed. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:BSTate?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:BSTate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:BSTate value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:BSTate {ON|OFF} + - HISTogram:HISTogram:BSTate? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the histogram badge display. + - ``OFF`` disables the histogram badge display. + """ + + +class HistogramHistogramItemBox(SCPICmdWrite, SCPICmdRead): + """The ``HISTogram:HISTogram:BOX`` command. + + Description: + - This command sets or queries the top, left, bottom and right positions of the histogram + box in source waveform coordinates. The argument is of the form + ,,,. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:BOX?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:BOX?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:BOX value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:BOX ,,, + - HISTogram:HISTogram:BOX? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ```` specifies four position values, separated by commas. The values are the top, + left, bottom, and right coordinates in that order. + """ + + +# pylint: disable=too-many-instance-attributes +class HistogramHistogramItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``HISTogram:HISTogram`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``HISTogram`` specifies the histogram number. + + Properties: + - ``.box``: The ``HISTogram:HISTogram:BOX`` command. + - ``.bstate``: The ``HISTogram:HISTogram:BSTate`` command. + - ``.data``: The ``HISTogram:HISTogram:DATa`` command. + - ``.display``: The ``HISTogram:HISTogram:DISPlay`` command. + - ``.function``: The ``HISTogram:HISTogram:FUNCtion`` command. + - ``.measurement``: The ``HISTogram:HISTogram:MEASurement`` command tree. + - ``.save``: The ``HISTogram:HISTogram:SAVe`` command. + - ``.size``: The ``HISTogram:HISTogram:SIZe`` command. + - ``.source``: The ``HISTogram:HISTogram:SOUrce`` command. + - ``.state``: The ``HISTogram:HISTogram:STATE`` command. + - ``.transparency``: The ``HISTogram:HISTogram:TRANsparency`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._box = HistogramHistogramItemBox(device, f"{self._cmd_syntax}:BOX") + self._bstate = HistogramHistogramItemBstate(device, f"{self._cmd_syntax}:BSTate") + self._data = HistogramHistogramItemData(device, f"{self._cmd_syntax}:DATa") + self._display = HistogramHistogramItemDisplay(device, f"{self._cmd_syntax}:DISPlay") + self._function = HistogramHistogramItemFunction(device, f"{self._cmd_syntax}:FUNCtion") + self._measurement = HistogramHistogramItemMeasurement( + device, f"{self._cmd_syntax}:MEASurement" + ) + self._save = HistogramHistogramItemSave(device, f"{self._cmd_syntax}:SAVe") + self._size = HistogramHistogramItemSize(device, f"{self._cmd_syntax}:SIZe") + self._source = HistogramHistogramItemSource(device, f"{self._cmd_syntax}:SOUrce") + self._state = HistogramHistogramItemState(device, f"{self._cmd_syntax}:STATE") + self._transparency = HistogramHistogramItemTransparency( + device, f"{self._cmd_syntax}:TRANsparency" + ) + + @property + def box(self) -> HistogramHistogramItemBox: + """Return the ``HISTogram:HISTogram:BOX`` command. + + Description: + - This command sets or queries the top, left, bottom and right positions of the + histogram box in source waveform coordinates. The argument is of the form + ,,,. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:BOX?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:BOX?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:BOX value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:BOX ,,, + - HISTogram:HISTogram:BOX? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ```` specifies four position values, separated by commas. The values are the top, + left, bottom, and right coordinates in that order. + """ + return self._box + + @property + def bstate(self) -> HistogramHistogramItemBstate: + """Return the ``HISTogram:HISTogram:BSTate`` command. + + Description: + - This command sets or queries whether the histogram badge is displayed. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:BSTate?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:BSTate?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:BSTate value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:BSTate {ON|OFF} + - HISTogram:HISTogram:BSTate? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the histogram badge display. + - ``OFF`` disables the histogram badge display. + """ + return self._bstate + + @property + def data(self) -> HistogramHistogramItemData: + """Return the ``HISTogram:HISTogram:DATa`` command. + + Description: + - This query only command returns a comma separated list of numbers representing the + histogram bin data. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:DATa?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:DATa? + ``` + """ + return self._data + + @property + def display(self) -> HistogramHistogramItemDisplay: + """Return the ``HISTogram:HISTogram:DISPlay`` command. + + Description: + - This command sets or queries the histogram scaling display setting. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:DISPlay?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:DISPlay?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:DISPlay value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:DISPlay {LINEAr|LOG} + - HISTogram:HISTogram:DISPlay? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``LINEAr`` sets the histogram scaling to linear mode. + - ``LOG`` sets the histogram scaling to logarithmic mode. + """ + return self._display + + @property + def function(self) -> HistogramHistogramItemFunction: + """Return the ``HISTogram:HISTogram:FUNCtion`` command. + + Description: + - This command sets or queries the histogram mode. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:FUNCtion?`` + query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:FUNCtion?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:FUNCtion value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:FUNCtion {HORizontal|VERTical} + - HISTogram:HISTogram:FUNCtion? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``HORizontal`` sets the histogram mode to horizontal. + - ``VERTical`` sets the histogram mode to vertical. + """ + return self._function + + @property + def measurement(self) -> HistogramHistogramItemMeasurement: + """Return the ``HISTogram:HISTogram:MEASurement`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:MEASurement?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:MEASurement?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``HISTogram`` specifies the histogram number. + + Sub-properties: + - ``.count``: The ``HISTogram:HISTogram:MEASurement:COUNt`` command. + - ``.hits``: The ``HISTogram:HISTogram:MEASurement:HITS`` command. + - ``.max``: The ``HISTogram:HISTogram:MEASurement:MAX`` command. + - ``.mean``: The ``HISTogram:HISTogram:MEASurement:MEAN`` command. + - ``.median``: The ``HISTogram:HISTogram:MEASurement:MEDian`` command. + - ``.min``: The ``HISTogram:HISTogram:MEASurement:MIN`` command. + - ``.mode``: The ``HISTogram:HISTogram:MEASurement:MODE`` command. + - ``.onesigma``: The ``HISTogram:HISTogram:MEASurement:ONESigma`` command. + - ``.phits``: The ``HISTogram:HISTogram:MEASurement:PHITs`` command. + - ``.pk2pk``: The ``HISTogram:HISTogram:MEASurement:PK2PK`` command. + - ``.results``: The ``HISTogram:HISTogram:MEASurement:RESUlts`` command. + - ``.stddev``: The ``HISTogram:HISTogram:MEASurement:STDDev`` command. + - ``.thrsigma``: The ``HISTogram:HISTogram:MEASurement:THRSigma`` command. + - ``.twosigma``: The ``HISTogram:HISTogram:MEASurement:TWOSigma`` command. + """ + return self._measurement + + @property + def save(self) -> HistogramHistogramItemSave: + """Return the ``HISTogram:HISTogram:SAVe`` command. + + Description: + - This command saves the specified histograms data as a comma separated list of values. + + Usage: + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:SAVe value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:SAVe + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ```` is the file path to save the .csv file to. + """ + return self._save + + @property + def size(self) -> HistogramHistogramItemSize: + """Return the ``HISTogram:HISTogram:SIZe`` command. + + Description: + - This command sets or queries the height or width of the specified histogram bins in + divisions. This size can be larger than the box, which allows you to view the + histogram bins easily. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:SIZe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HISTogram:HISTogram:SIZe value`` + command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:SIZe + - HISTogram:HISTogram:SIZe? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ```` specifies the number of divisions to set the height or width of the + histogram bins to. + """ + return self._size + + @property + def source(self) -> HistogramHistogramItemSource: + """Return the ``HISTogram:HISTogram:SOUrce`` command. + + Description: + - This command sets or queries which source waveform will be compared against the + histogram box when the histogram testing is enabled. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:SOUrce value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:SOUrce {S_CH|CH|MATH|REF} + - HISTogram:HISTogram:SOUrce? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``S_CH`` specifies is the remote scope number and the analog channel as source. + - ``CH`` specifies an analog channel as source. + - ``MATH`` specifies a math channel as source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def state(self) -> HistogramHistogramItemState: + """Return the ``HISTogram:HISTogram:STATE`` command. + + Description: + - This command sets or queries whether histogram calculations are enabled for the + specified histogram. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:STATE value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:STATE {ON|OFF} + - HISTogram:HISTogram:STATE? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ``ON`` enables the histogram calculations. + - ``OFF`` disables the histogram calculations. + """ + return self._state + + @property + def transparency(self) -> HistogramHistogramItemTransparency: + """Return the ``HISTogram:HISTogram:TRANsparency`` command. + + Description: + - This command sets or queries the transparency of the histogram bins. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram:TRANsparency?`` + query. + - Using the ``.verify(value)`` method will send the + ``HISTogram:HISTogram:TRANsparency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HISTogram:HISTogram:TRANsparency value`` command. + + SCPI Syntax: + ``` + - HISTogram:HISTogram:TRANsparency + - HISTogram:HISTogram:TRANsparency? + ``` + + Info: + - ``HISTogram`` specifies the histogram number. + - ```` specifies the transparency as a percentage, with a minimum of 0 and a + maximum of 100. + """ + return self._transparency + + +class HistogramDelete(SCPICmdWrite): + """The ``HISTogram:DELete`` command. + + Description: + - This command deletes the specified histogram. + + Usage: + - Using the ``.write(value)`` method will send the ``HISTogram:DELete value`` command. + + SCPI Syntax: + ``` + - HISTogram:DELete + ``` + + Info: + - ```` specifies the waveform histogram to delete. The argument is of the form + 'HIST', where NR1 is a number value ≥ 1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class HistogramDeleteall(SCPICmdWriteNoArguments): + """The ``HISTogram:DELETEALL`` command. + + Description: + - This command deletes all the active instances of histograms defined in the scope + application. + + Usage: + - Using the ``.write()`` method will send the ``HISTogram:DELETEALL`` command. + + SCPI Syntax: + ``` + - HISTogram:DELETEALL + ``` + """ + + +class HistogramAddnew(SCPICmdWrite): + """The ``HISTogram:ADDNew`` command. + + Description: + - This command adds the specified waveform histogram. + + Usage: + - Using the ``.write(value)`` method will send the ``HISTogram:ADDNew value`` command. + + SCPI Syntax: + ``` + - HISTogram:ADDNew + ``` + + Info: + - ```` specifies the waveform histogram to add. The argument is of the form + 'HIST', where NR1 is a number value ≥ 1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class Histogram(SCPICmdRead): + """The ``HISTogram`` command tree. + + 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``. + + Properties: + - ``.addnew``: The ``HISTogram:ADDNew`` command. + - ``.deleteall``: The ``HISTogram:DELETEALL`` command. + - ``.delete``: The ``HISTogram:DELete`` command. + - ``.histogram``: The ``HISTogram:HISTogram`` command tree. + - ``.list``: The ``HISTogram:LIST`` command. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "HISTogram") -> None: + super().__init__(device, cmd_syntax) + self._addnew = HistogramAddnew(device, f"{self._cmd_syntax}:ADDNew") + self._deleteall = HistogramDeleteall(device, f"{self._cmd_syntax}:DELETEALL") + self._delete = HistogramDelete(device, f"{self._cmd_syntax}:DELete") + self._histogram: Dict[int, HistogramHistogramItem] = DefaultDictPassKeyToFactory( + lambda x: HistogramHistogramItem(device, f"{self._cmd_syntax}:HISTogram{x}") + ) + self._list = HistogramList(device, f"{self._cmd_syntax}:LIST") + + @property + def addnew(self) -> HistogramAddnew: + """Return the ``HISTogram:ADDNew`` command. + + Description: + - This command adds the specified waveform histogram. + + Usage: + - Using the ``.write(value)`` method will send the ``HISTogram:ADDNew value`` command. + + SCPI Syntax: + ``` + - HISTogram:ADDNew + ``` + + Info: + - ```` specifies the waveform histogram to add. The argument is of the form + 'HIST', where NR1 is a number value ≥ 1. + """ + return self._addnew + + @property + def deleteall(self) -> HistogramDeleteall: + """Return the ``HISTogram:DELETEALL`` command. + + Description: + - This command deletes all the active instances of histograms defined in the scope + application. + + Usage: + - Using the ``.write()`` method will send the ``HISTogram:DELETEALL`` command. + + SCPI Syntax: + ``` + - HISTogram:DELETEALL + ``` + """ + return self._deleteall + + @property + def delete(self) -> HistogramDelete: + """Return the ``HISTogram:DELete`` command. + + Description: + - This command deletes the specified histogram. + + Usage: + - Using the ``.write(value)`` method will send the ``HISTogram:DELete value`` command. + + SCPI Syntax: + ``` + - HISTogram:DELete + ``` + + Info: + - ```` specifies the waveform histogram to delete. The argument is of the form + 'HIST', where NR1 is a number value ≥ 1. + """ + return self._delete + + @property + def histogram(self) -> Dict[int, HistogramHistogramItem]: + """Return the ``HISTogram:HISTogram`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:HISTogram?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:HISTogram?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``HISTogram`` specifies the histogram number. + + Sub-properties: + - ``.box``: The ``HISTogram:HISTogram:BOX`` command. + - ``.bstate``: The ``HISTogram:HISTogram:BSTate`` command. + - ``.data``: The ``HISTogram:HISTogram:DATa`` command. + - ``.display``: The ``HISTogram:HISTogram:DISPlay`` command. + - ``.function``: The ``HISTogram:HISTogram:FUNCtion`` command. + - ``.measurement``: The ``HISTogram:HISTogram:MEASurement`` command tree. + - ``.save``: The ``HISTogram:HISTogram:SAVe`` command. + - ``.size``: The ``HISTogram:HISTogram:SIZe`` command. + - ``.source``: The ``HISTogram:HISTogram:SOUrce`` command. + - ``.state``: The ``HISTogram:HISTogram:STATE`` command. + - ``.transparency``: The ``HISTogram:HISTogram:TRANsparency`` command. + """ + return self._histogram + + @property + def list(self) -> HistogramList: + """Return the ``HISTogram:LIST`` command. + + Description: + - This query returns a comma separated list of all currently defined histograms. + + Usage: + - Using the ``.query()`` method will send the ``HISTogram:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``HISTogram:LIST?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HISTogram:LIST? + ``` + """ + return self._list diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/horizontal.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/horizontal.py new file mode 100644 index 00000000..d97d8cb4 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/horizontal.py @@ -0,0 +1,507 @@ +"""The horizontal commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - HORizontal:DELay:MODe {ON|OFF|} + - HORizontal:DELay:MODe? + - HORizontal:DELay:TIMe + - HORizontal:DELay:TIMe? + - HORizontal:MODe {AUTO|MANual} + - HORizontal:MODe:MANual:CONFIGure {HORIZontalscale|RECORDLength} + - HORizontal:MODe:MANual:CONFIGure? + - HORizontal:MODe? + - HORizontal:POSition + - HORizontal:POSition? + - HORizontal:SAMPLERate + - HORizontal:SAMPLERate? + - HORizontal:SCAle + - HORizontal:SCAle? + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class HorizontalScale(SCPICmdWrite, SCPICmdRead): + """The ``HORizontal:SCAle`` command. + + Description: + - This command sets or queries the horizontal scale. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:SCAle?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:SCAle?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:SCAle value`` command. + + SCPI Syntax: + ``` + - HORizontal:SCAle + - HORizontal:SCAle? + ``` + + Info: + - ```` is the horizontal scale in time per division. + """ + + +class HorizontalSamplerate(SCPICmdWrite, SCPICmdRead): + """The ``HORizontal:SAMPLERate`` command. + + Description: + - This command sets or queries the horizontal sample rate. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:SAMPLERate?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:SAMPLERate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:SAMPLERate value`` command. + + SCPI Syntax: + ``` + - HORizontal:SAMPLERate + - HORizontal:SAMPLERate? + ``` + + Info: + - ```` is the horizontal sample rate in samples per second. + """ + + +class HorizontalPosition(SCPICmdWrite, SCPICmdRead): + """The ``HORizontal:POSition`` command. + + Description: + - This command sets or queries the horizontal position as a percent of screen width. When + Horizontal Delay Mode is turned off, this command is equivalent to adjusting the + HORIZONTAL POSITION knob on the front panel. When Horizontal Delay Mode is turned on, the + horizontal position is forced to 50%. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:POSition?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:POSition value`` command. + + SCPI Syntax: + ``` + - HORizontal:POSition + - HORizontal:POSition? + ``` + + Info: + - ```` is from 0 to ≈100 and is the position of the trigger point on the screen (0 = + left edge, 100 = right edge). + """ + + +class HorizontalModeManualConfigure(SCPICmdWrite, SCPICmdRead): + """The ``HORizontal:MODe:MANual:CONFIGure`` command. + + Description: + - Sets or queries which horizontal control (scale or record length) will primarily change + when the sample rate is changed in Manual mode. If the selected control (scale or record + length) reaches a limit then the unselected control (record length or scale) may also + change. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:MODe:MANual:CONFIGure?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:MODe:MANual:CONFIGure?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HORizontal:MODe:MANual:CONFIGure value`` command. + + SCPI Syntax: + ``` + - HORizontal:MODe:MANual:CONFIGure {HORIZontalscale|RECORDLength} + - HORizontal:MODe:MANual:CONFIGure? + ``` + + Info: + - ``HORIZontalscale`` will change when sample rate is adjusted. + - ``RECORDLength`` will change when sample rate is adjusted. + """ + + +class HorizontalModeManual(SCPICmdRead): + """The ``HORizontal:MODe:MANual`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:MODe:MANual?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:MODe:MANual?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.configure``: The ``HORizontal:MODe:MANual:CONFIGure`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._configure = HorizontalModeManualConfigure(device, f"{self._cmd_syntax}:CONFIGure") + + @property + def configure(self) -> HorizontalModeManualConfigure: + """Return the ``HORizontal:MODe:MANual:CONFIGure`` command. + + Description: + - Sets or queries which horizontal control (scale or record length) will primarily + change when the sample rate is changed in Manual mode. If the selected control (scale + or record length) reaches a limit then the unselected control (record length or scale) + may also change. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:MODe:MANual:CONFIGure?`` + query. + - Using the ``.verify(value)`` method will send the + ``HORizontal:MODe:MANual:CONFIGure?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``HORizontal:MODe:MANual:CONFIGure value`` command. + + SCPI Syntax: + ``` + - HORizontal:MODe:MANual:CONFIGure {HORIZontalscale|RECORDLength} + - HORizontal:MODe:MANual:CONFIGure? + ``` + + Info: + - ``HORIZontalscale`` will change when sample rate is adjusted. + - ``RECORDLength`` will change when sample rate is adjusted. + """ + return self._configure + + +class HorizontalMode(SCPICmdWrite, SCPICmdRead): + """The ``HORizontal:MODe`` command. + + Description: + - This command set or queries the horizontal operating mode. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:MODe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:MODe value`` command. + + SCPI Syntax: + ``` + - HORizontal:MODe {AUTO|MANual} + - HORizontal:MODe? + ``` + + Info: + - ``AUTO`` selects the automatic horizontal model. Auto mode automatically adjusts the + sample rate and record length to provide a high acquisition rate in Fast Acq or signal + fidelity in analysis. Record length is read only. + - ``MANUAL`` selects the manual horizontal model. Manual mode lets you change the sample + rate, horizontal scale, and record length. These values interact. For example, when you + change record length then the horizontal scale also changes. + + Properties: + - ``.manual``: The ``HORizontal:MODe:MANual`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._manual = HorizontalModeManual(device, f"{self._cmd_syntax}:MANual") + + @property + def manual(self) -> HorizontalModeManual: + """Return the ``HORizontal:MODe:MANual`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:MODe:MANual?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:MODe:MANual?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.configure``: The ``HORizontal:MODe:MANual:CONFIGure`` command. + """ + return self._manual + + +class HorizontalDelayTime(SCPICmdWrite, SCPICmdRead): + """The ``HORizontal:DELay:TIMe`` command. + + Description: + - This command sets or queries the horizontal delay time that is used when delay mode is on. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:DELay:TIMe?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:DELay:TIMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:DELay:TIMe value`` command. + + SCPI Syntax: + ``` + - HORizontal:DELay:TIMe + - HORizontal:DELay:TIMe? + ``` + + Info: + - ``NR3`` is the delay in seconds. + """ + + +class HorizontalDelayMode(SCPICmdWrite, SCPICmdRead): + """The ``HORizontal:DELay:MODe`` command. + + Description: + - This command sets or queries the horizontal delay mode. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:DELay:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:DELay:MODe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:DELay:MODe value`` command. + + SCPI Syntax: + ``` + - HORizontal:DELay:MODe {ON|OFF|} + - HORizontal:DELay:MODe? + ``` + + Info: + - ``OFF`` sets the Horizontal Delay Mode to off. This causes the ``HORizontal:POSition`` + command to operate like the HORIZONTAL POSITION knob on the front panel. + - ``ON`` sets the Horizontal Delay Mode to on. This causes the ``HORizontal:DELay:TIMe`` + command to operate like the HORIZONTAL POSITION knob on the front panel. + - ```` = 0 sets the Horizontal Delay Mode to off; any other value sets this mode to on. + """ + + +class HorizontalDelay(SCPICmdRead): + """The ``HORizontal:DELay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:DELay?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:DELay?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.mode``: The ``HORizontal:DELay:MODe`` command. + - ``.time``: The ``HORizontal:DELay:TIMe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._mode = HorizontalDelayMode(device, f"{self._cmd_syntax}:MODe") + self._time = HorizontalDelayTime(device, f"{self._cmd_syntax}:TIMe") + + @property + def mode(self) -> HorizontalDelayMode: + """Return the ``HORizontal:DELay:MODe`` command. + + Description: + - This command sets or queries the horizontal delay mode. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:DELay:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:DELay:MODe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:DELay:MODe value`` + command. + + SCPI Syntax: + ``` + - HORizontal:DELay:MODe {ON|OFF|} + - HORizontal:DELay:MODe? + ``` + + Info: + - ``OFF`` sets the Horizontal Delay Mode to off. This causes the ``HORizontal:POSition`` + command to operate like the HORIZONTAL POSITION knob on the front panel. + - ``ON`` sets the Horizontal Delay Mode to on. This causes the ``HORizontal:DELay:TIMe`` + command to operate like the HORIZONTAL POSITION knob on the front panel. + - ```` = 0 sets the Horizontal Delay Mode to off; any other value sets this mode to + on. + """ + return self._mode + + @property + def time(self) -> HorizontalDelayTime: + """Return the ``HORizontal:DELay:TIMe`` command. + + Description: + - This command sets or queries the horizontal delay time that is used when delay mode is + on. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:DELay:TIMe?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:DELay:TIMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:DELay:TIMe value`` + command. + + SCPI Syntax: + ``` + - HORizontal:DELay:TIMe + - HORizontal:DELay:TIMe? + ``` + + Info: + - ``NR3`` is the delay in seconds. + """ + return self._time + + +class Horizontal(SCPICmdRead): + """The ``HORizontal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.delay``: The ``HORizontal:DELay`` command tree. + - ``.mode``: The ``HORizontal:MODe`` command. + - ``.position``: The ``HORizontal:POSition`` command. + - ``.samplerate``: The ``HORizontal:SAMPLERate`` command. + - ``.scale``: The ``HORizontal:SCAle`` command. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "HORizontal") -> None: + super().__init__(device, cmd_syntax) + self._delay = HorizontalDelay(device, f"{self._cmd_syntax}:DELay") + self._mode = HorizontalMode(device, f"{self._cmd_syntax}:MODe") + self._position = HorizontalPosition(device, f"{self._cmd_syntax}:POSition") + self._samplerate = HorizontalSamplerate(device, f"{self._cmd_syntax}:SAMPLERate") + self._scale = HorizontalScale(device, f"{self._cmd_syntax}:SCAle") + + @property + def delay(self) -> HorizontalDelay: + """Return the ``HORizontal:DELay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:DELay?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:DELay?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.mode``: The ``HORizontal:DELay:MODe`` command. + - ``.time``: The ``HORizontal:DELay:TIMe`` command. + """ + return self._delay + + @property + def mode(self) -> HorizontalMode: + """Return the ``HORizontal:MODe`` command. + + Description: + - This command set or queries the horizontal operating mode. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:MODe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:MODe value`` command. + + SCPI Syntax: + ``` + - HORizontal:MODe {AUTO|MANual} + - HORizontal:MODe? + ``` + + Info: + - ``AUTO`` selects the automatic horizontal model. Auto mode automatically adjusts the + sample rate and record length to provide a high acquisition rate in Fast Acq or signal + fidelity in analysis. Record length is read only. + - ``MANUAL`` selects the manual horizontal model. Manual mode lets you change the sample + rate, horizontal scale, and record length. These values interact. For example, when + you change record length then the horizontal scale also changes. + + Sub-properties: + - ``.manual``: The ``HORizontal:MODe:MANual`` command tree. + """ + return self._mode + + @property + def position(self) -> HorizontalPosition: + """Return the ``HORizontal:POSition`` command. + + Description: + - This command sets or queries the horizontal position as a percent of screen width. + When Horizontal Delay Mode is turned off, this command is equivalent to adjusting the + HORIZONTAL POSITION knob on the front panel. When Horizontal Delay Mode is turned on, + the horizontal position is forced to 50%. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:POSition?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:POSition value`` + command. + + SCPI Syntax: + ``` + - HORizontal:POSition + - HORizontal:POSition? + ``` + + Info: + - ```` is from 0 to ≈100 and is the position of the trigger point on the screen (0 + = left edge, 100 = right edge). + """ + return self._position + + @property + def samplerate(self) -> HorizontalSamplerate: + """Return the ``HORizontal:SAMPLERate`` command. + + Description: + - This command sets or queries the horizontal sample rate. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:SAMPLERate?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:SAMPLERate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:SAMPLERate value`` + command. + + SCPI Syntax: + ``` + - HORizontal:SAMPLERate + - HORizontal:SAMPLERate? + ``` + + Info: + - ```` is the horizontal sample rate in samples per second. + """ + return self._samplerate + + @property + def scale(self) -> HorizontalScale: + """Return the ``HORizontal:SCAle`` command. + + Description: + - This command sets or queries the horizontal scale. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal:SCAle?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal:SCAle?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HORizontal:SCAle value`` command. + + SCPI Syntax: + ``` + - HORizontal:SCAle + - HORizontal:SCAle? + ``` + + Info: + - ```` is the horizontal scale in time per division. + """ + return self._scale diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/mask.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/mask.py new file mode 100644 index 00000000..e782b8de --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/mask.py @@ -0,0 +1,1398 @@ +"""The mask commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - MASK:DELete 'MASK' + - MASK:MASK:COUNT:HITS? + - MASK:MASK:COUNT? + - MASK:MASK:DEFinedby {SEGments|TOLerances} + - MASK:MASK:DEFinedby? + - MASK:MASK:DISplay {ON|OFF} + - MASK:MASK:DISplay? + - MASK:MASK:LIST? + - MASK:MASK:SEG:COUNT:HITS? + - MASK:MASK:SEG:POINTS + - MASK:MASK:SEG:POINTS? + - MASK:MASK:SOUrce {CH|REF|MATH|RFvsTime} + - MASK:MASK:SOUrce? + - MASK:MASK:TESt:CTHReshold + - MASK:MASK:TESt:CTHReshold? + - MASK:MASK:TESt:STATE {ON|OFF} + - MASK:MASK:TESt:STATE? + - MASK:MASK:TESt:STATUS? + - MASK:MASK:TESt:THReshold + - MASK:MASK:TESt:THReshold? + - MASK:MASK:TOLerance:HABSolute + - MASK:MASK:TOLerance:HABSolute? + - MASK:MASK:TOLerance:HORizontal + - MASK:MASK:TOLerance:HORizontal? + - MASK:MASK:TOLerance:UPDatenow + - MASK:MASK:TOLerance:VABSolute + - MASK:MASK:TOLerance:VABSolute? + - MASK:MASK:TOLerance:VERTical + - MASK:MASK:TOLerance:VERTical? + - MASK:MASK:TTYPe {SCReen|ABSolute} + - MASK:MASK:TTYPe? + - MASK:TESt:WAVEforms + - MASK:TESt:WAVEforms? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class MaskTestWaveforms(SCPICmdWrite, SCPICmdRead): + """The ``MASK:TESt:WAVEforms`` command. + + Description: + - This command sets or queries the number of waveform acquisitions to test during mask + testing. The number of waveforms applies to all mask tests. + + Usage: + - Using the ``.query()`` method will send the ``MASK:TESt:WAVEforms?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:TESt:WAVEforms?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:TESt:WAVEforms value`` command. + + SCPI Syntax: + ``` + - MASK:TESt:WAVEforms + - MASK:TESt:WAVEforms? + ``` + + Info: + - ```` specifies the number of waveform acquisitions. + """ + + +class MaskTest(SCPICmdRead): + """The ``MASK:TESt`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:TESt?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:TESt?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.waveforms``: The ``MASK:TESt:WAVEforms`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._waveforms = MaskTestWaveforms(device, f"{self._cmd_syntax}:WAVEforms") + + @property + def waveforms(self) -> MaskTestWaveforms: + """Return the ``MASK:TESt:WAVEforms`` command. + + Description: + - This command sets or queries the number of waveform acquisitions to test during mask + testing. The number of waveforms applies to all mask tests. + + Usage: + - Using the ``.query()`` method will send the ``MASK:TESt:WAVEforms?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:TESt:WAVEforms?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:TESt:WAVEforms value`` + command. + + SCPI Syntax: + ``` + - MASK:TESt:WAVEforms + - MASK:TESt:WAVEforms? + ``` + + Info: + - ```` specifies the number of waveform acquisitions. + """ + return self._waveforms + + +class MaskMaskItemTtype(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:TTYPe`` command. + + Description: + - This command sets or queries the type of tolerance values used when defining a tolerance + mask. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TTYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:TTYPe value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TTYPe {SCReen|ABSolute} + - MASK:MASK:TTYPe? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ``SCReen`` indicates that the horizontal and vertical mask tolerances are defined in + relative units of graticule divisions. There are always 10 horizontal divisions and 10 + vertical divisions on the scope waveform display. When the tolerance type is SCReen, the + tolerance values set by the HORizontal and VERTical commands are used to define the + tolerance mask when an UPDatenow command is sent. + - ``ABSolute`` indicates that the horizontal and vertical mask tolerances are defined in the + absolute units of the mask source waveform. These units are normally seconds and volts + respectively. When the tolerance type is ABSolute, the tolerance values set by the + HABSolute and VABSolute commands are used to define the tolerance mask when an UPDatenow + command is sent. + """ + + +class MaskMaskItemToleranceVertical(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:TOLerance:VERTical`` command. + + Description: + - This command sets or queries the mask vertical tolerance. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance:VERTical?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TOLerance:VERTical?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:TOLerance:VERTical value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:VERTical + - MASK:MASK:TOLerance:VERTical? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ```` is the tolerance in units of graticule divisions. The maximum is 1 division. + """ + + +class MaskMaskItemToleranceVabsolute(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:TOLerance:VABSolute`` command. + + Description: + - This command sets or queries the mask vertical tolerance in absolute units of the mask + source (generally volts). This value is used when the mask TTYPe is set to ABSolute and + the UPDatenow command is sent. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance:VABSolute?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TOLerance:VABSolute?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MASK:MASK:TOLerance:VABSolute value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:VABSolute + - MASK:MASK:TOLerance:VABSolute? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ```` is the tolerance in units of the mask source. Most traces in the waveform window + have vertical units of volts, but other units such as amps or degrees are possible. The + maximum value is the equivalent of one vertical graticule division. + """ + + +class MaskMaskItemToleranceUpdatenow(SCPICmdWriteNoArguments): + """The ``MASK:MASK:TOLerance:UPDatenow`` command. + + Description: + - This command causes the tolerance mask to be recalculated with the current horizontal and + vertical tolerances. + + Usage: + - Using the ``.write()`` method will send the ``MASK:MASK:TOLerance:UPDatenow`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:UPDatenow + ``` + + Info: + - ``MASK`` specifies the mask number. + """ + + +class MaskMaskItemToleranceHorizontal(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:TOLerance:HORizontal`` command. + + Description: + - This command sets or queries the mask horizontal tolerance. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance:HORizontal?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TOLerance:HORizontal?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MASK:MASK:TOLerance:HORizontal value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:HORizontal + - MASK:MASK:TOLerance:HORizontal? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ```` is the tolerance in units of graticule divisions. The maximum is 1 division. + """ + + +class MaskMaskItemToleranceHabsolute(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:TOLerance:HABSolute`` command. + + Description: + - This command sets or queries the mask horizontal tolerance in absolute units of seconds. + This value is used when the mask TTYPe is set to ABSolute and the UPDatenow command is + sent. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance:HABSolute?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TOLerance:HABSolute?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MASK:MASK:TOLerance:HABSolute value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:HABSolute + - MASK:MASK:TOLerance:HABSolute? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ```` is the tolerance in units of seconds. The maximum time is the equivalent of one + horizontal graticule division. + """ + + +class MaskMaskItemTolerance(SCPICmdRead): + """The ``MASK:MASK:TOLerance`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TOLerance?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask number. + + Properties: + - ``.habsolute``: The ``MASK:MASK:TOLerance:HABSolute`` command. + - ``.horizontal``: The ``MASK:MASK:TOLerance:HORizontal`` command. + - ``.updatenow``: The ``MASK:MASK:TOLerance:UPDatenow`` command. + - ``.vabsolute``: The ``MASK:MASK:TOLerance:VABSolute`` command. + - ``.vertical``: The ``MASK:MASK:TOLerance:VERTical`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._habsolute = MaskMaskItemToleranceHabsolute(device, f"{self._cmd_syntax}:HABSolute") + self._horizontal = MaskMaskItemToleranceHorizontal(device, f"{self._cmd_syntax}:HORizontal") + self._updatenow = MaskMaskItemToleranceUpdatenow(device, f"{self._cmd_syntax}:UPDatenow") + self._vabsolute = MaskMaskItemToleranceVabsolute(device, f"{self._cmd_syntax}:VABSolute") + self._vertical = MaskMaskItemToleranceVertical(device, f"{self._cmd_syntax}:VERTical") + + @property + def habsolute(self) -> MaskMaskItemToleranceHabsolute: + """Return the ``MASK:MASK:TOLerance:HABSolute`` command. + + Description: + - This command sets or queries the mask horizontal tolerance in absolute units of + seconds. This value is used when the mask TTYPe is set to ABSolute and the UPDatenow + command is sent. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance:HABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``MASK:MASK:TOLerance:HABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MASK:MASK:TOLerance:HABSolute value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:HABSolute + - MASK:MASK:TOLerance:HABSolute? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ```` is the tolerance in units of seconds. The maximum time is the equivalent of + one horizontal graticule division. + """ + return self._habsolute + + @property + def horizontal(self) -> MaskMaskItemToleranceHorizontal: + """Return the ``MASK:MASK:TOLerance:HORizontal`` command. + + Description: + - This command sets or queries the mask horizontal tolerance. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance:HORizontal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MASK:MASK:TOLerance:HORizontal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MASK:MASK:TOLerance:HORizontal value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:HORizontal + - MASK:MASK:TOLerance:HORizontal? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ```` is the tolerance in units of graticule divisions. The maximum is 1 division. + """ + return self._horizontal + + @property + def updatenow(self) -> MaskMaskItemToleranceUpdatenow: + """Return the ``MASK:MASK:TOLerance:UPDatenow`` command. + + Description: + - This command causes the tolerance mask to be recalculated with the current horizontal + and vertical tolerances. + + Usage: + - Using the ``.write()`` method will send the ``MASK:MASK:TOLerance:UPDatenow`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:UPDatenow + ``` + + Info: + - ``MASK`` specifies the mask number. + """ + return self._updatenow + + @property + def vabsolute(self) -> MaskMaskItemToleranceVabsolute: + """Return the ``MASK:MASK:TOLerance:VABSolute`` command. + + Description: + - This command sets or queries the mask vertical tolerance in absolute units of the mask + source (generally volts). This value is used when the mask TTYPe is set to ABSolute + and the UPDatenow command is sent. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance:VABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``MASK:MASK:TOLerance:VABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MASK:MASK:TOLerance:VABSolute value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:VABSolute + - MASK:MASK:TOLerance:VABSolute? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ```` is the tolerance in units of the mask source. Most traces in the waveform + window have vertical units of volts, but other units such as amps or degrees are + possible. The maximum value is the equivalent of one vertical graticule division. + """ + return self._vabsolute + + @property + def vertical(self) -> MaskMaskItemToleranceVertical: + """Return the ``MASK:MASK:TOLerance:VERTical`` command. + + Description: + - This command sets or queries the mask vertical tolerance. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance:VERTical?`` + query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TOLerance:VERTical?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MASK:MASK:TOLerance:VERTical value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TOLerance:VERTical + - MASK:MASK:TOLerance:VERTical? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ```` is the tolerance in units of graticule divisions. The maximum is 1 division. + """ + return self._vertical + + +class MaskMaskItemTestThreshold(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:TESt:THReshold`` command. + + Description: + - This command sets or queries the number of waveform violations needed for the specified + mask test to change from PASS to FAIL. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:TESt:THReshold value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:TESt:THReshold + - MASK:MASK:TESt:THReshold? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ```` specifies the threshold value. + """ + + +class MaskMaskItemTestStatus(SCPICmdRead): + """The ``MASK:MASK:TESt:STATUS`` command. + + Description: + - This command returns the status of the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt:STATUS?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt:STATUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:TESt:STATUS? + ``` + + Info: + - ``MASK`` specifies the mask test. + """ + + +class MaskMaskItemTestState(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:TESt:STATE`` command. + + Description: + - This command sets or queries the state of the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt:STATE?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:TESt:STATE value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:TESt:STATE {ON|OFF} + - MASK:MASK:TESt:STATE? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``ON`` sets the mask test state to ON. When the state is ON the Pass/Fail status and hit + count information are reset and the mask test is started. + - ``OFF`` sets the mask test state to OFF. When the mask test completes the state is set to + OFF. + """ + + +class MaskMaskItemTestCthreshold(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:TESt:CTHReshold`` command. + + Description: + - This command sets or queries the number of consecutive waveform violations needed for the + specified mask test to change from PASS to FAIL. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt:CTHReshold?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt:CTHReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:TESt:CTHReshold value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:TESt:CTHReshold + - MASK:MASK:TESt:CTHReshold? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ```` specifies the threshold value. + """ + + +class MaskMaskItemTest(SCPICmdRead): + """The ``MASK:MASK:TESt`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask test. + + Properties: + - ``.cthreshold``: The ``MASK:MASK:TESt:CTHReshold`` command. + - ``.state``: The ``MASK:MASK:TESt:STATE`` command. + - ``.status``: The ``MASK:MASK:TESt:STATUS`` command. + - ``.threshold``: The ``MASK:MASK:TESt:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cthreshold = MaskMaskItemTestCthreshold(device, f"{self._cmd_syntax}:CTHReshold") + self._state = MaskMaskItemTestState(device, f"{self._cmd_syntax}:STATE") + self._status = MaskMaskItemTestStatus(device, f"{self._cmd_syntax}:STATUS") + self._threshold = MaskMaskItemTestThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def cthreshold(self) -> MaskMaskItemTestCthreshold: + """Return the ``MASK:MASK:TESt:CTHReshold`` command. + + Description: + - This command sets or queries the number of consecutive waveform violations needed for + the specified mask test to change from PASS to FAIL. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt:CTHReshold?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt:CTHReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MASK:MASK:TESt:CTHReshold value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TESt:CTHReshold + - MASK:MASK:TESt:CTHReshold? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ```` specifies the threshold value. + """ + return self._cthreshold + + @property + def state(self) -> MaskMaskItemTestState: + """Return the ``MASK:MASK:TESt:STATE`` command. + + Description: + - This command sets or queries the state of the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:TESt:STATE value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:TESt:STATE {ON|OFF} + - MASK:MASK:TESt:STATE? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``ON`` sets the mask test state to ON. When the state is ON the Pass/Fail status and + hit count information are reset and the mask test is started. + - ``OFF`` sets the mask test state to OFF. When the mask test completes the state is set + to OFF. + """ + return self._state + + @property + def status(self) -> MaskMaskItemTestStatus: + """Return the ``MASK:MASK:TESt:STATUS`` command. + + Description: + - This command returns the status of the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt:STATUS?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt:STATUS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:TESt:STATUS? + ``` + + Info: + - ``MASK`` specifies the mask test. + """ + return self._status + + @property + def threshold(self) -> MaskMaskItemTestThreshold: + """Return the ``MASK:MASK:TESt:THReshold`` command. + + Description: + - This command sets or queries the number of waveform violations needed for the + specified mask test to change from PASS to FAIL. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:TESt:THReshold value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:TESt:THReshold + - MASK:MASK:TESt:THReshold? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ```` specifies the threshold value. + """ + return self._threshold + + +class MaskMaskItemSource(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:SOUrce`` command. + + Description: + - This command sets or queries analog source for the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SOUrce?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:SOUrce value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:SOUrce {CH|REF|MATH|RFvsTime} + - MASK:MASK:SOUrce? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``CH`` specifies an analog channel as source. + - ``MATH`` specifies a math channel as source. + - ``REF`` specifies a reference waveform as the source. + - ``RFvsTime`` specifies a RF vs Time as the source. + """ + + +class MaskMaskItemSegItemPoints(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:SEG:POINTS`` command. + + Description: + - This command sets or queries the X/Y coordinates of all points in the designated mask + segment. Mask vertices are in time/volts (currently limited to 1024 characters). The set + form defines new points in the mask, replacing any existing points. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SEG:POINTS?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SEG:POINTS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:SEG:POINTS value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:SEG:POINTS + - MASK:MASK:SEG:POINTS? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``SEG`` specifies the mask segment. + - ```` specifies the X/Y coordinates of all points in the designated mask segment. + """ + + +class MaskMaskItemSegItemCountHits(SCPICmdRead): + """The ``MASK:MASK:SEG:COUNT:HITS`` command. + + Description: + - The command returns the total number of mask hits in the specified mask segment of the + specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SEG:COUNT:HITS?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SEG:COUNT:HITS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:SEG:COUNT:HITS? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``SEG`` specifies the mask segment. + """ + + +class MaskMaskItemSegItemCount(SCPICmdRead): + """The ``MASK:MASK:SEG:COUNT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SEG:COUNT?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SEG:COUNT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask test. + - ``SEG`` specifies the mask segment. + + Properties: + - ``.hits``: The ``MASK:MASK:SEG:COUNT:HITS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hits = MaskMaskItemSegItemCountHits(device, f"{self._cmd_syntax}:HITS") + + @property + def hits(self) -> MaskMaskItemSegItemCountHits: + """Return the ``MASK:MASK:SEG:COUNT:HITS`` command. + + Description: + - The command returns the total number of mask hits in the specified mask segment of the + specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SEG:COUNT:HITS?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SEG:COUNT:HITS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:SEG:COUNT:HITS? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``SEG`` specifies the mask segment. + """ + return self._hits + + +class MaskMaskItemSegItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``MASK:MASK:SEG`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SEG?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SEG?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask test. + - ``SEG`` specifies the mask segment. + + Properties: + - ``.count``: The ``MASK:MASK:SEG:COUNT`` command tree. + - ``.points``: The ``MASK:MASK:SEG:POINTS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._count = MaskMaskItemSegItemCount(device, f"{self._cmd_syntax}:COUNT") + self._points = MaskMaskItemSegItemPoints(device, f"{self._cmd_syntax}:POINTS") + + @property + def count(self) -> MaskMaskItemSegItemCount: + """Return the ``MASK:MASK:SEG:COUNT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SEG:COUNT?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SEG:COUNT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask test. + - ``SEG`` specifies the mask segment. + + Sub-properties: + - ``.hits``: The ``MASK:MASK:SEG:COUNT:HITS`` command. + """ + return self._count + + @property + def points(self) -> MaskMaskItemSegItemPoints: + """Return the ``MASK:MASK:SEG:POINTS`` command. + + Description: + - This command sets or queries the X/Y coordinates of all points in the designated mask + segment. Mask vertices are in time/volts (currently limited to 1024 characters). The + set form defines new points in the mask, replacing any existing points. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SEG:POINTS?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SEG:POINTS?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:SEG:POINTS value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:SEG:POINTS + - MASK:MASK:SEG:POINTS? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``SEG`` specifies the mask segment. + - ```` specifies the X/Y coordinates of all points in the designated mask segment. + """ + return self._points + + +class MaskMaskItemList(SCPICmdRead): + """The ``MASK:MASK:LIST`` command. + + Description: + - This command queries the list of segments in the mask used by the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:LIST?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:LIST? + ``` + + Info: + - ``MASK`` specifies the mask test. + """ + + +class MaskMaskItemDisplay(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:DISplay`` command. + + Description: + - This command sets or queries the display state of the mask used for the specified mask + test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:DISplay?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:DISplay value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:DISplay {ON|OFF} + - MASK:MASK:DISplay? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``ON`` sets the display state of the specified mask to on. + - ``OFF`` sets the display state of the specified mask to off. + """ + + +class MaskMaskItemDefinedby(SCPICmdWrite, SCPICmdRead): + """The ``MASK:MASK:DEFinedby`` command. + + Description: + - This command sets or queries whether the specified mask is defined by segments or + tolerances. Segment masks are defined by one or more polygons. Tolerance masks are defined + by specified horizontal and vertical tolerances around the mask source. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:DEFinedby?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:DEFinedby?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:DEFinedby value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:DEFinedby {SEGments|TOLerances} + - MASK:MASK:DEFinedby? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ``SEGments`` defines the mask by segments. + - ``TOLerances`` defines the mask by horizontal and vertical tolerances around mask source. + """ + + +class MaskMaskItemCountHits(SCPICmdRead): + """The ``MASK:MASK:COUNT:HITS`` command. + + Description: + - This command returns the total number of mask hits in all mask segments for the specified + mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:COUNT:HITS?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:COUNT:HITS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:COUNT:HITS? + ``` + + Info: + - ``MASK`` specifies the mask test. + """ + + +class MaskMaskItemCount(SCPICmdRead): + """The ``MASK:MASK:COUNT`` command. + + Description: + - This command returns the total number of mask hits in all segments and the number of mask + hits in each individual mask segment for the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:COUNT?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:COUNT?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:COUNT? + ``` + + Info: + - ``MASK`` specifies the mask test. + + Properties: + - ``.hits``: The ``MASK:MASK:COUNT:HITS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hits = MaskMaskItemCountHits(device, f"{self._cmd_syntax}:HITS") + + @property + def hits(self) -> MaskMaskItemCountHits: + """Return the ``MASK:MASK:COUNT:HITS`` command. + + Description: + - This command returns the total number of mask hits in all mask segments for the + specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:COUNT:HITS?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:COUNT:HITS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:COUNT:HITS? + ``` + + Info: + - ``MASK`` specifies the mask test. + """ + return self._hits + + +# pylint: disable=too-many-instance-attributes +class MaskMaskItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``MASK:MASK`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask test. + + Properties: + - ``.count``: The ``MASK:MASK:COUNT`` command. + - ``.definedby``: The ``MASK:MASK:DEFinedby`` command. + - ``.display``: The ``MASK:MASK:DISplay`` command. + - ``.list``: The ``MASK:MASK:LIST`` command. + - ``.seg``: The ``MASK:MASK:SEG`` command tree. + - ``.source``: The ``MASK:MASK:SOUrce`` command. + - ``.test``: The ``MASK:MASK:TESt`` command tree. + - ``.tolerance``: The ``MASK:MASK:TOLerance`` command tree. + - ``.ttype``: The ``MASK:MASK:TTYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._count = MaskMaskItemCount(device, f"{self._cmd_syntax}:COUNT") + self._definedby = MaskMaskItemDefinedby(device, f"{self._cmd_syntax}:DEFinedby") + self._display = MaskMaskItemDisplay(device, f"{self._cmd_syntax}:DISplay") + self._list = MaskMaskItemList(device, f"{self._cmd_syntax}:LIST") + self._seg: Dict[int, MaskMaskItemSegItem] = DefaultDictPassKeyToFactory( + lambda x: MaskMaskItemSegItem(device, f"{self._cmd_syntax}:SEG{x}") + ) + self._source = MaskMaskItemSource(device, f"{self._cmd_syntax}:SOUrce") + self._test = MaskMaskItemTest(device, f"{self._cmd_syntax}:TESt") + self._tolerance = MaskMaskItemTolerance(device, f"{self._cmd_syntax}:TOLerance") + self._ttype = MaskMaskItemTtype(device, f"{self._cmd_syntax}:TTYPe") + + @property + def count(self) -> MaskMaskItemCount: + """Return the ``MASK:MASK:COUNT`` command. + + Description: + - This command returns the total number of mask hits in all segments and the number of + mask hits in each individual mask segment for the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:COUNT?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:COUNT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:COUNT? + ``` + + Info: + - ``MASK`` specifies the mask test. + + Sub-properties: + - ``.hits``: The ``MASK:MASK:COUNT:HITS`` command. + """ + return self._count + + @property + def definedby(self) -> MaskMaskItemDefinedby: + """Return the ``MASK:MASK:DEFinedby`` command. + + Description: + - This command sets or queries whether the specified mask is defined by segments or + tolerances. Segment masks are defined by one or more polygons. Tolerance masks are + defined by specified horizontal and vertical tolerances around the mask source. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:DEFinedby?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:DEFinedby?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:DEFinedby value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:DEFinedby {SEGments|TOLerances} + - MASK:MASK:DEFinedby? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ``SEGments`` defines the mask by segments. + - ``TOLerances`` defines the mask by horizontal and vertical tolerances around mask + source. + """ + return self._definedby + + @property + def display(self) -> MaskMaskItemDisplay: + """Return the ``MASK:MASK:DISplay`` command. + + Description: + - This command sets or queries the display state of the mask used for the specified mask + test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:DISplay?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:DISplay value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:DISplay {ON|OFF} + - MASK:MASK:DISplay? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``ON`` sets the display state of the specified mask to on. + - ``OFF`` sets the display state of the specified mask to off. + """ + return self._display + + @property + def list(self) -> MaskMaskItemList: + """Return the ``MASK:MASK:LIST`` command. + + Description: + - This command queries the list of segments in the mask used by the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:LIST?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MASK:MASK:LIST? + ``` + + Info: + - ``MASK`` specifies the mask test. + """ + return self._list + + @property + def seg(self) -> Dict[int, MaskMaskItemSegItem]: + """Return the ``MASK:MASK:SEG`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SEG?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SEG?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask test. + - ``SEG`` specifies the mask segment. + + Sub-properties: + - ``.count``: The ``MASK:MASK:SEG:COUNT`` command tree. + - ``.points``: The ``MASK:MASK:SEG:POINTS`` command. + """ + return self._seg + + @property + def source(self) -> MaskMaskItemSource: + """Return the ``MASK:MASK:SOUrce`` command. + + Description: + - This command sets or queries analog source for the specified mask test. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:SOUrce value`` + command. + + SCPI Syntax: + ``` + - MASK:MASK:SOUrce {CH|REF|MATH|RFvsTime} + - MASK:MASK:SOUrce? + ``` + + Info: + - ``MASK`` specifies the mask test. + - ``CH`` specifies an analog channel as source. + - ``MATH`` specifies a math channel as source. + - ``REF`` specifies a reference waveform as the source. + - ``RFvsTime`` specifies a RF vs Time as the source. + """ + return self._source + + @property + def test(self) -> MaskMaskItemTest: + """Return the ``MASK:MASK:TESt`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TESt?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TESt?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask test. + + Sub-properties: + - ``.cthreshold``: The ``MASK:MASK:TESt:CTHReshold`` command. + - ``.state``: The ``MASK:MASK:TESt:STATE`` command. + - ``.status``: The ``MASK:MASK:TESt:STATUS`` command. + - ``.threshold``: The ``MASK:MASK:TESt:THReshold`` command. + """ + return self._test + + @property + def tolerance(self) -> MaskMaskItemTolerance: + """Return the ``MASK:MASK:TOLerance`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TOLerance?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TOLerance?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask number. + + Sub-properties: + - ``.habsolute``: The ``MASK:MASK:TOLerance:HABSolute`` command. + - ``.horizontal``: The ``MASK:MASK:TOLerance:HORizontal`` command. + - ``.updatenow``: The ``MASK:MASK:TOLerance:UPDatenow`` command. + - ``.vabsolute``: The ``MASK:MASK:TOLerance:VABSolute`` command. + - ``.vertical``: The ``MASK:MASK:TOLerance:VERTical`` command. + """ + return self._tolerance + + @property + def ttype(self) -> MaskMaskItemTtype: + """Return the ``MASK:MASK:TTYPe`` command. + + Description: + - This command sets or queries the type of tolerance values used when defining a + tolerance mask. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK:TTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK:TTYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MASK:MASK:TTYPe value`` command. + + SCPI Syntax: + ``` + - MASK:MASK:TTYPe {SCReen|ABSolute} + - MASK:MASK:TTYPe? + ``` + + Info: + - ``MASK`` specifies the mask number. + - ``SCReen`` indicates that the horizontal and vertical mask tolerances are defined in + relative units of graticule divisions. There are always 10 horizontal divisions and 10 + vertical divisions on the scope waveform display. When the tolerance type is SCReen, + the tolerance values set by the HORizontal and VERTical commands are used to define + the tolerance mask when an UPDatenow command is sent. + - ``ABSolute`` indicates that the horizontal and vertical mask tolerances are defined in + the absolute units of the mask source waveform. These units are normally seconds and + volts respectively. When the tolerance type is ABSolute, the tolerance values set by + the HABSolute and VABSolute commands are used to define the tolerance mask when an + UPDatenow command is sent. + """ + return self._ttype + + +class MaskDelete(SCPICmdWrite): + """The ``MASK:DELete`` command. + + Description: + - This command deletes all mask segments of the specified mask test. + + Usage: + - Using the ``.write(value)`` method will send the ``MASK:DELete value`` command. + + SCPI Syntax: + ``` + - MASK:DELete 'MASK' + ``` + + Info: + - ``MASK`` specifies the mask test. This argument is enclosed in quotes. + """ + + +class Mask(SCPICmdRead): + """The ``MASK`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK?`` query. + - Using the ``.verify(value)`` method will send the ``MASK?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.delete``: The ``MASK:DELete`` command. + - ``.mask``: The ``MASK:MASK`` command tree. + - ``.test``: The ``MASK:TESt`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "MASK") -> None: + super().__init__(device, cmd_syntax) + self._delete = MaskDelete(device, f"{self._cmd_syntax}:DELete") + self._mask: Dict[int, MaskMaskItem] = DefaultDictPassKeyToFactory( + lambda x: MaskMaskItem(device, f"{self._cmd_syntax}:MASK{x}") + ) + self._test = MaskTest(device, f"{self._cmd_syntax}:TESt") + + @property + def delete(self) -> MaskDelete: + """Return the ``MASK:DELete`` command. + + Description: + - This command deletes all mask segments of the specified mask test. + + Usage: + - Using the ``.write(value)`` method will send the ``MASK:DELete value`` command. + + SCPI Syntax: + ``` + - MASK:DELete 'MASK' + ``` + + Info: + - ``MASK`` specifies the mask test. This argument is enclosed in quotes. + """ + return self._delete + + @property + def mask(self) -> Dict[int, MaskMaskItem]: + """Return the ``MASK:MASK`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:MASK?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:MASK?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``MASK`` specifies the mask test. + + Sub-properties: + - ``.count``: The ``MASK:MASK:COUNT`` command. + - ``.definedby``: The ``MASK:MASK:DEFinedby`` command. + - ``.display``: The ``MASK:MASK:DISplay`` command. + - ``.list``: The ``MASK:MASK:LIST`` command. + - ``.seg``: The ``MASK:MASK:SEG`` command tree. + - ``.source``: The ``MASK:MASK:SOUrce`` command. + - ``.test``: The ``MASK:MASK:TESt`` command tree. + - ``.tolerance``: The ``MASK:MASK:TOLerance`` command tree. + - ``.ttype``: The ``MASK:MASK:TTYPe`` command. + """ + return self._mask + + @property + def test(self) -> MaskTest: + """Return the ``MASK:TESt`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK:TESt?`` query. + - Using the ``.verify(value)`` method will send the ``MASK:TESt?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.waveforms``: The ``MASK:TESt:WAVEforms`` command. + """ + return self._test diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/math.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/math.py new file mode 100644 index 00000000..384521e5 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/math.py @@ -0,0 +1,5795 @@ +# pylint: disable=line-too-long +"""The math commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - MATH:ADDNew + - MATH:DELete + - MATH:LIST? + - MATH:MATH:ARINC429A:SUPPortedfields {DATa} + - MATH:MATH:ARINC429A:SUPPortedfields? + - MATH:MATH:AUDIO:SUPPortedfields {LCHannel|RCHannel|TDMChannel} + - MATH:MATH:AUDIO:SUPPortedfields? + - MATH:MATH:AUTOETHERnet:SUPPortedfields {DATa|IPData|TDATa} + - MATH:MATH:AUTOETHERnet:SUPPortedfields? + - MATH:MATH:AVG:MODE {ON|OFF|} + - MATH:MATH:AVG:WEIGht + - MATH:MATH:CAN:SUPPortedfields {DATa} + - MATH:MATH:CAN:SUPPortedfields? + - MATH:MATH:CXPI:SUPPortedfields {DATa} + - MATH:MATH:CXPI:SUPPortedfields? + - MATH:MATH:DEFine + - MATH:MATH:DEFine? + - MATH:MATH:ESPI:SUPPortedfields {DATa|CDATa|RDATa} + - MATH:MATH:ESPI:SUPPortedfields? + - MATH:MATH:ETHERCAT:SUPPortedfields {DATa|SDATa|NWVariabledata} + - MATH:MATH:ETHERCAT:SUPPortedfields? + - MATH:MATH:ETHERnet:SUPPortedfields {DATa|IPData|TDATa} + - MATH:MATH:ETHERnet:SUPPortedfields? + - MATH:MATH:EUSB:SUPPortedfields {DATa|DDATa} + - MATH:MATH:EUSB:SUPPortedfields? + - MATH:MATH:FILTer:CFReq + - MATH:MATH:FILTer:CFReq? + - MATH:MATH:FILTer:DELay + - MATH:MATH:FILTer:DELay? + - MATH:MATH:FILTer:DESIgn {EXECUTE|ABORT|APPLY} + - MATH:MATH:FILTer:HCFReq + - MATH:MATH:FILTer:HCFReq? + - MATH:MATH:FILTer:INFo? + - MATH:MATH:FILTer:LCFReq + - MATH:MATH:FILTer:LCFReq? + - MATH:MATH:FILTer:LOAD + - MATH:MATH:FILTer:LOAD:RESPonse {1|0} + - MATH:MATH:FILTer:LOAD:RESPonse? + - MATH:MATH:FILTer:ORDer + - MATH:MATH:FILTer:ORDer? + - MATH:MATH:FILTer:PRIPple + - MATH:MATH:FILTer:PRIPple? + - MATH:MATH:FILTer:RESPonse {BUTTerworth|CHEBYONe|CHEBYTWo|ELLiptical|GAUSsian|BESSelCUSTom} + - MATH:MATH:FILTer:ROFactor + - MATH:MATH:FILTer:ROFactor? + - MATH:MATH:FILTer:SATTenuation + - MATH:MATH:FILTer:SATTenuation? + - MATH:MATH:FILTer:SAVe + - MATH:MATH:FILTer:SAVe:RESPonse {1|0} + - MATH:MATH:FILTer:SAVe:RESPonse? + - MATH:MATH:FILTer:SDEViation + - MATH:MATH:FILTer:SDEViation? + - MATH:MATH:FILTer:SDURation + - MATH:MATH:FILTer:SDURation? + - MATH:MATH:FILTer:SOURce {S_Ch|CH|MATH|REF} + - MATH:MATH:FILTer:SOURce? + - MATH:MATH:FILTer:SYMBols + - MATH:MATH:FILTer:SYMBols? + - MATH:MATH:FILTer:TWIDth + - MATH:MATH:FILTer:TWIDth? + - MATH:MATH:FILTer:TYPe {LPASs|HPASs|BPASs|BSTop|APASs|HILBert|DIFFerentiator|RC|RRC} + - MATH:MATH:FILTer:TYPe? + - MATH:MATH:FLEXray:SUPPortedfields {DATa} + - MATH:MATH:FLEXray:SUPPortedfields? + - MATH:MATH:FUNCtion {ADD|SUBtract|MULTiply|DIVide} + - MATH:MATH:GATing {NONE|SCREEN|CURSor} + - MATH:MATH:GATing? + - MATH:MATH:I2C:SUPPortedfields {DATa} + - MATH:MATH:I2C:SUPPortedfields? + - MATH:MATH:I3C:SUPPortedfields {DATa} + - MATH:MATH:I3C:SUPPortedfields? + - MATH:MATH:INTERpolation {ON|OFF} + - MATH:MATH:LABel:COLor + - MATH:MATH:LABel:FONT:BOLD {ON|OFF|} + - MATH:MATH:LABel:FONT:ITALic {ON|OFF|} + - MATH:MATH:LABel:FONT:SIZE + - MATH:MATH:LABel:FONT:TYPE + - MATH:MATH:LABel:FONT:UNDERline {ON|OFF|} + - MATH:MATH:LABel:NAMe + - MATH:MATH:LABel:NAMe? + - MATH:MATH:LABel:XPOS + - MATH:MATH:LABel:XPOS? + - MATH:MATH:LABel:YPOS + - MATH:MATH:LABel:YPOS? + - MATH:MATH:LIN:SUPPortedfields {DATa} + - MATH:MATH:LIN:SUPPortedfields? + - MATH:MATH:MDIO:SUPPortedfields {DATa} + - MATH:MATH:MDIO:SUPPortedfields? + - MATH:MATH:MIL1553B:SUPPortedfields {DATa|PAYLoad} + - MATH:MATH:MIL1553B:SUPPortedfields? + - MATH:MATH:ONEWIRe:SUPPortedfields {DATa} + - MATH:MATH:ONEWIRe:SUPPortedfields? + - MATH:MATH:PARallel:SUPPortedfields {DATa} + - MATH:MATH:PARallel:SUPPortedfields? + - MATH:MATH:PSIFIVe:SUPPortedfields {DATa|DRA|DRB|SDATa} + - MATH:MATH:PSIFIVe:SUPPortedfields? + - MATH:MATH:RS232C:SUPPortedfields {DATa|TXData|RXData} + - MATH:MATH:RS232C:SUPPortedfields? + - MATH:MATH:SDLC:SUPPortedfields {DATa} + - MATH:MATH:SDLC:SUPPortedfields? + - MATH:MATH:SENT:SUPPortedfields {FCData|FCDFirst|FCDTwo|SDATa} + - MATH:MATH:SENT:SUPPortedfields? + - MATH:MATH:SIGNeddata {ON|OFF} + - MATH:MATH:SIGNeddata? + - MATH:MATH:SMBUS:SUPPortedfields {DATa} + - MATH:MATH:SMBUS:SUPPortedfields? + - MATH:MATH:SOUrce1 {S_Ch|CH|MATH|REF} + - MATH:MATH:SPACEWIRe:SUPPortedfields {DATa} + - MATH:MATH:SPACEWIRe:SUPPortedfields? + - MATH:MATH:SPECTral:HORZ {LOG|LINEAr} + - MATH:MATH:SPECTral:HORZ? + - MATH:MATH:SPECTral:MAG {LINEAr|DBM} + - MATH:MATH:SPECTral:MAG? + - MATH:MATH:SPECTral:PHASE {DEGrees|RADians|GROUPDelay} + - MATH:MATH:SPECTral:PHASE? + - MATH:MATH:SPECTral:SOUrce {S_Ch|CH|MATH|REF} + - MATH:MATH:SPECTral:SOUrce? + - MATH:MATH:SPECTral:SUPPress {OFF|ON|0|1} + - MATH:MATH:SPECTral:SUPPress:VALue + - MATH:MATH:SPECTral:SUPPress:VALue? + - MATH:MATH:SPECTral:SUPPress? + - MATH:MATH:SPECTral:TYPE {MAGNitude|PHASe|REAL|IMAGinary} + - MATH:MATH:SPECTral:TYPE? + - MATH:MATH:SPECTral:UNWRap {OFF|ON|0|1} + - MATH:MATH:SPECTral:UNWRap:DEGrees + - MATH:MATH:SPECTral:UNWRap:DEGrees? + - MATH:MATH:SPECTral:UNWRap? + - MATH:MATH:SPECTral:WINdow {RECTANGular|HAMMing|HANNing|BLACKMANHarris|KAISERBessel|GAUSSian|FLATTOP2|TEKEXPonential} + - MATH:MATH:SPECTral:WINdow? + - MATH:MATH:SPI:SUPPortedfields {DATa|MOSIdata|MISOdata} + - MATH:MATH:SPI:SUPPortedfields? + - MATH:MATH:SPMI:SUPPortedfields {DATa|CDATa|RDATa} + - MATH:MATH:SPMI:SUPPortedfields? + - MATH:MATH:SVID:SUPPortedfields {MPAYload|SPAYload} + - MATH:MATH:SVID:SUPPortedfields? + - MATH:MATH:TYPe {BASic|FILTER|FFT|ADVanced} + - MATH:MATH:USB:SUPPortedfields {DATa} + - MATH:MATH:USB:SUPPortedfields? + - MATH:MATH:VUNIT + ``` +""" # noqa: E501 + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class MathMathItemVunit(SCPICmdWrite): + """The ``MATH:MATH:VUNIT`` command. + + Description: + - This command specifies or returns the math custom vertical units. The math waveform is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:VUNIT value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:VUNIT + ``` + + Info: + - ```` is the custom vertical units. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MathMathItemUsbSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:USB:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for USB bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:USB:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:USB:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:USB:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:USB:SUPPortedfields {DATa} + - MATH:MATH:USB:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemUsb(SCPICmdRead): + """The ``MATH:MATH:USB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:USB?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:USB?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:USB:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemUsbSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemUsbSupportedfields: + """Return the ``MATH:MATH:USB:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for USB + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:USB:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:USB:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:USB:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:USB:SUPPortedfields {DATa} + - MATH:MATH:USB:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemType(SCPICmdWrite): + """The ``MATH:MATH:TYPe`` command. + + Description: + - This command sets or queries the math type. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:TYPe value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:TYPe {BASic|FILTER|FFT|ADVanced} + ``` + + Info: + - ``BASic`` set the type to basic math. + - ``FILTER`` sets the math type to filter. Requires UDFLT licenses on 5, 6 series MSO + instruments and Tekscope (Offline). + - ``FFT`` sets the type to FFT math, which can use any live analog or reference waveform in + the time domain. NOTE. You can also use FFT as part of a math expression by declaring the + type. + - ``ADVanced`` sets the type to advanced math. + """ + + +class MathMathItemSvidSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SVID:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SVID bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SVID:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SVID:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SVID:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SVID:SUPPortedfields {MPAYload|SPAYload} + - MATH:MATH:SVID:SUPPortedfields? + ``` + + Info: + - ``MPAYload`` sets the field type to MPAYload. + - ``SPAYload`` sets the field type to SPAYload. + """ + + +class MathMathItemSvid(SCPICmdRead): + """The ``MATH:MATH:SVID`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SVID?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SVID?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:SVID:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemSvidSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemSvidSupportedfields: + """Return the ``MATH:MATH:SVID:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SVID + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SVID:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SVID:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SVID:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SVID:SUPPortedfields {MPAYload|SPAYload} + - MATH:MATH:SVID:SUPPortedfields? + ``` + + Info: + - ``MPAYload`` sets the field type to MPAYload. + - ``SPAYload`` sets the field type to SPAYload. + """ + return self._supportedfields + + +class MathMathItemSpmiSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPMI:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SPMI bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPMI:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPMI:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPMI:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPMI:SUPPortedfields {DATa|CDATa|RDATa} + - MATH:MATH:SPMI:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``CDATa`` sets the field type to CDATa. + - ``RDATa`` sets the field type to RDATa. + """ + + +class MathMathItemSpmi(SCPICmdRead): + """The ``MATH:MATH:SPMI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPMI?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPMI?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:SPMI:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemSpmiSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemSpmiSupportedfields: + """Return the ``MATH:MATH:SPMI:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SPMI + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPMI:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SPMI:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPMI:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPMI:SUPPortedfields {DATa|CDATa|RDATa} + - MATH:MATH:SPMI:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``CDATa`` sets the field type to CDATa. + - ``RDATa`` sets the field type to RDATa. + """ + return self._supportedfields + + +class MathMathItemSpiSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPI:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SPI bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPI:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPI:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPI:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPI:SUPPortedfields {DATa|MOSIdata|MISOdata} + - MATH:MATH:SPI:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``MOSIdata`` sets the field type to MOSIdata. MOSIdata field is available to select when + SPI Bus configuration for Data Inputs is set to Two. + - ``MISOdata`` sets the field type to MISOdata. MISOdata field is available to select when + SPI Bus configuration for Data Inputs is set to Two. + """ + + +class MathMathItemSpi(SCPICmdRead): + """The ``MATH:MATH:SPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPI?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPI?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:SPI:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemSpiSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemSpiSupportedfields: + """Return the ``MATH:MATH:SPI:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SPI + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPI:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SPI:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPI:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPI:SUPPortedfields {DATa|MOSIdata|MISOdata} + - MATH:MATH:SPI:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``MOSIdata`` sets the field type to MOSIdata. MOSIdata field is available to select + when SPI Bus configuration for Data Inputs is set to Two. + - ``MISOdata`` sets the field type to MISOdata. MISOdata field is available to select + when SPI Bus configuration for Data Inputs is set to Two. + """ + return self._supportedfields + + +class MathMathItemSpectralWindow(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:WINdow`` command. + + Description: + - This command sets or queries the window function used to apply the specified FFT window to + the input data for the specified math waveform. The Math waveform is specified by x. A + spectral window determines what the filter shape of the spectral analyzer will be in the + frequency domain. It can be described by a mathematical function that is multiplied + point-by-point times the input data to the spectral analyzer. Following is a list of + arguments that specify the window function used to multiply the input data. The windows + are listed in the order of their ability to resolve frequencies (resolution bandwidth). + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:WINdow?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:WINdow?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:WINdow value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:WINdow {RECTANGular|HAMMing|HANNing|BLACKMANHarris|KAISERBessel|GAUSSian|FLATTOP2|TEKEXPonential} + - MATH:MATH:SPECTral:WINdow? + ``` + + Info: + - ``RECTANGular`` window function is equivalent to multiplying all gate data by one. + - ``HAMMing`` window function is based on a cosine series. + - ``HANNing`` window function is based on a cosine series. + - ``BLACKMANHarris`` window function is based on a cosine series. + - ``KAISERBessel`` window function is based on a cosine series. + - ``GAUSSian`` window function has the best localization characteristics in the joint + time/frequency plane. + - ``FLATTOP2`` window function is a cosine series window with a flattened frequency response + lobe. + - ``TEKEXPonential`` window has an exponential nonsymmetrical shape in the time domain and a + triangular shape in the frequency domain. + """ # noqa: E501 + + +class MathMathItemSpectralUnwrapDegrees(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:UNWRap:DEGrees`` command. + + Description: + - This command sets or queries how many degrees adjacent phase values can jump before being + unwrapped. This requires the Spectral type to be Phase and the UNWRAP to be enabled for + this PI command to have any affect. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:UNWRap:DEGrees?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SPECTral:UNWRap:DEGrees?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPECTral:UNWRap:DEGrees value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:UNWRap:DEGrees + - MATH:MATH:SPECTral:UNWRap:DEGrees? + ``` + + Info: + - ```` is the value of unwrap phase in degrees. + """ + + +class MathMathItemSpectralUnwrap(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:UNWRap`` command. + + Description: + - This command sets or queries whether phase unwrap of the spectral analyzer output data is + enabled. The Math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:UNWRap?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:UNWRap?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:UNWRap value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:UNWRap {OFF|ON|0|1} + - MATH:MATH:SPECTral:UNWRap? + ``` + + Info: + - ``0`` disables phase unwrap for the specified math waveform. + - ``1`` enables phase unwrap for the specified math waveform. + - ``ON`` enables phase unwrap for the specified math waveform. + - ``OFF`` disables phase unwrap for the specified math waveform. + + Properties: + - ``.degrees``: The ``MATH:MATH:SPECTral:UNWRap:DEGrees`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._degrees = MathMathItemSpectralUnwrapDegrees(device, f"{self._cmd_syntax}:DEGrees") + + @property + def degrees(self) -> MathMathItemSpectralUnwrapDegrees: + """Return the ``MATH:MATH:SPECTral:UNWRap:DEGrees`` command. + + Description: + - This command sets or queries how many degrees adjacent phase values can jump before + being unwrapped. This requires the Spectral type to be Phase and the UNWRAP to be + enabled for this PI command to have any affect. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:UNWRap:DEGrees?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SPECTral:UNWRap:DEGrees?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPECTral:UNWRap:DEGrees value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:UNWRap:DEGrees + - MATH:MATH:SPECTral:UNWRap:DEGrees? + ``` + + Info: + - ```` is the value of unwrap phase in degrees. + """ + return self._degrees + + +class MathMathItemSpectralType(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:TYPE`` command. + + Description: + - This command sets or queries the FFT type selected for spectral analysis. The math + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:TYPE value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:TYPE {MAGNitude|PHASe|REAL|IMAGinary} + - MATH:MATH:SPECTral:TYPE? + ``` + + Info: + - ``MAGNitude`` specifies the magnitude spectral function. + - ``PHASe`` specifies the phase spectral function. + - ``REAL`` specifies the real spectral function. + - ``IMAGinary`` specifies the imaginary spectral function. + """ + + +class MathMathItemSpectralSuppressValue(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:SUPPress:VALue`` command. + + Description: + - This command sets or queries in volts the value of suppression threshold of the specified + math waveform. This requires the Spectral type to be Phase and the Suppression to be + enabled for this PI command to have any affect. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:SUPPress:VALue?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SPECTral:SUPPress:VALue?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPECTral:SUPPress:VALue value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:SUPPress:VALue + - MATH:MATH:SPECTral:SUPPress:VALue? + ``` + + Info: + - ```` is the value of suppression threshold of the specified math waveform in volts. + """ + + +class MathMathItemSpectralSuppress(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:SUPPress`` command. + + Description: + - This command sets or queries whether suppression threshold for the specified math waveform + is enabled. This is only applied when Spectral Plot type is Phase. The math waveform is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:SUPPress?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:SUPPress?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:SUPPress value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:SUPPress {OFF|ON|0|1} + - MATH:MATH:SPECTral:SUPPress? + ``` + + Info: + - ``0`` disables suppression threshold for the specified math waveform. + - ``1`` enables suppression threshold for the specified math waveform. + - ``ON`` enables suppression threshold for the specified math waveform. + - ``OFF`` disables suppression threshold for the specified math waveform. + + Properties: + - ``.value``: The ``MATH:MATH:SPECTral:SUPPress:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = MathMathItemSpectralSuppressValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> MathMathItemSpectralSuppressValue: + """Return the ``MATH:MATH:SPECTral:SUPPress:VALue`` command. + + Description: + - This command sets or queries in volts the value of suppression threshold of the + specified math waveform. This requires the Spectral type to be Phase and the + Suppression to be enabled for this PI command to have any affect. The math waveform is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:SUPPress:VALue?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SPECTral:SUPPress:VALue?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPECTral:SUPPress:VALue value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:SUPPress:VALue + - MATH:MATH:SPECTral:SUPPress:VALue? + ``` + + Info: + - ```` is the value of suppression threshold of the specified math waveform in + volts. + """ + return self._value + + +class MathMathItemSpectralSource(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:SOUrce`` command. + + Description: + - This command sets or queries the specified spectral math source. This only works with a + math of type FFT. The math waveform is specified by x. ``MATH:MATH:SPECTRAL:SOURCE`` is + for use when the ``MATH:MATH:TYPE`` is FFT. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:SOUrce value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:SOUrce {S_Ch|CH|MATH|REF} + - MATH:MATH:SPECTral:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MathMathItemSpectralPhase(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:PHASE`` command. + + Description: + - This command sets or queries the units of a SpectralPhase function in the specified math + definition string. The Math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:PHASE?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:PHASE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:PHASE value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:PHASE {DEGrees|RADians|GROUPDelay} + - MATH:MATH:SPECTral:PHASE? + ``` + + Info: + - ``DEGREES`` sets the SpectralPhase units to degrees. + - ``RADIANS`` sets the SpectralPhase units to radians. + - ``GROUPDELAY`` sets the SpectralPhase units to groupdelay, which computes the derivative + of unwrapped phase spectrum. Units are expressed in seconds. + """ + + +class MathMathItemSpectralMag(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:MAG`` command. + + Description: + - This command sets or queries the units of the SpectralMag function in the specified math + definition string. The Math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:MAG?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:MAG?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:MAG value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:MAG {LINEAr|DBM} + - MATH:MATH:SPECTral:MAG? + ``` + + Info: + - ``LINEAR`` sets the SpectralMag units to linear. + - ``DBM`` sets the SpectralMag units to decibels. It also sets the Ref Level Offset to a + value that is the equivalent of 1 mW into 50 Ω. + """ + + +class MathMathItemSpectralHorz(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPECTral:HORZ`` command. + + Description: + - This command sets or queries the horizontal display scale of the spectral math waveform. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:HORZ?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:HORZ?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:HORZ value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:HORZ {LOG|LINEAr} + - MATH:MATH:SPECTral:HORZ? + ``` + + Info: + - ``LINEAr`` sets the SpectralMag units to linear. + - ``LOG`` sets the SpectralMag units to log. + """ + + +# pylint: disable=too-many-instance-attributes +class MathMathItemSpectral(SCPICmdRead): + """The ``MATH:MATH:SPECTral`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.horz``: The ``MATH:MATH:SPECTral:HORZ`` command. + - ``.mag``: The ``MATH:MATH:SPECTral:MAG`` command. + - ``.phase``: The ``MATH:MATH:SPECTral:PHASE`` command. + - ``.source``: The ``MATH:MATH:SPECTral:SOUrce`` command. + - ``.suppress``: The ``MATH:MATH:SPECTral:SUPPress`` command. + - ``.type``: The ``MATH:MATH:SPECTral:TYPE`` command. + - ``.unwrap``: The ``MATH:MATH:SPECTral:UNWRap`` command. + - ``.window``: The ``MATH:MATH:SPECTral:WINdow`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._horz = MathMathItemSpectralHorz(device, f"{self._cmd_syntax}:HORZ") + self._mag = MathMathItemSpectralMag(device, f"{self._cmd_syntax}:MAG") + self._phase = MathMathItemSpectralPhase(device, f"{self._cmd_syntax}:PHASE") + self._source = MathMathItemSpectralSource(device, f"{self._cmd_syntax}:SOUrce") + self._suppress = MathMathItemSpectralSuppress(device, f"{self._cmd_syntax}:SUPPress") + self._type = MathMathItemSpectralType(device, f"{self._cmd_syntax}:TYPE") + self._unwrap = MathMathItemSpectralUnwrap(device, f"{self._cmd_syntax}:UNWRap") + self._window = MathMathItemSpectralWindow(device, f"{self._cmd_syntax}:WINdow") + + @property + def horz(self) -> MathMathItemSpectralHorz: + """Return the ``MATH:MATH:SPECTral:HORZ`` command. + + Description: + - This command sets or queries the horizontal display scale of the spectral math + waveform. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:HORZ?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:HORZ?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:HORZ value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:HORZ {LOG|LINEAr} + - MATH:MATH:SPECTral:HORZ? + ``` + + Info: + - ``LINEAr`` sets the SpectralMag units to linear. + - ``LOG`` sets the SpectralMag units to log. + """ + return self._horz + + @property + def mag(self) -> MathMathItemSpectralMag: + """Return the ``MATH:MATH:SPECTral:MAG`` command. + + Description: + - This command sets or queries the units of the SpectralMag function in the specified + math definition string. The Math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:MAG?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:MAG?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:MAG value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:MAG {LINEAr|DBM} + - MATH:MATH:SPECTral:MAG? + ``` + + Info: + - ``LINEAR`` sets the SpectralMag units to linear. + - ``DBM`` sets the SpectralMag units to decibels. It also sets the Ref Level Offset to a + value that is the equivalent of 1 mW into 50 Ω. + """ + return self._mag + + @property + def phase(self) -> MathMathItemSpectralPhase: + """Return the ``MATH:MATH:SPECTral:PHASE`` command. + + Description: + - This command sets or queries the units of a SpectralPhase function in the specified + math definition string. The Math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:PHASE?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:PHASE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:PHASE value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:PHASE {DEGrees|RADians|GROUPDelay} + - MATH:MATH:SPECTral:PHASE? + ``` + + Info: + - ``DEGREES`` sets the SpectralPhase units to degrees. + - ``RADIANS`` sets the SpectralPhase units to radians. + - ``GROUPDELAY`` sets the SpectralPhase units to groupdelay, which computes the + derivative of unwrapped phase spectrum. Units are expressed in seconds. + """ + return self._phase + + @property + def source(self) -> MathMathItemSpectralSource: + """Return the ``MATH:MATH:SPECTral:SOUrce`` command. + + Description: + - This command sets or queries the specified spectral math source. This only works with + a math of type FFT. The math waveform is specified by x. + ``MATH:MATH:SPECTRAL:SOURCE`` is for use when the ``MATH:MATH:TYPE`` is FFT. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPECTral:SOUrce value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:SOUrce {S_Ch|CH|MATH|REF} + - MATH:MATH:SPECTral:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def suppress(self) -> MathMathItemSpectralSuppress: + """Return the ``MATH:MATH:SPECTral:SUPPress`` command. + + Description: + - This command sets or queries whether suppression threshold for the specified math + waveform is enabled. This is only applied when Spectral Plot type is Phase. The math + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:SUPPress?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:SUPPress?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPECTral:SUPPress value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:SUPPress {OFF|ON|0|1} + - MATH:MATH:SPECTral:SUPPress? + ``` + + Info: + - ``0`` disables suppression threshold for the specified math waveform. + - ``1`` enables suppression threshold for the specified math waveform. + - ``ON`` enables suppression threshold for the specified math waveform. + - ``OFF`` disables suppression threshold for the specified math waveform. + + Sub-properties: + - ``.value``: The ``MATH:MATH:SPECTral:SUPPress:VALue`` command. + """ + return self._suppress + + @property + def type(self) -> MathMathItemSpectralType: + """Return the ``MATH:MATH:SPECTral:TYPE`` command. + + Description: + - This command sets or queries the FFT type selected for spectral analysis. The math + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SPECTral:TYPE value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:TYPE {MAGNitude|PHASe|REAL|IMAGinary} + - MATH:MATH:SPECTral:TYPE? + ``` + + Info: + - ``MAGNitude`` specifies the magnitude spectral function. + - ``PHASe`` specifies the phase spectral function. + - ``REAL`` specifies the real spectral function. + - ``IMAGinary`` specifies the imaginary spectral function. + """ + return self._type + + @property + def unwrap(self) -> MathMathItemSpectralUnwrap: + """Return the ``MATH:MATH:SPECTral:UNWRap`` command. + + Description: + - This command sets or queries whether phase unwrap of the spectral analyzer output data + is enabled. The Math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:UNWRap?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:UNWRap?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPECTral:UNWRap value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:UNWRap {OFF|ON|0|1} + - MATH:MATH:SPECTral:UNWRap? + ``` + + Info: + - ``0`` disables phase unwrap for the specified math waveform. + - ``1`` enables phase unwrap for the specified math waveform. + - ``ON`` enables phase unwrap for the specified math waveform. + - ``OFF`` disables phase unwrap for the specified math waveform. + + Sub-properties: + - ``.degrees``: The ``MATH:MATH:SPECTral:UNWRap:DEGrees`` command. + """ + return self._unwrap + + @property + def window(self) -> MathMathItemSpectralWindow: + """Return the ``MATH:MATH:SPECTral:WINdow`` command. + + Description: + - This command sets or queries the window function used to apply the specified FFT + window to the input data for the specified math waveform. The Math waveform is + specified by x. A spectral window determines what the filter shape of the spectral + analyzer will be in the frequency domain. It can be described by a mathematical + function that is multiplied point-by-point times the input data to the spectral + analyzer. Following is a list of arguments that specify the window function used to + multiply the input data. The windows are listed in the order of their ability to + resolve frequencies (resolution bandwidth). + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral:WINdow?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral:WINdow?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPECTral:WINdow value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPECTral:WINdow {RECTANGular|HAMMing|HANNing|BLACKMANHarris|KAISERBessel|GAUSSian|FLATTOP2|TEKEXPonential} + - MATH:MATH:SPECTral:WINdow? + ``` + + Info: + - ``RECTANGular`` window function is equivalent to multiplying all gate data by one. + - ``HAMMing`` window function is based on a cosine series. + - ``HANNing`` window function is based on a cosine series. + - ``BLACKMANHarris`` window function is based on a cosine series. + - ``KAISERBessel`` window function is based on a cosine series. + - ``GAUSSian`` window function has the best localization characteristics in the joint + time/frequency plane. + - ``FLATTOP2`` window function is a cosine series window with a flattened frequency + response lobe. + - ``TEKEXPonential`` window has an exponential nonsymmetrical shape in the time domain + and a triangular shape in the frequency domain. + """ # noqa: E501 + return self._window + + +class MathMathItemSpacewireSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SPACEWIRe:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SPACEWIRe + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPACEWIRe:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SPACEWIRe:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPACEWIRe:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPACEWIRe:SUPPortedfields {DATa} + - MATH:MATH:SPACEWIRe:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemSpacewire(SCPICmdRead): + """The ``MATH:MATH:SPACEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPACEWIRe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPACEWIRe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:SPACEWIRe:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemSpacewireSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemSpacewireSupportedfields: + """Return the ``MATH:MATH:SPACEWIRe:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + SPACEWIRe bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MATH:MATH:SPACEWIRe:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SPACEWIRe:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SPACEWIRe:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SPACEWIRe:SUPPortedfields {DATa} + - MATH:MATH:SPACEWIRe:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemSource1(SCPICmdWrite): + """The ``MATH:MATH:SOUrce1`` command. + + Description: + - This command sets or queries the specified math source. The source in the command can be + either 1 or 2. This command sets the Basic Math components in the user interface, with two + sources and a function. You would also need to set the math type to Basic to see the + change in the user interface but this will not effect the programmable interface. The math + waveform and source are specified by x. SOURCE1 and SOURCE2 are for use when the + ``MATH:MATH:TYPE`` is BASIC. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:SOUrce1 value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SOUrce1 {S_Ch|CH|MATH|REF} + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MathMathItemSmbusSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SMBUS:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SMBUS bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SMBUS:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SMBUS:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SMBUS:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SMBUS:SUPPortedfields {DATa} + - MATH:MATH:SMBUS:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemSmbus(SCPICmdRead): + """The ``MATH:MATH:SMBUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SMBUS?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SMBUS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:SMBUS:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemSmbusSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemSmbusSupportedfields: + """Return the ``MATH:MATH:SMBUS:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SMBUS + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SMBUS:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SMBUS:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SMBUS:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SMBUS:SUPPortedfields {DATa} + - MATH:MATH:SMBUS:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemSigneddata(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SIGNeddata`` command. + + Description: + - This command sets or queries value to denote that bus field is decoded as signed/unsigned + data for math on bus source. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SIGNeddata?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SIGNeddata?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SIGNeddata value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SIGNeddata {ON|OFF} + - MATH:MATH:SIGNeddata? + ``` + + Info: + - ``ON`` indicates that the bus field is decoded as signed data for drawing the math + waveform. + - ``OFF`` indicates that the bus field is decoded as unsigned data for drawing the math + waveform. + """ + + +class MathMathItemSentSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SENT:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SENT bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SENT:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SENT:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SENT:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SENT:SUPPortedfields {FCData|FCDFirst|FCDTwo|SDATa} + - MATH:MATH:SENT:SUPPortedfields? + ``` + + Info: + - ``FCData`` sets the field type to FCData. FCData field is available to select when SENT + Bus configuration for Fast Data Channels is set to 2. + - ``FCDFirst`` sets the field type to FCDFirst. + - ``FCDTwo`` sets the field type to FCDTwo. + - ``SDATa`` sets the field type to SDATa. SDATa is available when SENT Bus configuration for + Slow Channel is not None. + """ + + +class MathMathItemSent(SCPICmdRead): + """The ``MATH:MATH:SENT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SENT?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SENT?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:SENT:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemSentSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemSentSupportedfields: + """Return the ``MATH:MATH:SENT:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SENT + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SENT:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SENT:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SENT:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SENT:SUPPortedfields {FCData|FCDFirst|FCDTwo|SDATa} + - MATH:MATH:SENT:SUPPortedfields? + ``` + + Info: + - ``FCData`` sets the field type to FCData. FCData field is available to select when + SENT Bus configuration for Fast Data Channels is set to 2. + - ``FCDFirst`` sets the field type to FCDFirst. + - ``FCDTwo`` sets the field type to FCDTwo. + - ``SDATa`` sets the field type to SDATa. SDATa is available when SENT Bus configuration + for Slow Channel is not None. + """ + return self._supportedfields + + +class MathMathItemSdlcSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:SDLC:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SDLC bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SDLC:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SDLC:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SDLC:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SDLC:SUPPortedfields {DATa} + - MATH:MATH:SDLC:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemSdlc(SCPICmdRead): + """The ``MATH:MATH:SDLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SDLC?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SDLC?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:SDLC:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemSdlcSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemSdlcSupportedfields: + """Return the ``MATH:MATH:SDLC:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for SDLC + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SDLC:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:SDLC:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:SDLC:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:SDLC:SUPPortedfields {DATa} + - MATH:MATH:SDLC:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemRs232cSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:RS232C:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for RS232C + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:RS232C:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:RS232C:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:RS232C:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:RS232C:SUPPortedfields {DATa|TXData|RXData} + - MATH:MATH:RS232C:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``TXData`` sets the field type to TXData. TXData field can be set when RS232 Bus + configuration for Data Inputs is set to Two. + - ``RXData`` sets the field type to RXData. RXData field can be set when RS232 Bus + configuration for Data Inputs is set to Two. + """ + + +class MathMathItemRs232c(SCPICmdRead): + """The ``MATH:MATH:RS232C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:RS232C?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:RS232C?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:RS232C:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemRs232cSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemRs232cSupportedfields: + """Return the ``MATH:MATH:RS232C:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for RS232C + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:RS232C:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:RS232C:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:RS232C:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:RS232C:SUPPortedfields {DATa|TXData|RXData} + - MATH:MATH:RS232C:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``TXData`` sets the field type to TXData. TXData field can be set when RS232 Bus + configuration for Data Inputs is set to Two. + - ``RXData`` sets the field type to RXData. RXData field can be set when RS232 Bus + configuration for Data Inputs is set to Two. + """ + return self._supportedfields + + +class MathMathItemPsifiveSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:PSIFIVe:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for PSIFIVe + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:PSIFIVe:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:PSIFIVe:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:PSIFIVe:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:PSIFIVe:SUPPortedfields {DATa|DRA|DRB|SDATa} + - MATH:MATH:PSIFIVe:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``DRA`` sets the field type to DRA. + - ``DRB`` sets the field type to DRB. + - ``SDATa`` sets the field type to SDATa. + """ + + +class MathMathItemPsifive(SCPICmdRead): + """The ``MATH:MATH:PSIFIVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:PSIFIVe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:PSIFIVe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:PSIFIVe:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemPsifiveSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemPsifiveSupportedfields: + """Return the ``MATH:MATH:PSIFIVe:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + PSIFIVe bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:PSIFIVe:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:PSIFIVe:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:PSIFIVe:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:PSIFIVe:SUPPortedfields {DATa|DRA|DRB|SDATa} + - MATH:MATH:PSIFIVe:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``DRA`` sets the field type to DRA. + - ``DRB`` sets the field type to DRB. + - ``SDATa`` sets the field type to SDATa. + """ + return self._supportedfields + + +class MathMathItemParallelSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:PARallel:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for PARallel + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:PARallel:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:PARallel:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:PARallel:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:PARallel:SUPPortedfields {DATa} + - MATH:MATH:PARallel:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemParallel(SCPICmdRead): + """The ``MATH:MATH:PARallel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:PARallel?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:PARallel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:PARallel:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemParallelSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemParallelSupportedfields: + """Return the ``MATH:MATH:PARallel:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + PARallel bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:PARallel:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:PARallel:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:PARallel:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:PARallel:SUPPortedfields {DATa} + - MATH:MATH:PARallel:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemOnewireSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:ONEWIRe:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for ONEWIRe + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ONEWIRe:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:ONEWIRe:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ONEWIRe:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ONEWIRe:SUPPortedfields {DATa} + - MATH:MATH:ONEWIRe:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemOnewire(SCPICmdRead): + """The ``MATH:MATH:ONEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ONEWIRe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ONEWIRe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:ONEWIRe:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemOnewireSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemOnewireSupportedfields: + """Return the ``MATH:MATH:ONEWIRe:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + ONEWIRe bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ONEWIRe:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:ONEWIRe:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ONEWIRe:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ONEWIRe:SUPPortedfields {DATa} + - MATH:MATH:ONEWIRe:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemMil1553bSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:MIL1553B:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for MIL1553B + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:MIL1553B:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:MIL1553B:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:MIL1553B:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:MIL1553B:SUPPortedfields {DATa|PAYLoad} + - MATH:MATH:MIL1553B:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``PAYLoad`` sets the field type to PAYLoad. + """ + + +class MathMathItemMil1553b(SCPICmdRead): + """The ``MATH:MATH:MIL1553B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:MIL1553B?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:MIL1553B?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:MIL1553B:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemMil1553bSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemMil1553bSupportedfields: + """Return the ``MATH:MATH:MIL1553B:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + MIL1553B bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:MIL1553B:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:MIL1553B:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:MIL1553B:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:MIL1553B:SUPPortedfields {DATa|PAYLoad} + - MATH:MATH:MIL1553B:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``PAYLoad`` sets the field type to PAYLoad. + """ + return self._supportedfields + + +class MathMathItemMdioSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:MDIO:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for MDIO bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:MDIO:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:MDIO:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:MDIO:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:MDIO:SUPPortedfields {DATa} + - MATH:MATH:MDIO:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemMdio(SCPICmdRead): + """The ``MATH:MATH:MDIO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:MDIO?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:MDIO?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:MDIO:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemMdioSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemMdioSupportedfields: + """Return the ``MATH:MATH:MDIO:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for MDIO + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:MDIO:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:MDIO:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:MDIO:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:MDIO:SUPPortedfields {DATa} + - MATH:MATH:MDIO:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemLinSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:LIN:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for LIN bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LIN:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LIN:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:LIN:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:LIN:SUPPortedfields {DATa} + - MATH:MATH:LIN:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemLin(SCPICmdRead): + """The ``MATH:MATH:LIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LIN?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LIN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:LIN:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemLinSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemLinSupportedfields: + """Return the ``MATH:MATH:LIN:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for LIN + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LIN:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:LIN:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:LIN:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:LIN:SUPPortedfields {DATa} + - MATH:MATH:LIN:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemLabelYpos(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the specified math label. The Math waveform + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel:YPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:YPOS value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:YPOS + - MATH:MATH:LABel:YPOS? + ``` + + Info: + - ```` is the location (in pixels) where the label for the selected math waveform is + displayed, relative to the baseline of the waveform. + """ + + +class MathMathItemLabelXpos(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:LABel:XPOS`` command. + + Description: + - This command sets or queries the X position of the specified math label. Maths are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel:XPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:XPOS value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:XPOS + - MATH:MATH:LABel:XPOS? + ``` + + Info: + - ```` is the location (in pixels) where the label for the selected math waveform is + displayed, relative to the left edge of the display. + """ + + +class MathMathItemLabelName(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:LABel:NAMe`` command. + + Description: + - This command sets or queries the label string, which is used for annotating the math + waveform on the screen. The math waveform to which the label is attached is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:NAMe + - MATH:MATH:LABel:NAMe? + ``` + + Info: + - ```` specifies the label to annotate the math waveform. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MathMathItemLabelFontUnderline(SCPICmdWrite): + """The ``MATH:MATH:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified math label. The math + waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MATH:MATH:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:UNDERline {ON|OFF|} + ``` + + Info: + - ```` = 0 turns off underline, and any other integer turns on underline. + - ``OFF`` turns off underline. + - ``ON`` turns on underline. + """ + + +class MathMathItemLabelFontType(SCPICmdWrite): + """The ``MATH:MATH:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries font type of the specified math label, such as Arial or Times + New Roman. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:TYPE + ``` + + Info: + - ```` is the name of the font type. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MathMathItemLabelFontSize(SCPICmdWrite): + """The ``MATH:MATH:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries font size of the specified math label. The math waveform is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:SIZE + ``` + + Info: + - ```` sets the label size in points. + """ + + +class MathMathItemLabelFontItalic(SCPICmdWrite): + """The ``MATH:MATH:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries italic state of the specified math label. The math waveform + is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:ITALic {ON|OFF|} + ``` + + Info: + - ```` = 0 turns off italic, and any other integer turns on italic. + - ``OFF`` turns off italic. + - ``ON`` turns on italic. + """ + + +class MathMathItemLabelFontBold(SCPICmdWrite): + """The ``MATH:MATH:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified math label. The math waveform + is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:BOLD {ON|OFF|} + ``` + + Info: + - ```` = 0 turns off bold, and any other integer turns on bold. + - ``OFF`` turns off bold. + - ``ON`` turns on bold. + """ + + +class MathMathItemLabelFont(SCPICmdRead): + """The ``MATH:MATH:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bold``: The ``MATH:MATH:LABel:FONT:BOLD`` command. + - ``.italic``: The ``MATH:MATH:LABel:FONT:ITALic`` command. + - ``.size``: The ``MATH:MATH:LABel:FONT:SIZE`` command. + - ``.type``: The ``MATH:MATH:LABel:FONT:TYPE`` command. + - ``.underline``: The ``MATH:MATH:LABel:FONT:UNDERline`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = MathMathItemLabelFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = MathMathItemLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") + self._size = MathMathItemLabelFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = MathMathItemLabelFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = MathMathItemLabelFontUnderline(device, f"{self._cmd_syntax}:UNDERline") + + @property + def bold(self) -> MathMathItemLabelFontBold: + """Return the ``MATH:MATH:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified math label. The math + waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MATH:MATH:LABel:FONT:BOLD value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:BOLD {ON|OFF|} + ``` + + Info: + - ```` = 0 turns off bold, and any other integer turns on bold. + - ``OFF`` turns off bold. + - ``ON`` turns on bold. + """ + return self._bold + + @property + def italic(self) -> MathMathItemLabelFontItalic: + """Return the ``MATH:MATH:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries italic state of the specified math label. The math + waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MATH:MATH:LABel:FONT:ITALic value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:ITALic {ON|OFF|} + ``` + + Info: + - ```` = 0 turns off italic, and any other integer turns on italic. + - ``OFF`` turns off italic. + - ``ON`` turns on italic. + """ + return self._italic + + @property + def size(self) -> MathMathItemLabelFontSize: + """Return the ``MATH:MATH:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries font size of the specified math label. The math waveform + is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MATH:MATH:LABel:FONT:SIZE value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:SIZE + ``` + + Info: + - ```` sets the label size in points. + """ + return self._size + + @property + def type(self) -> MathMathItemLabelFontType: + """Return the ``MATH:MATH:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries font type of the specified math label, such as Arial or + Times New Roman. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MATH:MATH:LABel:FONT:TYPE value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:TYPE + ``` + + Info: + - ```` is the name of the font type. + """ + return self._type + + @property + def underline(self) -> MathMathItemLabelFontUnderline: + """Return the ``MATH:MATH:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified math label. The math + waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MATH:MATH:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:FONT:UNDERline {ON|OFF|} + ``` + + Info: + - ```` = 0 turns off underline, and any other integer turns on underline. + - ``OFF`` turns off underline. + - ``ON`` turns on underline. + """ + return self._underline + + +class MathMathItemLabelColor(SCPICmdWrite): + """The ``MATH:MATH:LABel:COLor`` command. + + Description: + - This command sets or queries color of the specified math's label. The math waveform is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:COLor + ``` + + Info: + - `` is the color of the label. To return the color to the default color, send + an empty string as in this example: ``:MATH:MATH1:LABEL:COLOR`` ''. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MathMathItemLabel(SCPICmdRead): + """The ``MATH:MATH:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.color``: The ``MATH:MATH:LABel:COLor`` command. + - ``.font``: The ``MATH:MATH:LABel:FONT`` command tree. + - ``.name``: The ``MATH:MATH:LABel:NAMe`` command. + - ``.xpos``: The ``MATH:MATH:LABel:XPOS`` command. + - ``.ypos``: The ``MATH:MATH:LABel:YPOS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._color = MathMathItemLabelColor(device, f"{self._cmd_syntax}:COLor") + self._font = MathMathItemLabelFont(device, f"{self._cmd_syntax}:FONT") + self._name = MathMathItemLabelName(device, f"{self._cmd_syntax}:NAMe") + self._xpos = MathMathItemLabelXpos(device, f"{self._cmd_syntax}:XPOS") + self._ypos = MathMathItemLabelYpos(device, f"{self._cmd_syntax}:YPOS") + + @property + def color(self) -> MathMathItemLabelColor: + """Return the ``MATH:MATH:LABel:COLor`` command. + + Description: + - This command sets or queries color of the specified math's label. The math waveform is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:COLor + ``` + + Info: + - `` is the color of the label. To return the color to the default color, + send an empty string as in this example: ``:MATH:MATH1:LABEL:COLOR`` ''. + """ + return self._color + + @property + def font(self) -> MathMathItemLabelFont: + """Return the ``MATH:MATH:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel:FONT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bold``: The ``MATH:MATH:LABel:FONT:BOLD`` command. + - ``.italic``: The ``MATH:MATH:LABel:FONT:ITALic`` command. + - ``.size``: The ``MATH:MATH:LABel:FONT:SIZE`` command. + - ``.type``: The ``MATH:MATH:LABel:FONT:TYPE`` command. + - ``.underline``: The ``MATH:MATH:LABel:FONT:UNDERline`` command. + """ + return self._font + + @property + def name(self) -> MathMathItemLabelName: + """Return the ``MATH:MATH:LABel:NAMe`` command. + + Description: + - This command sets or queries the label string, which is used for annotating the math + waveform on the screen. The math waveform to which the label is attached is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel:NAMe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:NAMe + - MATH:MATH:LABel:NAMe? + ``` + + Info: + - ```` specifies the label to annotate the math waveform. + """ + return self._name + + @property + def xpos(self) -> MathMathItemLabelXpos: + """Return the ``MATH:MATH:LABel:XPOS`` command. + + Description: + - This command sets or queries the X position of the specified math label. Maths are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel:XPOS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:XPOS value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:XPOS + - MATH:MATH:LABel:XPOS? + ``` + + Info: + - ```` is the location (in pixels) where the label for the selected math waveform + is displayed, relative to the left edge of the display. + """ + return self._xpos + + @property + def ypos(self) -> MathMathItemLabelYpos: + """Return the ``MATH:MATH:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the specified math label. The Math + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel:YPOS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:LABel:YPOS value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:LABel:YPOS + - MATH:MATH:LABel:YPOS? + ``` + + Info: + - ```` is the location (in pixels) where the label for the selected math waveform + is displayed, relative to the baseline of the waveform. + """ + return self._ypos + + +class MathMathItemInterpolation(SCPICmdWrite): + """The ``MATH:MATH:INTERpolation`` command. + + Description: + - This command sets or queries whether sinc interpolation is enabled for math on bus source. + The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:INTERpolation value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:INTERpolation {ON|OFF} + ``` + + Info: + - ``ON`` indicates that the sinc interpolation is used for math waveform. + - ``OFF`` indicates no interpolation is used for math waveform. Waveform will appear + 'stair-steppy' in this case. + """ + + +class MathMathItemI3cSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:I3C:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for I3Cbus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:I3C:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:I3C:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:I3C:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:I3C:SUPPortedfields {DATa} + - MATH:MATH:I3C:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemI3c(SCPICmdRead): + """The ``MATH:MATH:I3C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:I3C?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:I3C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:I3C:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemI3cSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemI3cSupportedfields: + """Return the ``MATH:MATH:I3C:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + I3Cbus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:I3C:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:I3C:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:I3C:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:I3C:SUPPortedfields {DATa} + - MATH:MATH:I3C:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemI2cSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:I2C:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for I2C bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:I2C:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:I2C:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:I2C:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:I2C:SUPPortedfields {DATa} + - MATH:MATH:I2C:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemI2c(SCPICmdRead): + """The ``MATH:MATH:I2C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:I2C?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:I2C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:I2C:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemI2cSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemI2cSupportedfields: + """Return the ``MATH:MATH:I2C:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for I2C + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:I2C:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:I2C:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:I2C:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:I2C:SUPPortedfields {DATa} + - MATH:MATH:I2C:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemGating(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:GATing`` command. + + Description: + - This command specifies or returns the gating setting. It only applies to Math FFT plots. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:GATing?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:GATing?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:GATing value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:GATing {NONE|SCREEN|CURSor} + - MATH:MATH:GATing? + ``` + + Info: + - ``NONE`` turns off math gating. + - ``SCREEN`` turns on gating, using the left and right edges of the screen. + - ``CURSor`` limits math to the portion of the waveform between the vertical bar cursors, + even if they are off screen. + """ + + +class MathMathItemFunction(SCPICmdWrite): + """The ``MATH:MATH:FUNCtion`` command. + + Description: + - This command sets or queries the basic math arithmetic function. The math waveform is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:FUNCtion value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FUNCtion {ADD|SUBtract|MULTiply|DIVide} + ``` + + Info: + - ``ADD`` sets the basic math function to add. + - ``SUBtract`` sets the basic math function to subtract. + - ``MULTiply`` sets the basic math function to multiply. + - ``DIVide`` sets the basic math function to divide. + """ + + +class MathMathItemFlexraySupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FLEXray:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for FLEXray + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FLEXray:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:FLEXray:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FLEXray:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FLEXray:SUPPortedfields {DATa} + - MATH:MATH:FLEXray:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemFlexray(SCPICmdRead): + """The ``MATH:MATH:FLEXray`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FLEXray?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FLEXray?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:FLEXray:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemFlexraySupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemFlexraySupportedfields: + """Return the ``MATH:MATH:FLEXray:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + FLEXray bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FLEXray:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:FLEXray:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FLEXray:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FLEXray:SUPPortedfields {DATa} + - MATH:MATH:FLEXray:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemFilterType(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:TYPe`` command. + + Description: + - This command specifies or queries the filter type. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:TYPe value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:TYPe {LPASs|HPASs|BPASs|BSTop|APASs|HILBert|DIFFerentiator|RC|RRC} + - MATH:MATH:FILTer:TYPe? + ``` + + Info: + - ``LPASs`` specifies the filter type as LPASs. + - ``HPASs`` specifies the filter type as HPASs. + - ``BPASs`` specifies the filter type as BPASs. + - ``BSTop`` specifies the filter type as BSTop. + - ``APASs`` specifies the filter type as APASs. + - ``HILBert`` specifies the filter type as HILBert. + - ``DIFFerentiator`` specifies the filter type as DIFFerentiator. + - ``RC`` specifies the filter type as RC. + - ``RRC`` specifies the filter type as RRC. + """ + + +class MathMathItemFilterTwidth(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:TWIDth`` command. + + Description: + - This command sets or queries the filter Transition Width for Custom filter response. The + math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:TWIDth?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:TWIDth?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:TWIDth value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:TWIDth + - MATH:MATH:FILTer:TWIDth? + ``` + + Info: + - ```` specifies the Transition Width for Custom filter response. + """ + + +class MathMathItemFilterSymbols(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:SYMBols`` command. + + Description: + - This command sets or queries the symbol for raised cosine or root raised cosine filter. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SYMBols?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SYMBols?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:SYMBols value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SYMBols + - MATH:MATH:FILTer:SYMBols? + ``` + + Info: + - ```` specifies the number of symbols for Raised-Cosine (RC) filter type. + """ + + +class MathMathItemFilterSource(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:SOURce`` command. + + Description: + - This command sets or queries the math waveform filter source. The math waveform and source + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SOURce?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SOURce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:SOURce value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SOURce {S_Ch|CH|MATH|REF} + - MATH:MATH:FILTer:SOURce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MathMathItemFilterSduration(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:SDURation`` command. + + Description: + - This command sets or queries the symbol duration for raised cosine or root raised cosine + filter. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SDURation?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SDURation?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:SDURation value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SDURation + - MATH:MATH:FILTer:SDURation? + ``` + + Info: + - ```` specifies the number of symbol duration for Root-Raised-Cosine (RRC) filter + type. + """ + + +class MathMathItemFilterSdeviation(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:SDEViation`` command. + + Description: + - This command sets or queries the standard deviation in Gaussian filter. The math waveform + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SDEViation?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SDEViation?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:SDEViation value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SDEViation + - MATH:MATH:FILTer:SDEViation? + ``` + + Info: + - ```` sets the standard deviation in gaussian filter. + """ + + +class MathMathItemFilterSaveResponse(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:SAVe:RESPonse`` command. + + Description: + - This command set the filter response images to be saved while saving the filter file. The + math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SAVe:RESPonse?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SAVe:RESPonse?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:SAVe:RESPonse value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SAVe:RESPonse {1|0} + - MATH:MATH:FILTer:SAVe:RESPonse? + ``` + + Info: + - ``1`` enables the save of the filter response image. + - ``0`` disables the save of the filter response image. This is the default value. + """ + + +class MathMathItemFilterSave(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:SAVe`` command. + + Description: + - This command saves the filter file. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:SAVe value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SAVe + ``` + + Info: + - ```` saves the created filter in .flt format to the specified save location. + + Properties: + - ``.response``: The ``MATH:MATH:FILTer:SAVe:RESPonse`` command. + """ + + _WRAP_ARG_WITH_QUOTES = True + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._response = MathMathItemFilterSaveResponse(device, f"{self._cmd_syntax}:RESPonse") + + @property + def response(self) -> MathMathItemFilterSaveResponse: + """Return the ``MATH:MATH:FILTer:SAVe:RESPonse`` command. + + Description: + - This command set the filter response images to be saved while saving the filter file. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SAVe:RESPonse?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:FILTer:SAVe:RESPonse?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:SAVe:RESPonse value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SAVe:RESPonse {1|0} + - MATH:MATH:FILTer:SAVe:RESPonse? + ``` + + Info: + - ``1`` enables the save of the filter response image. + - ``0`` disables the save of the filter response image. This is the default value. + """ + return self._response + + +class MathMathItemFilterSattenuation(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:SATTenuation`` command. + + Description: + - This command sets or queries the stop band attenuation in the filter response. The math + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SATTenuation?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SATTenuation?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:SATTenuation value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SATTenuation + - MATH:MATH:FILTer:SATTenuation? + ``` + + Info: + - ```` sets the stop band attenuation in the filter response. + """ + + +class MathMathItemFilterRofactor(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:ROFactor`` command. + + Description: + - This command sets or queries roll off factor for raised cosine or root raised cosine + filter. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:ROFactor?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:ROFactor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:ROFactor value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:ROFactor + - MATH:MATH:FILTer:ROFactor? + ``` + + Info: + - ```` specifies the Roll-off Factor value for Rasied-Cosine(RC) filter type. + """ + + +class MathMathItemFilterResponse(SCPICmdWrite): + """The ``MATH:MATH:FILTer:RESPonse`` command. + + Description: + - This command will load the filter responses and automatically apply filter option. The + math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:RESPonse value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:RESPonse {BUTTerworth|CHEBYONe|CHEBYTWo|ELLiptical|GAUSsian|BESSelCUSTom} + ``` + + Info: + - ``BUTTerworth`` specifies the filter response as BUTTerworth. + - ``CHEBYONe`` specifies the filter response as CHEBYONe. + - ``CHEBYTWo`` specifies the filter response as CHEBYTWo. + - ``ELLiptical`` specifies the filter response as ELLiptical. + - ``GAUSsian`` specifies the filter response as GAUSsian. + - ``BESSelCUSTom`` specifies the filter response as BESSelCUSTom. + """ # noqa: E501 + + +class MathMathItemFilterPripple(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:PRIPple`` command. + + Description: + - This command sets or queries the pass band ripple in the filter response. The math + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:PRIPple?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:PRIPple?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:PRIPple value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:PRIPple + - MATH:MATH:FILTer:PRIPple? + ``` + + Info: + - ```` sets the pass band ripple in the filter response. + """ + + +class MathMathItemFilterOrder(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:ORDer`` command. + + Description: + - This command sets or queries the filter order. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:ORDer?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:ORDer?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:ORDer value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:ORDer + - MATH:MATH:FILTer:ORDer? + ``` + + Info: + - ```` sets the filter order. + """ + + +class MathMathItemFilterLoadResponse(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:LOAD:RESPonse`` command. + + Description: + - This command will load the filter responses and automatically apply filter option. The + math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:LOAD:RESPonse?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:LOAD:RESPonse?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:LOAD:RESPonse value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:LOAD:RESPonse {1|0} + - MATH:MATH:FILTer:LOAD:RESPonse? + ``` + + Info: + - ``1`` enables recall of filter response image. + - ``0`` disables recall of filter response image. + """ + + +class MathMathItemFilterLoad(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:LOAD`` command. + + Description: + - This command loads the filter file. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:LOAD value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:LOAD + ``` + + Info: + - ```` sets the path to the filter file to load. Linux default location is C:. + Windows default location is C:UsersPublicTektronixTekScopeFilters. + + Properties: + - ``.response``: The ``MATH:MATH:FILTer:LOAD:RESPonse`` command. + """ + + _WRAP_ARG_WITH_QUOTES = True + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._response = MathMathItemFilterLoadResponse(device, f"{self._cmd_syntax}:RESPonse") + + @property + def response(self) -> MathMathItemFilterLoadResponse: + """Return the ``MATH:MATH:FILTer:LOAD:RESPonse`` command. + + Description: + - This command will load the filter responses and automatically apply filter option. The + math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:LOAD:RESPonse?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:FILTer:LOAD:RESPonse?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:LOAD:RESPonse value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:LOAD:RESPonse {1|0} + - MATH:MATH:FILTer:LOAD:RESPonse? + ``` + + Info: + - ``1`` enables recall of filter response image. + - ``0`` disables recall of filter response image. + """ + return self._response + + +class MathMathItemFilterLcfreq(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:LCFReq`` command. + + Description: + - This command sets or queries the low cutoff frequency for bandpass or band stop filter. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:LCFReq?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:LCFReq?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:LCFReq value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:LCFReq + - MATH:MATH:FILTer:LCFReq? + ``` + + Info: + - ```` sets the low cutoff frequency for bandpass or band stop filter. + """ + + +class MathMathItemFilterInfo(SCPICmdRead): + """The ``MATH:MATH:FILTer:INFo`` command. + + Description: + - This command returns filter information output when the user creates a filter. The math + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:INFo?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:INFo?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:INFo? + ``` + """ + + +class MathMathItemFilterHcfreq(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:HCFReq`` command. + + Description: + - This command sets or queries the high cutoff frequency for bandpass or band stop filter. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:HCFReq?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:HCFReq?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:HCFReq value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:HCFReq + - MATH:MATH:FILTer:HCFReq? + ``` + + Info: + - ```` sets the high cutoff frequency for bandpass or band stop filter. + """ + + +class MathMathItemFilterDesign(SCPICmdWrite): + """The ``MATH:MATH:FILTer:DESIgn`` command. + + Description: + - This command performs filter specific Apply, Abort, and Generate operations. The math + waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:DESIgn value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:DESIgn {EXECUTE|ABORT|APPLY} + ``` + + Info: + - ``EXECUTE`` executes filter file creation. + - ``APPLY`` applies the filter definition on the Math waveform. + - ``ABORT`` aborts the filter execution. + """ + + +class MathMathItemFilterDelay(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:DELay`` command. + + Description: + - This command sets or queries the delay for all pass filter. The math waveform is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:DELay?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:DELay?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:DELay value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:DELay + - MATH:MATH:FILTer:DELay? + ``` + + Info: + - ```` sets the delay for all pass filter. + """ + + +class MathMathItemFilterCfreq(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:FILTer:CFReq`` command. + + Description: + - This command sets or queries the filter cutoff frequency. The math waveform is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:CFReq?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:CFReq?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:CFReq value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:CFReq + - MATH:MATH:FILTer:CFReq? + ``` + + Info: + - ```` sets the filter cutoff frequency. + """ + + +# pylint: disable=too-many-instance-attributes +class MathMathItemFilter(SCPICmdRead): + """The ``MATH:MATH:FILTer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.cfreq``: The ``MATH:MATH:FILTer:CFReq`` command. + - ``.delay``: The ``MATH:MATH:FILTer:DELay`` command. + - ``.design``: The ``MATH:MATH:FILTer:DESIgn`` command. + - ``.hcfreq``: The ``MATH:MATH:FILTer:HCFReq`` command. + - ``.info``: The ``MATH:MATH:FILTer:INFo`` command. + - ``.lcfreq``: The ``MATH:MATH:FILTer:LCFReq`` command. + - ``.load``: The ``MATH:MATH:FILTer:LOAD`` command. + - ``.order``: The ``MATH:MATH:FILTer:ORDer`` command. + - ``.pripple``: The ``MATH:MATH:FILTer:PRIPple`` command. + - ``.response``: The ``MATH:MATH:FILTer:RESPonse`` command. + - ``.rofactor``: The ``MATH:MATH:FILTer:ROFactor`` command. + - ``.sattenuation``: The ``MATH:MATH:FILTer:SATTenuation`` command. + - ``.save``: The ``MATH:MATH:FILTer:SAVe`` command. + - ``.sdeviation``: The ``MATH:MATH:FILTer:SDEViation`` command. + - ``.sduration``: The ``MATH:MATH:FILTer:SDURation`` command. + - ``.source``: The ``MATH:MATH:FILTer:SOURce`` command. + - ``.symbols``: The ``MATH:MATH:FILTer:SYMBols`` command. + - ``.twidth``: The ``MATH:MATH:FILTer:TWIDth`` command. + - ``.type``: The ``MATH:MATH:FILTer:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cfreq = MathMathItemFilterCfreq(device, f"{self._cmd_syntax}:CFReq") + self._delay = MathMathItemFilterDelay(device, f"{self._cmd_syntax}:DELay") + self._design = MathMathItemFilterDesign(device, f"{self._cmd_syntax}:DESIgn") + self._hcfreq = MathMathItemFilterHcfreq(device, f"{self._cmd_syntax}:HCFReq") + self._info = MathMathItemFilterInfo(device, f"{self._cmd_syntax}:INFo") + self._lcfreq = MathMathItemFilterLcfreq(device, f"{self._cmd_syntax}:LCFReq") + self._load = MathMathItemFilterLoad(device, f"{self._cmd_syntax}:LOAD") + self._order = MathMathItemFilterOrder(device, f"{self._cmd_syntax}:ORDer") + self._pripple = MathMathItemFilterPripple(device, f"{self._cmd_syntax}:PRIPple") + self._response = MathMathItemFilterResponse(device, f"{self._cmd_syntax}:RESPonse") + self._rofactor = MathMathItemFilterRofactor(device, f"{self._cmd_syntax}:ROFactor") + self._sattenuation = MathMathItemFilterSattenuation( + device, f"{self._cmd_syntax}:SATTenuation" + ) + self._save = MathMathItemFilterSave(device, f"{self._cmd_syntax}:SAVe") + self._sdeviation = MathMathItemFilterSdeviation(device, f"{self._cmd_syntax}:SDEViation") + self._sduration = MathMathItemFilterSduration(device, f"{self._cmd_syntax}:SDURation") + self._source = MathMathItemFilterSource(device, f"{self._cmd_syntax}:SOURce") + self._symbols = MathMathItemFilterSymbols(device, f"{self._cmd_syntax}:SYMBols") + self._twidth = MathMathItemFilterTwidth(device, f"{self._cmd_syntax}:TWIDth") + self._type = MathMathItemFilterType(device, f"{self._cmd_syntax}:TYPe") + + @property + def cfreq(self) -> MathMathItemFilterCfreq: + """Return the ``MATH:MATH:FILTer:CFReq`` command. + + Description: + - This command sets or queries the filter cutoff frequency. The math waveform is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:CFReq?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:CFReq?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:CFReq value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:CFReq + - MATH:MATH:FILTer:CFReq? + ``` + + Info: + - ```` sets the filter cutoff frequency. + """ + return self._cfreq + + @property + def delay(self) -> MathMathItemFilterDelay: + """Return the ``MATH:MATH:FILTer:DELay`` command. + + Description: + - This command sets or queries the delay for all pass filter. The math waveform is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:DELay?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:DELay?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:DELay value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:DELay + - MATH:MATH:FILTer:DELay? + ``` + + Info: + - ```` sets the delay for all pass filter. + """ + return self._delay + + @property + def design(self) -> MathMathItemFilterDesign: + """Return the ``MATH:MATH:FILTer:DESIgn`` command. + + Description: + - This command performs filter specific Apply, Abort, and Generate operations. The math + waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:DESIgn value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:DESIgn {EXECUTE|ABORT|APPLY} + ``` + + Info: + - ``EXECUTE`` executes filter file creation. + - ``APPLY`` applies the filter definition on the Math waveform. + - ``ABORT`` aborts the filter execution. + """ + return self._design + + @property + def hcfreq(self) -> MathMathItemFilterHcfreq: + """Return the ``MATH:MATH:FILTer:HCFReq`` command. + + Description: + - This command sets or queries the high cutoff frequency for bandpass or band stop + filter. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:HCFReq?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:HCFReq?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:HCFReq value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:HCFReq + - MATH:MATH:FILTer:HCFReq? + ``` + + Info: + - ```` sets the high cutoff frequency for bandpass or band stop filter. + """ + return self._hcfreq + + @property + def info(self) -> MathMathItemFilterInfo: + """Return the ``MATH:MATH:FILTer:INFo`` command. + + Description: + - This command returns filter information output when the user creates a filter. The + math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:INFo?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:INFo?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:INFo? + ``` + """ + return self._info + + @property + def lcfreq(self) -> MathMathItemFilterLcfreq: + """Return the ``MATH:MATH:FILTer:LCFReq`` command. + + Description: + - This command sets or queries the low cutoff frequency for bandpass or band stop + filter. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:LCFReq?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:LCFReq?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:LCFReq value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:LCFReq + - MATH:MATH:FILTer:LCFReq? + ``` + + Info: + - ```` sets the low cutoff frequency for bandpass or band stop filter. + """ + return self._lcfreq + + @property + def load(self) -> MathMathItemFilterLoad: + """Return the ``MATH:MATH:FILTer:LOAD`` command. + + Description: + - This command loads the filter file. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:LOAD value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:LOAD + ``` + + Info: + - ```` sets the path to the filter file to load. Linux default location is C:. + Windows default location is C:UsersPublicTektronixTekScopeFilters. + + Sub-properties: + - ``.response``: The ``MATH:MATH:FILTer:LOAD:RESPonse`` command. + """ + return self._load + + @property + def order(self) -> MathMathItemFilterOrder: + """Return the ``MATH:MATH:FILTer:ORDer`` command. + + Description: + - This command sets or queries the filter order. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:ORDer?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:ORDer?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:ORDer value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:ORDer + - MATH:MATH:FILTer:ORDer? + ``` + + Info: + - ```` sets the filter order. + """ + return self._order + + @property + def pripple(self) -> MathMathItemFilterPripple: + """Return the ``MATH:MATH:FILTer:PRIPple`` command. + + Description: + - This command sets or queries the pass band ripple in the filter response. The math + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:PRIPple?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:PRIPple?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:PRIPple value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:PRIPple + - MATH:MATH:FILTer:PRIPple? + ``` + + Info: + - ```` sets the pass band ripple in the filter response. + """ + return self._pripple + + @property + def response(self) -> MathMathItemFilterResponse: + """Return the ``MATH:MATH:FILTer:RESPonse`` command. + + Description: + - This command will load the filter responses and automatically apply filter option. The + math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:RESPonse value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:RESPonse {BUTTerworth|CHEBYONe|CHEBYTWo|ELLiptical|GAUSsian|BESSelCUSTom} + ``` + + Info: + - ``BUTTerworth`` specifies the filter response as BUTTerworth. + - ``CHEBYONe`` specifies the filter response as CHEBYONe. + - ``CHEBYTWo`` specifies the filter response as CHEBYTWo. + - ``ELLiptical`` specifies the filter response as ELLiptical. + - ``GAUSsian`` specifies the filter response as GAUSsian. + - ``BESSelCUSTom`` specifies the filter response as BESSelCUSTom. + """ # noqa: E501 + return self._response + + @property + def rofactor(self) -> MathMathItemFilterRofactor: + """Return the ``MATH:MATH:FILTer:ROFactor`` command. + + Description: + - This command sets or queries roll off factor for raised cosine or root raised cosine + filter. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:ROFactor?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:ROFactor?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:ROFactor value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:ROFactor + - MATH:MATH:FILTer:ROFactor? + ``` + + Info: + - ```` specifies the Roll-off Factor value for Rasied-Cosine(RC) filter type. + """ + return self._rofactor + + @property + def sattenuation(self) -> MathMathItemFilterSattenuation: + """Return the ``MATH:MATH:FILTer:SATTenuation`` command. + + Description: + - This command sets or queries the stop band attenuation in the filter response. The + math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SATTenuation?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:FILTer:SATTenuation?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:SATTenuation value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SATTenuation + - MATH:MATH:FILTer:SATTenuation? + ``` + + Info: + - ```` sets the stop band attenuation in the filter response. + """ + return self._sattenuation + + @property + def save(self) -> MathMathItemFilterSave: + """Return the ``MATH:MATH:FILTer:SAVe`` command. + + Description: + - This command saves the filter file. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:SAVe value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SAVe + ``` + + Info: + - ```` saves the created filter in .flt format to the specified save location. + + Sub-properties: + - ``.response``: The ``MATH:MATH:FILTer:SAVe:RESPonse`` command. + """ + return self._save + + @property + def sdeviation(self) -> MathMathItemFilterSdeviation: + """Return the ``MATH:MATH:FILTer:SDEViation`` command. + + Description: + - This command sets or queries the standard deviation in Gaussian filter. The math + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SDEViation?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SDEViation?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:SDEViation value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SDEViation + - MATH:MATH:FILTer:SDEViation? + ``` + + Info: + - ```` sets the standard deviation in gaussian filter. + """ + return self._sdeviation + + @property + def sduration(self) -> MathMathItemFilterSduration: + """Return the ``MATH:MATH:FILTer:SDURation`` command. + + Description: + - This command sets or queries the symbol duration for raised cosine or root raised + cosine filter. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SDURation?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SDURation?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:FILTer:SDURation value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SDURation + - MATH:MATH:FILTer:SDURation? + ``` + + Info: + - ```` specifies the number of symbol duration for Root-Raised-Cosine (RRC) filter + type. + """ + return self._sduration + + @property + def source(self) -> MathMathItemFilterSource: + """Return the ``MATH:MATH:FILTer:SOURce`` command. + + Description: + - This command sets or queries the math waveform filter source. The math waveform and + source are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SOURce?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:SOURce value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SOURce {S_Ch|CH|MATH|REF} + - MATH:MATH:FILTer:SOURce? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def symbols(self) -> MathMathItemFilterSymbols: + """Return the ``MATH:MATH:FILTer:SYMBols`` command. + + Description: + - This command sets or queries the symbol for raised cosine or root raised cosine + filter. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:SYMBols?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:SYMBols?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:SYMBols value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:SYMBols + - MATH:MATH:FILTer:SYMBols? + ``` + + Info: + - ```` specifies the number of symbols for Raised-Cosine (RC) filter type. + """ + return self._symbols + + @property + def twidth(self) -> MathMathItemFilterTwidth: + """Return the ``MATH:MATH:FILTer:TWIDth`` command. + + Description: + - This command sets or queries the filter Transition Width for Custom filter response. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:TWIDth?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:TWIDth?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:TWIDth value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:TWIDth + - MATH:MATH:FILTer:TWIDth? + ``` + + Info: + - ```` specifies the Transition Width for Custom filter response. + """ + return self._twidth + + @property + def type(self) -> MathMathItemFilterType: + """Return the ``MATH:MATH:FILTer:TYPe`` command. + + Description: + - This command specifies or queries the filter type. The math waveform is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer:TYPe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:FILTer:TYPe value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FILTer:TYPe {LPASs|HPASs|BPASs|BSTop|APASs|HILBert|DIFFerentiator|RC|RRC} + - MATH:MATH:FILTer:TYPe? + ``` + + Info: + - ``LPASs`` specifies the filter type as LPASs. + - ``HPASs`` specifies the filter type as HPASs. + - ``BPASs`` specifies the filter type as BPASs. + - ``BSTop`` specifies the filter type as BSTop. + - ``APASs`` specifies the filter type as APASs. + - ``HILBert`` specifies the filter type as HILBert. + - ``DIFFerentiator`` specifies the filter type as DIFFerentiator. + - ``RC`` specifies the filter type as RC. + - ``RRC`` specifies the filter type as RRC. + """ + return self._type + + +class MathMathItemEusbSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:EUSB:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for EUSB bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:EUSB:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:EUSB:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:EUSB:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:EUSB:SUPPortedfields {DATa|DDATa} + - MATH:MATH:EUSB:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. DATa field can be set when eUSB Bus configuration + for Speed is set to High and Signal type is Diff. + - ``DDATa`` sets the field type to DDATa. + """ + + +class MathMathItemEusb(SCPICmdRead): + """The ``MATH:MATH:EUSB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:EUSB?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:EUSB?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:EUSB:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemEusbSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemEusbSupportedfields: + """Return the ``MATH:MATH:EUSB:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for EUSB + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:EUSB:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:EUSB:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:EUSB:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:EUSB:SUPPortedfields {DATa|DDATa} + - MATH:MATH:EUSB:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. DATa field can be set when eUSB Bus + configuration for Speed is set to High and Signal type is Diff. + - ``DDATa`` sets the field type to DDATa. + """ + return self._supportedfields + + +class MathMathItemEthernetSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:ETHERnet:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for ETHERnet + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ETHERnet:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:ETHERnet:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ETHERnet:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ETHERnet:SUPPortedfields {DATa|IPData|TDATa} + - MATH:MATH:ETHERnet:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``IPData`` sets the field type to IPData. + - ``TDATa`` sets the field type to TDATa. + """ + + +class MathMathItemEthernet(SCPICmdRead): + """The ``MATH:MATH:ETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ETHERnet?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:ETHERnet:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemEthernetSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemEthernetSupportedfields: + """Return the ``MATH:MATH:ETHERnet:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + ETHERnet bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ETHERnet:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:ETHERnet:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ETHERnet:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ETHERnet:SUPPortedfields {DATa|IPData|TDATa} + - MATH:MATH:ETHERnet:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``IPData`` sets the field type to IPData. + - ``TDATa`` sets the field type to TDATa. + """ + return self._supportedfields + + +class MathMathItemEthercatSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:ETHERCAT:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for ETHERCAT + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ETHERCAT:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:ETHERCAT:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ETHERCAT:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ETHERCAT:SUPPortedfields {DATa|SDATa|NWVariabledata} + - MATH:MATH:ETHERCAT:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``SDATa`` sets the field type to SDATa. + - ``NWVariabledata`` sets the field type to NWVariabledata. + """ + + +class MathMathItemEthercat(SCPICmdRead): + """The ``MATH:MATH:ETHERCAT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ETHERCAT?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ETHERCAT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:ETHERCAT:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemEthercatSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemEthercatSupportedfields: + """Return the ``MATH:MATH:ETHERCAT:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + ETHERCAT bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ETHERCAT:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:ETHERCAT:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ETHERCAT:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ETHERCAT:SUPPortedfields {DATa|SDATa|NWVariabledata} + - MATH:MATH:ETHERCAT:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``SDATa`` sets the field type to SDATa. + - ``NWVariabledata`` sets the field type to NWVariabledata. + """ + return self._supportedfields + + +class MathMathItemEspiSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:ESPI:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for ESPI bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ESPI:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ESPI:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ESPI:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ESPI:SUPPortedfields {DATa|CDATa|RDATa} + - MATH:MATH:ESPI:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``CDATa`` sets the field type to CDATa. + - ``RDATa`` sets the field type to RDATa. + """ + + +class MathMathItemEspi(SCPICmdRead): + """The ``MATH:MATH:ESPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ESPI?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ESPI?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:ESPI:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemEspiSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemEspiSupportedfields: + """Return the ``MATH:MATH:ESPI:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for ESPI + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ESPI:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:ESPI:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ESPI:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ESPI:SUPPortedfields {DATa|CDATa|RDATa} + - MATH:MATH:ESPI:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``CDATa`` sets the field type to CDATa. + - ``RDATa`` sets the field type to RDATa. + """ + return self._supportedfields + + +class MathMathItemDefine(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:DEFine`` command. + + Description: + - This command allows you to define new waveforms using mathematical expressions. The query + form of this command returns the math definition for the specified math waveform. The math + waveform is specified by x. You can specify a math expression from waveforms, measurements + and scalar sources, functions, operands, and numerical constants. Math expressions can be + simple, such as Ch1, which specifies that a waveform should show the signal source of + Channel 1 with no mathematical computation. Math expressions can also be complex, + consisting of 100 plus characters and comprising many sources (including other math + waveforms), functions, and operands. As an example, you can enter the expression + Log(Ch1+Ch2), which specifies that the signals from channels 1 and 2 are to be + algebraically added, and the base 10 log of the sum is to be shown as the final math + waveform. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:DEFine?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:DEFine?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:DEFine value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:DEFine + - MATH:MATH:DEFine? + ``` + + Info: + - ```` quoted string argument is the mathematical expression that defines the + waveform. ``MATH:MATH:DEFINE?`` is for use when the ``MATH:MATH:TYPE`` is ADVANCED. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MathMathItemCxpiSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:CXPI:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for CXPI bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:CXPI:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:CXPI:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:CXPI:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:CXPI:SUPPortedfields {DATa} + - MATH:MATH:CXPI:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemCxpi(SCPICmdRead): + """The ``MATH:MATH:CXPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:CXPI?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:CXPI?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:CXPI:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemCxpiSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemCxpiSupportedfields: + """Return the ``MATH:MATH:CXPI:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for CXPI + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:CXPI:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:CXPI:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:CXPI:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:CXPI:SUPPortedfields {DATa} + - MATH:MATH:CXPI:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemCanSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:CAN:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for CAN bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:CAN:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:CAN:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:CAN:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:CAN:SUPPortedfields {DATa} + - MATH:MATH:CAN:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemCan(SCPICmdRead): + """The ``MATH:MATH:CAN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:CAN?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:CAN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:CAN:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemCanSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemCanSupportedfields: + """Return the ``MATH:MATH:CAN:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for CAN + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:CAN:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:CAN:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:CAN:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:CAN:SUPPortedfields {DATa} + - MATH:MATH:CAN:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +class MathMathItemAvgWeight(SCPICmdWrite): + """The ``MATH:MATH:AVG:WEIGht`` command. + + Description: + - This command sets or queries the number of acquisitions at which the averaging algorithm + will begin exponential averaging. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:AVG:WEIGht value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:AVG:WEIGht + ``` + + Info: + - ```` is the number of acquisitions at which the averaging algorithm will begin + exponential averaging. + """ + + +class MathMathItemAvgMode(SCPICmdWrite): + """The ``MATH:MATH:AVG:MODE`` command. + + Description: + - This command sets or queries the math average mode flag. If the flag is set to 1, math + averaging is turned on. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:AVG:MODE value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:AVG:MODE {ON|OFF|} + ``` + + Info: + - ```` = 0 turns off average mode, and any other integer turns on average mode. + - ``OFF`` turns off average mode. + - ``ON`` turns on average mode. + """ + + +class MathMathItemAvg(SCPICmdRead): + """The ``MATH:MATH:AVG`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:AVG?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:AVG?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.mode``: The ``MATH:MATH:AVG:MODE`` command. + - ``.weight``: The ``MATH:MATH:AVG:WEIGht`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._mode = MathMathItemAvgMode(device, f"{self._cmd_syntax}:MODE") + self._weight = MathMathItemAvgWeight(device, f"{self._cmd_syntax}:WEIGht") + + @property + def mode(self) -> MathMathItemAvgMode: + """Return the ``MATH:MATH:AVG:MODE`` command. + + Description: + - This command sets or queries the math average mode flag. If the flag is set to 1, math + averaging is turned on. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:AVG:MODE value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:AVG:MODE {ON|OFF|} + ``` + + Info: + - ```` = 0 turns off average mode, and any other integer turns on average mode. + - ``OFF`` turns off average mode. + - ``ON`` turns on average mode. + """ + return self._mode + + @property + def weight(self) -> MathMathItemAvgWeight: + """Return the ``MATH:MATH:AVG:WEIGht`` command. + + Description: + - This command sets or queries the number of acquisitions at which the averaging + algorithm will begin exponential averaging. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:AVG:WEIGht value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:AVG:WEIGht + ``` + + Info: + - ```` is the number of acquisitions at which the averaging algorithm will begin + exponential averaging. + """ + return self._weight + + +class MathMathItemAutoethernetSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:AUTOETHERnet:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + AUTOETHERnet bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:AUTOETHERnet:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:AUTOETHERnet:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:AUTOETHERnet:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:AUTOETHERnet:SUPPortedfields {DATa|IPData|TDATa} + - MATH:MATH:AUTOETHERnet:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``IPData`` sets the field type to IPData. + - ``TDATa`` sets the field type to TDATa. + """ + + +class MathMathItemAutoethernet(SCPICmdRead): + """The ``MATH:MATH:AUTOETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:AUTOETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:AUTOETHERnet?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:AUTOETHERnet:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemAutoethernetSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemAutoethernetSupportedfields: + """Return the ``MATH:MATH:AUTOETHERnet:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + AUTOETHERnet bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MATH:MATH:AUTOETHERnet:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:AUTOETHERnet:SUPPortedfields?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:AUTOETHERnet:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:AUTOETHERnet:SUPPortedfields {DATa|IPData|TDATa} + - MATH:MATH:AUTOETHERnet:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + - ``IPData`` sets the field type to IPData. + - ``TDATa`` sets the field type to TDATa. + """ + return self._supportedfields + + +class MathMathItemAudioSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:AUDIO:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for Audio bus. + The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:AUDIO:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:AUDIO:SUPPortedfields?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:AUDIO:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:AUDIO:SUPPortedfields {LCHannel|RCHannel|TDMChannel} + - MATH:MATH:AUDIO:SUPPortedfields? + ``` + + Info: + - ``LCHannel`` sets the field type to LCHannel. + - ``RCHannel`` sets the field type to RCHannel. + - ``TDMChannel`` sets the field type to TDMChannel. + """ + + +class MathMathItemAudio(SCPICmdRead): + """The ``MATH:MATH:AUDIO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:AUDIO?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:AUDIO?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:AUDIO:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemAudioSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemAudioSupportedfields: + """Return the ``MATH:MATH:AUDIO:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for Audio + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:AUDIO:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:AUDIO:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:AUDIO:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:AUDIO:SUPPortedfields {LCHannel|RCHannel|TDMChannel} + - MATH:MATH:AUDIO:SUPPortedfields? + ``` + + Info: + - ``LCHannel`` sets the field type to LCHannel. + - ``RCHannel`` sets the field type to RCHannel. + - ``TDMChannel`` sets the field type to TDMChannel. + """ + return self._supportedfields + + +class MathMathItemArinc429aSupportedfields(SCPICmdWrite, SCPICmdRead): + """The ``MATH:MATH:ARINC429A:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for ARINC429A + bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ARINC429A:SUPPortedfields?`` + query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:ARINC429A:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ARINC429A:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ARINC429A:SUPPortedfields {DATa} + - MATH:MATH:ARINC429A:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + + +class MathMathItemArinc429a(SCPICmdRead): + """The ``MATH:MATH:ARINC429A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ARINC429A?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ARINC429A?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.supportedfields``: The ``MATH:MATH:ARINC429A:SUPPortedfields`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._supportedfields = MathMathItemArinc429aSupportedfields( + device, f"{self._cmd_syntax}:SUPPortedfields" + ) + + @property + def supportedfields(self) -> MathMathItemArinc429aSupportedfields: + """Return the ``MATH:MATH:ARINC429A:SUPPortedfields`` command. + + Description: + - This command sets or queries the field type for the math for the bus source for + ARINC429A bus. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MATH:MATH:ARINC429A:SUPPortedfields?`` query. + - Using the ``.verify(value)`` method will send the + ``MATH:MATH:ARINC429A:SUPPortedfields?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MATH:MATH:ARINC429A:SUPPortedfields value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:ARINC429A:SUPPortedfields {DATa} + - MATH:MATH:ARINC429A:SUPPortedfields? + ``` + + Info: + - ``DATa`` sets the field type to DATa. + """ + return self._supportedfields + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class MathMathItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``MATH:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.arinc429a``: The ``MATH:MATH:ARINC429A`` command tree. + - ``.audio``: The ``MATH:MATH:AUDIO`` command tree. + - ``.autoethernet``: The ``MATH:MATH:AUTOETHERnet`` command tree. + - ``.avg``: The ``MATH:MATH:AVG`` command tree. + - ``.can``: The ``MATH:MATH:CAN`` command tree. + - ``.cxpi``: The ``MATH:MATH:CXPI`` command tree. + - ``.define``: The ``MATH:MATH:DEFine`` command. + - ``.espi``: The ``MATH:MATH:ESPI`` command tree. + - ``.ethercat``: The ``MATH:MATH:ETHERCAT`` command tree. + - ``.ethernet``: The ``MATH:MATH:ETHERnet`` command tree. + - ``.eusb``: The ``MATH:MATH:EUSB`` command tree. + - ``.filter``: The ``MATH:MATH:FILTer`` command tree. + - ``.flexray``: The ``MATH:MATH:FLEXray`` command tree. + - ``.function``: The ``MATH:MATH:FUNCtion`` command. + - ``.gating``: The ``MATH:MATH:GATing`` command. + - ``.i2c``: The ``MATH:MATH:I2C`` command tree. + - ``.i3c``: The ``MATH:MATH:I3C`` command tree. + - ``.interpolation``: The ``MATH:MATH:INTERpolation`` command. + - ``.label``: The ``MATH:MATH:LABel`` command tree. + - ``.lin``: The ``MATH:MATH:LIN`` command tree. + - ``.mdio``: The ``MATH:MATH:MDIO`` command tree. + - ``.mil1553b``: The ``MATH:MATH:MIL1553B`` command tree. + - ``.onewire``: The ``MATH:MATH:ONEWIRe`` command tree. + - ``.parallel``: The ``MATH:MATH:PARallel`` command tree. + - ``.psifive``: The ``MATH:MATH:PSIFIVe`` command tree. + - ``.rs232c``: The ``MATH:MATH:RS232C`` command tree. + - ``.sdlc``: The ``MATH:MATH:SDLC`` command tree. + - ``.sent``: The ``MATH:MATH:SENT`` command tree. + - ``.signeddata``: The ``MATH:MATH:SIGNeddata`` command. + - ``.smbus``: The ``MATH:MATH:SMBUS`` command tree. + - ``.source1``: The ``MATH:MATH:SOUrce1`` command. + - ``.spacewire``: The ``MATH:MATH:SPACEWIRe`` command tree. + - ``.spectral``: The ``MATH:MATH:SPECTral`` command tree. + - ``.spi``: The ``MATH:MATH:SPI`` command tree. + - ``.spmi``: The ``MATH:MATH:SPMI`` command tree. + - ``.svid``: The ``MATH:MATH:SVID`` command tree. + - ``.type``: The ``MATH:MATH:TYPe`` command. + - ``.usb``: The ``MATH:MATH:USB`` command tree. + - ``.vunit``: The ``MATH:MATH:VUNIT`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._arinc429a = MathMathItemArinc429a(device, f"{self._cmd_syntax}:ARINC429A") + self._audio = MathMathItemAudio(device, f"{self._cmd_syntax}:AUDIO") + self._autoethernet = MathMathItemAutoethernet(device, f"{self._cmd_syntax}:AUTOETHERnet") + self._avg = MathMathItemAvg(device, f"{self._cmd_syntax}:AVG") + self._can = MathMathItemCan(device, f"{self._cmd_syntax}:CAN") + self._cxpi = MathMathItemCxpi(device, f"{self._cmd_syntax}:CXPI") + self._define = MathMathItemDefine(device, f"{self._cmd_syntax}:DEFine") + self._espi = MathMathItemEspi(device, f"{self._cmd_syntax}:ESPI") + self._ethercat = MathMathItemEthercat(device, f"{self._cmd_syntax}:ETHERCAT") + self._ethernet = MathMathItemEthernet(device, f"{self._cmd_syntax}:ETHERnet") + self._eusb = MathMathItemEusb(device, f"{self._cmd_syntax}:EUSB") + self._filter = MathMathItemFilter(device, f"{self._cmd_syntax}:FILTer") + self._flexray = MathMathItemFlexray(device, f"{self._cmd_syntax}:FLEXray") + self._function = MathMathItemFunction(device, f"{self._cmd_syntax}:FUNCtion") + self._gating = MathMathItemGating(device, f"{self._cmd_syntax}:GATing") + self._i2c = MathMathItemI2c(device, f"{self._cmd_syntax}:I2C") + self._i3c = MathMathItemI3c(device, f"{self._cmd_syntax}:I3C") + self._interpolation = MathMathItemInterpolation(device, f"{self._cmd_syntax}:INTERpolation") + self._label = MathMathItemLabel(device, f"{self._cmd_syntax}:LABel") + self._lin = MathMathItemLin(device, f"{self._cmd_syntax}:LIN") + self._mdio = MathMathItemMdio(device, f"{self._cmd_syntax}:MDIO") + self._mil1553b = MathMathItemMil1553b(device, f"{self._cmd_syntax}:MIL1553B") + self._onewire = MathMathItemOnewire(device, f"{self._cmd_syntax}:ONEWIRe") + self._parallel = MathMathItemParallel(device, f"{self._cmd_syntax}:PARallel") + self._psifive = MathMathItemPsifive(device, f"{self._cmd_syntax}:PSIFIVe") + self._rs232c = MathMathItemRs232c(device, f"{self._cmd_syntax}:RS232C") + self._sdlc = MathMathItemSdlc(device, f"{self._cmd_syntax}:SDLC") + self._sent = MathMathItemSent(device, f"{self._cmd_syntax}:SENT") + self._signeddata = MathMathItemSigneddata(device, f"{self._cmd_syntax}:SIGNeddata") + self._smbus = MathMathItemSmbus(device, f"{self._cmd_syntax}:SMBUS") + self._source1 = MathMathItemSource1(device, f"{self._cmd_syntax}:SOUrce1") + self._spacewire = MathMathItemSpacewire(device, f"{self._cmd_syntax}:SPACEWIRe") + self._spectral = MathMathItemSpectral(device, f"{self._cmd_syntax}:SPECTral") + self._spi = MathMathItemSpi(device, f"{self._cmd_syntax}:SPI") + self._spmi = MathMathItemSpmi(device, f"{self._cmd_syntax}:SPMI") + self._svid = MathMathItemSvid(device, f"{self._cmd_syntax}:SVID") + self._type = MathMathItemType(device, f"{self._cmd_syntax}:TYPe") + self._usb = MathMathItemUsb(device, f"{self._cmd_syntax}:USB") + self._vunit = MathMathItemVunit(device, f"{self._cmd_syntax}:VUNIT") + + @property + def arinc429a(self) -> MathMathItemArinc429a: + """Return the ``MATH:MATH:ARINC429A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ARINC429A?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ARINC429A?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:ARINC429A:SUPPortedfields`` command. + """ + return self._arinc429a + + @property + def audio(self) -> MathMathItemAudio: + """Return the ``MATH:MATH:AUDIO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:AUDIO?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:AUDIO?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:AUDIO:SUPPortedfields`` command. + """ + return self._audio + + @property + def autoethernet(self) -> MathMathItemAutoethernet: + """Return the ``MATH:MATH:AUTOETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:AUTOETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:AUTOETHERnet?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:AUTOETHERnet:SUPPortedfields`` command. + """ + return self._autoethernet + + @property + def avg(self) -> MathMathItemAvg: + """Return the ``MATH:MATH:AVG`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:AVG?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:AVG?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.mode``: The ``MATH:MATH:AVG:MODE`` command. + - ``.weight``: The ``MATH:MATH:AVG:WEIGht`` command. + """ + return self._avg + + @property + def can(self) -> MathMathItemCan: + """Return the ``MATH:MATH:CAN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:CAN?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:CAN?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:CAN:SUPPortedfields`` command. + """ + return self._can + + @property + def cxpi(self) -> MathMathItemCxpi: + """Return the ``MATH:MATH:CXPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:CXPI?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:CXPI?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:CXPI:SUPPortedfields`` command. + """ + return self._cxpi + + @property + def define(self) -> MathMathItemDefine: + """Return the ``MATH:MATH:DEFine`` command. + + Description: + - This command allows you to define new waveforms using mathematical expressions. The + query form of this command returns the math definition for the specified math + waveform. The math waveform is specified by x. You can specify a math expression from + waveforms, measurements and scalar sources, functions, operands, and numerical + constants. Math expressions can be simple, such as Ch1, which specifies that a + waveform should show the signal source of Channel 1 with no mathematical computation. + Math expressions can also be complex, consisting of 100 plus characters and comprising + many sources (including other math waveforms), functions, and operands. As an example, + you can enter the expression Log(Ch1+Ch2), which specifies that the signals from + channels 1 and 2 are to be algebraically added, and the base 10 log of the sum is to + be shown as the final math waveform. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:DEFine?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:DEFine?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:DEFine value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:DEFine + - MATH:MATH:DEFine? + ``` + + Info: + - ```` quoted string argument is the mathematical expression that defines the + waveform. ``MATH:MATH:DEFINE?`` is for use when the ``MATH:MATH:TYPE`` is + ADVANCED. + """ + return self._define + + @property + def espi(self) -> MathMathItemEspi: + """Return the ``MATH:MATH:ESPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ESPI?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ESPI?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:ESPI:SUPPortedfields`` command. + """ + return self._espi + + @property + def ethercat(self) -> MathMathItemEthercat: + """Return the ``MATH:MATH:ETHERCAT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ETHERCAT?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ETHERCAT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:ETHERCAT:SUPPortedfields`` command. + """ + return self._ethercat + + @property + def ethernet(self) -> MathMathItemEthernet: + """Return the ``MATH:MATH:ETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ETHERnet?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:ETHERnet:SUPPortedfields`` command. + """ + return self._ethernet + + @property + def eusb(self) -> MathMathItemEusb: + """Return the ``MATH:MATH:EUSB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:EUSB?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:EUSB?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:EUSB:SUPPortedfields`` command. + """ + return self._eusb + + @property + def filter(self) -> MathMathItemFilter: + """Return the ``MATH:MATH:FILTer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FILTer?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FILTer?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.cfreq``: The ``MATH:MATH:FILTer:CFReq`` command. + - ``.delay``: The ``MATH:MATH:FILTer:DELay`` command. + - ``.design``: The ``MATH:MATH:FILTer:DESIgn`` command. + - ``.hcfreq``: The ``MATH:MATH:FILTer:HCFReq`` command. + - ``.info``: The ``MATH:MATH:FILTer:INFo`` command. + - ``.lcfreq``: The ``MATH:MATH:FILTer:LCFReq`` command. + - ``.load``: The ``MATH:MATH:FILTer:LOAD`` command. + - ``.order``: The ``MATH:MATH:FILTer:ORDer`` command. + - ``.pripple``: The ``MATH:MATH:FILTer:PRIPple`` command. + - ``.response``: The ``MATH:MATH:FILTer:RESPonse`` command. + - ``.rofactor``: The ``MATH:MATH:FILTer:ROFactor`` command. + - ``.sattenuation``: The ``MATH:MATH:FILTer:SATTenuation`` command. + - ``.save``: The ``MATH:MATH:FILTer:SAVe`` command. + - ``.sdeviation``: The ``MATH:MATH:FILTer:SDEViation`` command. + - ``.sduration``: The ``MATH:MATH:FILTer:SDURation`` command. + - ``.source``: The ``MATH:MATH:FILTer:SOURce`` command. + - ``.symbols``: The ``MATH:MATH:FILTer:SYMBols`` command. + - ``.twidth``: The ``MATH:MATH:FILTer:TWIDth`` command. + - ``.type``: The ``MATH:MATH:FILTer:TYPe`` command. + """ + return self._filter + + @property + def flexray(self) -> MathMathItemFlexray: + """Return the ``MATH:MATH:FLEXray`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:FLEXray?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:FLEXray?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:FLEXray:SUPPortedfields`` command. + """ + return self._flexray + + @property + def function(self) -> MathMathItemFunction: + """Return the ``MATH:MATH:FUNCtion`` command. + + Description: + - This command sets or queries the basic math arithmetic function. The math waveform is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:FUNCtion value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:FUNCtion {ADD|SUBtract|MULTiply|DIVide} + ``` + + Info: + - ``ADD`` sets the basic math function to add. + - ``SUBtract`` sets the basic math function to subtract. + - ``MULTiply`` sets the basic math function to multiply. + - ``DIVide`` sets the basic math function to divide. + """ + return self._function + + @property + def gating(self) -> MathMathItemGating: + """Return the ``MATH:MATH:GATing`` command. + + Description: + - This command specifies or returns the gating setting. It only applies to Math FFT + plots. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:GATing?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:GATing?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:GATing value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:GATing {NONE|SCREEN|CURSor} + - MATH:MATH:GATing? + ``` + + Info: + - ``NONE`` turns off math gating. + - ``SCREEN`` turns on gating, using the left and right edges of the screen. + - ``CURSor`` limits math to the portion of the waveform between the vertical bar + cursors, even if they are off screen. + """ + return self._gating + + @property + def i2c(self) -> MathMathItemI2c: + """Return the ``MATH:MATH:I2C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:I2C?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:I2C?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:I2C:SUPPortedfields`` command. + """ + return self._i2c + + @property + def i3c(self) -> MathMathItemI3c: + """Return the ``MATH:MATH:I3C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:I3C?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:I3C?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:I3C:SUPPortedfields`` command. + """ + return self._i3c + + @property + def interpolation(self) -> MathMathItemInterpolation: + """Return the ``MATH:MATH:INTERpolation`` command. + + Description: + - This command sets or queries whether sinc interpolation is enabled for math on bus + source. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:INTERpolation value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:INTERpolation {ON|OFF} + ``` + + Info: + - ``ON`` indicates that the sinc interpolation is used for math waveform. + - ``OFF`` indicates no interpolation is used for math waveform. Waveform will appear + 'stair-steppy' in this case. + """ + return self._interpolation + + @property + def label(self) -> MathMathItemLabel: + """Return the ``MATH:MATH:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.color``: The ``MATH:MATH:LABel:COLor`` command. + - ``.font``: The ``MATH:MATH:LABel:FONT`` command tree. + - ``.name``: The ``MATH:MATH:LABel:NAMe`` command. + - ``.xpos``: The ``MATH:MATH:LABel:XPOS`` command. + - ``.ypos``: The ``MATH:MATH:LABel:YPOS`` command. + """ + return self._label + + @property + def lin(self) -> MathMathItemLin: + """Return the ``MATH:MATH:LIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:LIN?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:LIN?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:LIN:SUPPortedfields`` command. + """ + return self._lin + + @property + def mdio(self) -> MathMathItemMdio: + """Return the ``MATH:MATH:MDIO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:MDIO?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:MDIO?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:MDIO:SUPPortedfields`` command. + """ + return self._mdio + + @property + def mil1553b(self) -> MathMathItemMil1553b: + """Return the ``MATH:MATH:MIL1553B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:MIL1553B?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:MIL1553B?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:MIL1553B:SUPPortedfields`` command. + """ + return self._mil1553b + + @property + def onewire(self) -> MathMathItemOnewire: + """Return the ``MATH:MATH:ONEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:ONEWIRe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:ONEWIRe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:ONEWIRe:SUPPortedfields`` command. + """ + return self._onewire + + @property + def parallel(self) -> MathMathItemParallel: + """Return the ``MATH:MATH:PARallel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:PARallel?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:PARallel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:PARallel:SUPPortedfields`` command. + """ + return self._parallel + + @property + def psifive(self) -> MathMathItemPsifive: + """Return the ``MATH:MATH:PSIFIVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:PSIFIVe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:PSIFIVe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:PSIFIVe:SUPPortedfields`` command. + """ + return self._psifive + + @property + def rs232c(self) -> MathMathItemRs232c: + """Return the ``MATH:MATH:RS232C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:RS232C?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:RS232C?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:RS232C:SUPPortedfields`` command. + """ + return self._rs232c + + @property + def sdlc(self) -> MathMathItemSdlc: + """Return the ``MATH:MATH:SDLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SDLC?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SDLC?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:SDLC:SUPPortedfields`` command. + """ + return self._sdlc + + @property + def sent(self) -> MathMathItemSent: + """Return the ``MATH:MATH:SENT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SENT?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SENT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:SENT:SUPPortedfields`` command. + """ + return self._sent + + @property + def signeddata(self) -> MathMathItemSigneddata: + """Return the ``MATH:MATH:SIGNeddata`` command. + + Description: + - This command sets or queries value to denote that bus field is decoded as + signed/unsigned data for math on bus source. The math waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SIGNeddata?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SIGNeddata?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MATH:MATH:SIGNeddata value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SIGNeddata {ON|OFF} + - MATH:MATH:SIGNeddata? + ``` + + Info: + - ``ON`` indicates that the bus field is decoded as signed data for drawing the math + waveform. + - ``OFF`` indicates that the bus field is decoded as unsigned data for drawing the math + waveform. + """ + return self._signeddata + + @property + def smbus(self) -> MathMathItemSmbus: + """Return the ``MATH:MATH:SMBUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SMBUS?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SMBUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:SMBUS:SUPPortedfields`` command. + """ + return self._smbus + + @property + def source1(self) -> MathMathItemSource1: + """Return the ``MATH:MATH:SOUrce1`` command. + + Description: + - This command sets or queries the specified math source. The source in the command can + be either 1 or 2. This command sets the Basic Math components in the user interface, + with two sources and a function. You would also need to set the math type to Basic to + see the change in the user interface but this will not effect the programmable + interface. The math waveform and source are specified by x. SOURCE1 and SOURCE2 are + for use when the ``MATH:MATH:TYPE`` is BASIC. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:SOUrce1 value`` + command. + + SCPI Syntax: + ``` + - MATH:MATH:SOUrce1 {S_Ch|CH|MATH|REF} + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source1 + + @property + def spacewire(self) -> MathMathItemSpacewire: + """Return the ``MATH:MATH:SPACEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPACEWIRe?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPACEWIRe?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:SPACEWIRe:SUPPortedfields`` command. + """ + return self._spacewire + + @property + def spectral(self) -> MathMathItemSpectral: + """Return the ``MATH:MATH:SPECTral`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPECTral?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPECTral?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.horz``: The ``MATH:MATH:SPECTral:HORZ`` command. + - ``.mag``: The ``MATH:MATH:SPECTral:MAG`` command. + - ``.phase``: The ``MATH:MATH:SPECTral:PHASE`` command. + - ``.source``: The ``MATH:MATH:SPECTral:SOUrce`` command. + - ``.suppress``: The ``MATH:MATH:SPECTral:SUPPress`` command. + - ``.type``: The ``MATH:MATH:SPECTral:TYPE`` command. + - ``.unwrap``: The ``MATH:MATH:SPECTral:UNWRap`` command. + - ``.window``: The ``MATH:MATH:SPECTral:WINdow`` command. + """ + return self._spectral + + @property + def spi(self) -> MathMathItemSpi: + """Return the ``MATH:MATH:SPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPI?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPI?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:SPI:SUPPortedfields`` command. + """ + return self._spi + + @property + def spmi(self) -> MathMathItemSpmi: + """Return the ``MATH:MATH:SPMI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SPMI?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SPMI?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:SPMI:SUPPortedfields`` command. + """ + return self._spmi + + @property + def svid(self) -> MathMathItemSvid: + """Return the ``MATH:MATH:SVID`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:SVID?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:SVID?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:SVID:SUPPortedfields`` command. + """ + return self._svid + + @property + def type(self) -> MathMathItemType: + """Return the ``MATH:MATH:TYPe`` command. + + Description: + - This command sets or queries the math type. The math waveform is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:TYPe value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:TYPe {BASic|FILTER|FFT|ADVanced} + ``` + + Info: + - ``BASic`` set the type to basic math. + - ``FILTER`` sets the math type to filter. Requires UDFLT licenses on 5, 6 series MSO + instruments and Tekscope (Offline). + - ``FFT`` sets the type to FFT math, which can use any live analog or reference waveform + in the time domain. NOTE. You can also use FFT as part of a math expression by + declaring the type. + - ``ADVanced`` sets the type to advanced math. + """ + return self._type + + @property + def usb(self) -> MathMathItemUsb: + """Return the ``MATH:MATH:USB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH:USB?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH:USB?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.supportedfields``: The ``MATH:MATH:USB:SUPPortedfields`` command. + """ + return self._usb + + @property + def vunit(self) -> MathMathItemVunit: + """Return the ``MATH:MATH:VUNIT`` command. + + Description: + - This command specifies or returns the math custom vertical units. The math waveform is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:MATH:VUNIT value`` command. + + SCPI Syntax: + ``` + - MATH:MATH:VUNIT + ``` + + Info: + - ```` is the custom vertical units. + """ + return self._vunit + + +class MathList(SCPICmdRead): + """The ``MATH:LIST`` command. + + Description: + - This query returns a comma separated list of all currently defined math waveforms. + + Usage: + - Using the ``.query()`` method will send the ``MATH:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MATH:LIST? + ``` + """ + + +class MathDelete(SCPICmdWrite): + """The ``MATH:DELete`` command. + + Description: + - This command deletes the specified math. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:DELete value`` command. + + SCPI Syntax: + ``` + - MATH:DELete + ``` + + Info: + - ```` is a quoted string specifying the math waveform to delete. The quoted string + is of the form 'MATH', where is ≥1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MathAddnew(SCPICmdWrite): + """The ``MATH:ADDNew`` command. + + Description: + - This command adds the specified math. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:ADDNew value`` command. + + SCPI Syntax: + ``` + - MATH:ADDNew + ``` + + Info: + - ```` is the quoted string specifying the math waveform to add. The argument is of + the form 'MATH', where is ≥1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class Math(SCPICmdRead): + """The ``MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH?`` query. + - Using the ``.verify(value)`` method will send the ``MATH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.addnew``: The ``MATH:ADDNew`` command. + - ``.delete``: The ``MATH:DELete`` command. + - ``.list``: The ``MATH:LIST`` command. + - ``.math``: The ``MATH:MATH`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "MATH") -> None: + super().__init__(device, cmd_syntax) + self._addnew = MathAddnew(device, f"{self._cmd_syntax}:ADDNew") + self._delete = MathDelete(device, f"{self._cmd_syntax}:DELete") + self._list = MathList(device, f"{self._cmd_syntax}:LIST") + self._math: Dict[int, MathMathItem] = DefaultDictPassKeyToFactory( + lambda x: MathMathItem(device, f"{self._cmd_syntax}:MATH{x}") + ) + + @property + def addnew(self) -> MathAddnew: + """Return the ``MATH:ADDNew`` command. + + Description: + - This command adds the specified math. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:ADDNew value`` command. + + SCPI Syntax: + ``` + - MATH:ADDNew + ``` + + Info: + - ```` is the quoted string specifying the math waveform to add. The argument + is of the form 'MATH', where is ≥1. + """ + return self._addnew + + @property + def delete(self) -> MathDelete: + """Return the ``MATH:DELete`` command. + + Description: + - This command deletes the specified math. + + Usage: + - Using the ``.write(value)`` method will send the ``MATH:DELete value`` command. + + SCPI Syntax: + ``` + - MATH:DELete + ``` + + Info: + - ```` is a quoted string specifying the math waveform to delete. The quoted + string is of the form 'MATH', where is ≥1. + """ + return self._delete + + @property + def list(self) -> MathList: + """Return the ``MATH:LIST`` command. + + Description: + - This query returns a comma separated list of all currently defined math waveforms. + + Usage: + - Using the ``.query()`` method will send the ``MATH:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MATH:LIST? + ``` + """ + return self._list + + @property + def math(self) -> Dict[int, MathMathItem]: + """Return the ``MATH:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``MATH:MATH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.arinc429a``: The ``MATH:MATH:ARINC429A`` command tree. + - ``.audio``: The ``MATH:MATH:AUDIO`` command tree. + - ``.autoethernet``: The ``MATH:MATH:AUTOETHERnet`` command tree. + - ``.avg``: The ``MATH:MATH:AVG`` command tree. + - ``.can``: The ``MATH:MATH:CAN`` command tree. + - ``.cxpi``: The ``MATH:MATH:CXPI`` command tree. + - ``.define``: The ``MATH:MATH:DEFine`` command. + - ``.espi``: The ``MATH:MATH:ESPI`` command tree. + - ``.ethercat``: The ``MATH:MATH:ETHERCAT`` command tree. + - ``.ethernet``: The ``MATH:MATH:ETHERnet`` command tree. + - ``.eusb``: The ``MATH:MATH:EUSB`` command tree. + - ``.filter``: The ``MATH:MATH:FILTer`` command tree. + - ``.flexray``: The ``MATH:MATH:FLEXray`` command tree. + - ``.function``: The ``MATH:MATH:FUNCtion`` command. + - ``.gating``: The ``MATH:MATH:GATing`` command. + - ``.i2c``: The ``MATH:MATH:I2C`` command tree. + - ``.i3c``: The ``MATH:MATH:I3C`` command tree. + - ``.interpolation``: The ``MATH:MATH:INTERpolation`` command. + - ``.label``: The ``MATH:MATH:LABel`` command tree. + - ``.lin``: The ``MATH:MATH:LIN`` command tree. + - ``.mdio``: The ``MATH:MATH:MDIO`` command tree. + - ``.mil1553b``: The ``MATH:MATH:MIL1553B`` command tree. + - ``.onewire``: The ``MATH:MATH:ONEWIRe`` command tree. + - ``.parallel``: The ``MATH:MATH:PARallel`` command tree. + - ``.psifive``: The ``MATH:MATH:PSIFIVe`` command tree. + - ``.rs232c``: The ``MATH:MATH:RS232C`` command tree. + - ``.sdlc``: The ``MATH:MATH:SDLC`` command tree. + - ``.sent``: The ``MATH:MATH:SENT`` command tree. + - ``.signeddata``: The ``MATH:MATH:SIGNeddata`` command. + - ``.smbus``: The ``MATH:MATH:SMBUS`` command tree. + - ``.source1``: The ``MATH:MATH:SOUrce1`` command. + - ``.spacewire``: The ``MATH:MATH:SPACEWIRe`` command tree. + - ``.spectral``: The ``MATH:MATH:SPECTral`` command tree. + - ``.spi``: The ``MATH:MATH:SPI`` command tree. + - ``.spmi``: The ``MATH:MATH:SPMI`` command tree. + - ``.svid``: The ``MATH:MATH:SVID`` command tree. + - ``.type``: The ``MATH:MATH:TYPe`` command. + - ``.usb``: The ``MATH:MATH:USB`` command tree. + - ``.vunit``: The ``MATH:MATH:VUNIT`` command. + """ + return self._math diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/measu.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/measu.py new file mode 100644 index 00000000..a0c1a066 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/measu.py @@ -0,0 +1,1059 @@ +"""The measu commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum? + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN? + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum? + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK? + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation? + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev? + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum? + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN? + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum? + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK? + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation? + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev? + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdReadWithArguments + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class MeasuMeas1SubgroupResultsCurrentacqStddev(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev`` command. + + Description: + - This query returns the standard deviation value of the measurement specified by the + string, for the current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsCurrentacqPopulation(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation`` command. + + Description: + - This query returns the population value of the measurement specified by the string, for + the current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsCurrentacqPk2pk(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK`` command. + + Description: + - This query returns the peak-to-peak value of the measurement specified by the string, for + the current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsCurrentacqMinimum(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum`` command. + + Description: + - This query returns the minimum value of the measurement specified by the string, for the + current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsCurrentacqMean(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN`` command. + + Description: + - This query returns the mean value of the measurement specified by the string, for the + current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN? + ``` + + Info: + - ```` = INPUT \|OUTPUT1 \|OUTPUT2 \|OUTPUT3 \|OUTPUT4 \|OUTPUT5 \|OUTPUT6 + \|OUTPUT7 \|RAIL1DPMOVERSHOOT \|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL \|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS \|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK \|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL \|L2LPH1VRMS + \|L2LPH1VCFactor \|L2LPH1TruePwr \|L2LPH1RePwr \|L2LPH1AppPwr \|L2LPH1PwrFactor + \|L2LPH1PhaseDiff \|L2LPH1VPhase \|L2LPH2VRMS \|L2LPH2VCFactor \|L2LPH2TruePwr + \|L2LPH2RePwr \|L2LPH2AppPwr \|L2LPH2PwrFactor \|L2LPH2PhaseDiff \|L2LPH2VPhase + \|L2LPH3VRMS \|L2LPH3VCFactor \|L2LPH3TruePwr \|L2LPH3RePwr \|L2LPH3AppPwr + \|L2LPH3PwrFactor \|L2LPH3PhaseDiff \|L2LPH3VPhase \|L2NPH1VRMS \|L2NPH1VCFactor + \|L2NPH1TruePwr \|L2NPH1RePwr \|L2NPH1AppPwr \|L2NPH1PwrFactor \|L2NPH1PhaseDiff + \|L2NPH1VPhase \|L2NPH2VRMS \|L2NPH2VCFactor \|L2NPH2TruePwr \|L2NPH2RePwr \|L2NPH2AppPwr + \|L2NPH2PwrFactor \|L2NPH2PhaseDiff \|L2NPH2VPhase \|L2NPH3VRMS \|L2NPH3VCFactor + \|L2NPH3TruePwr \|L2NPH3RePwr \|L2NPH3AppPwr \|L2NPH3PwrFactor \|L2NPH3PhaseDiff + \|L2NPH3VPhase \|PH1IRMS \|PH1IPhase \|PH1ICFactor \|PH2IRMS \|PH2IPhase \|PH2ICFactor + \|PH3IRMS \|PH3IPhase \|PH3ICFactor \|Frequency \|L2LPH1F1Mag \|L2LPH1F3Mag \|L2LPH1THDF + \|L2LPH1THDR \|L2LPH1RMS \|L2LPH1IRMS \|L2LPH1Status \|L2LPH1HarmonicsNumber + \|L2LPH1Frequency \|L2LPH1MagnitudeAbs \|L2LPH1MagnitudePct \|L2LPH1Phase \|L2LPH1Limits + \|L2LPH1PassFail \|L2LPH1Margin \|L2LPH2F1Mag \|L2LPH2F3Mag \|L2LPH2THDF \|L2LPH2THDR + \|L2LPH2RMS \|L2LPH2IRMS \|L2LPH2Status \|L2LPH2HarmonicsNumber \|L2LPH2Frequency + \|L2LPH2MagnitudeAbs \|L2LPH2MagnitudePct \|L2LPH2Phase \|L2LPH2Limits \|L2LPH2PassFail + \|L2LPH2Margin \|L2LPH3F1Mag \|L2LPH3F3Mag \|L2LPH3THDF \|L2LPH3THDR \|L2LPH3RMS + \|L2LPH3IRMS \|L2LPH3Status \|L2LPH3HarmonicsNumber \|L2LPH3Frequency \|L2LPH3MagnitudeAbs + \|L2LPH3MagnitudePct \|L2LPH3Phase \|L2LPH3Limits \|L2LPH3PassFail \|L2LPH3Margin + \|L2NPH1F1Mag \|L2NPH1F3Mag \|L2NPH1THDF \|L2NPH1THDR \|L2NPH1RMS \|L2NPH1IRMS + \|L2NPH1Status \|L2NPH1HarmonicsNumber \|L2NPH1Frequency \|L2NPH1MagnitudeAbs + \|L2NPH1MagnitudePct \|L2NPH1Phase\|L2NPH1Limits \|L2NPH1PassFail\|L2NPH1Margin + \|L2NPH2F1Mag\|L2NPH2F3Mag \|L2NPH2THDF\|L2NPH2THDR \|L2NPH2RMS\|L2NPH2IRMS \|L2NPH2Status + \|L2NPH2HarmonicsNumber \|L2NPH2Frequency \|L2NPH2MagnitudeAbs \|L2NPH2MagnitudePct + \|L2NPH2Phase\|L2NPH2Limits \|L2NPH2PassFail\|L2NPH2Margin \|L2NPH3F1Mag \|L2NPH3F3Mag + \|L2NPH3THDF \|L2NPH3THDR \|L2NPH3RMS \|L2NPH3IRMS \|L2NPH3Status \|L2NPH3HarmonicsNumber + \|L2NPH3Frequency \|L2NPH3MagnitudeAbs \|L2NPH3MagnitudePct \|L2NPH3Phase \|L2NPH3Limits + \|L2NPH3PassFail \|L2NPH3Margin \|ORDER\|PH1INPwr \|PH1OUTPwr \|PH1Efficiency \|PH2INPwr + \|PH2OUTPwr \|PH2Efficiency \|TotalEfficiency \|PH1LRIPRMS \|PH1LRIPPK2PK \|PH2LRIPRMS + \|PH2LRIPPK2PK \|PH3LRIPRMS \|PH3LRIPPK2PK \|PH1SWRIPRMS \|PH1SWRIPPK2PK \|PH2SWRIPRMS + \|PH2SWRIPPK2PK \|PH3SWRIPRMS \|PH3SWRIPPK2PK \|TruePwrSum \|RePwrSum \|AppPwrSum + \|InPwrSum \|OutPwrSum. + """ + + +class MeasuMeas1SubgroupResultsCurrentacqMaximum(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum`` command. + + Description: + - This query returns the maximum value of the measurement specified by the string, for the + current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsCurrentacq(SCPICmdRead): + """The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.maximum``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum`` command. + - ``.mean``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN`` command. + - ``.minimum``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum`` command. + - ``.pk2pk``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK`` command. + - ``.population``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation`` command. + - ``.stddev``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = MeasuMeas1SubgroupResultsCurrentacqMaximum( + device, f"{self._cmd_syntax}:MAXimum" + ) + self._mean = MeasuMeas1SubgroupResultsCurrentacqMean(device, f"{self._cmd_syntax}:MEAN") + self._minimum = MeasuMeas1SubgroupResultsCurrentacqMinimum( + device, f"{self._cmd_syntax}:MINimum" + ) + self._pk2pk = MeasuMeas1SubgroupResultsCurrentacqPk2pk(device, f"{self._cmd_syntax}:PK2PK") + self._population = MeasuMeas1SubgroupResultsCurrentacqPopulation( + device, f"{self._cmd_syntax}:POPUlation" + ) + self._stddev = MeasuMeas1SubgroupResultsCurrentacqStddev( + device, f"{self._cmd_syntax}:STDDev" + ) + + @property + def maximum(self) -> MeasuMeas1SubgroupResultsCurrentacqMaximum: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum`` command. + + Description: + - This query returns the maximum value of the measurement specified by the string, for + the current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._maximum + + @property + def mean(self) -> MeasuMeas1SubgroupResultsCurrentacqMean: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN`` command. + + Description: + - This query returns the mean value of the measurement specified by the string, for the + current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN? + ``` + + Info: + - ```` = INPUT \|OUTPUT1 \|OUTPUT2 \|OUTPUT3 \|OUTPUT4 \|OUTPUT5 \|OUTPUT6 + \|OUTPUT7 \|RAIL1DPMOVERSHOOT \|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL \|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS \|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK \|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL + \|L2LPH1VRMS \|L2LPH1VCFactor \|L2LPH1TruePwr \|L2LPH1RePwr \|L2LPH1AppPwr + \|L2LPH1PwrFactor \|L2LPH1PhaseDiff \|L2LPH1VPhase \|L2LPH2VRMS \|L2LPH2VCFactor + \|L2LPH2TruePwr \|L2LPH2RePwr \|L2LPH2AppPwr \|L2LPH2PwrFactor \|L2LPH2PhaseDiff + \|L2LPH2VPhase \|L2LPH3VRMS \|L2LPH3VCFactor \|L2LPH3TruePwr \|L2LPH3RePwr + \|L2LPH3AppPwr \|L2LPH3PwrFactor \|L2LPH3PhaseDiff \|L2LPH3VPhase \|L2NPH1VRMS + \|L2NPH1VCFactor \|L2NPH1TruePwr \|L2NPH1RePwr \|L2NPH1AppPwr \|L2NPH1PwrFactor + \|L2NPH1PhaseDiff \|L2NPH1VPhase \|L2NPH2VRMS \|L2NPH2VCFactor \|L2NPH2TruePwr + \|L2NPH2RePwr \|L2NPH2AppPwr \|L2NPH2PwrFactor \|L2NPH2PhaseDiff \|L2NPH2VPhase + \|L2NPH3VRMS \|L2NPH3VCFactor \|L2NPH3TruePwr \|L2NPH3RePwr \|L2NPH3AppPwr + \|L2NPH3PwrFactor \|L2NPH3PhaseDiff \|L2NPH3VPhase \|PH1IRMS \|PH1IPhase \|PH1ICFactor + \|PH2IRMS \|PH2IPhase \|PH2ICFactor \|PH3IRMS \|PH3IPhase \|PH3ICFactor \|Frequency + \|L2LPH1F1Mag \|L2LPH1F3Mag \|L2LPH1THDF \|L2LPH1THDR \|L2LPH1RMS \|L2LPH1IRMS + \|L2LPH1Status \|L2LPH1HarmonicsNumber \|L2LPH1Frequency \|L2LPH1MagnitudeAbs + \|L2LPH1MagnitudePct \|L2LPH1Phase \|L2LPH1Limits \|L2LPH1PassFail \|L2LPH1Margin + \|L2LPH2F1Mag \|L2LPH2F3Mag \|L2LPH2THDF \|L2LPH2THDR \|L2LPH2RMS \|L2LPH2IRMS + \|L2LPH2Status \|L2LPH2HarmonicsNumber \|L2LPH2Frequency \|L2LPH2MagnitudeAbs + \|L2LPH2MagnitudePct \|L2LPH2Phase \|L2LPH2Limits \|L2LPH2PassFail \|L2LPH2Margin + \|L2LPH3F1Mag \|L2LPH3F3Mag \|L2LPH3THDF \|L2LPH3THDR \|L2LPH3RMS \|L2LPH3IRMS + \|L2LPH3Status \|L2LPH3HarmonicsNumber \|L2LPH3Frequency \|L2LPH3MagnitudeAbs + \|L2LPH3MagnitudePct \|L2LPH3Phase \|L2LPH3Limits \|L2LPH3PassFail \|L2LPH3Margin + \|L2NPH1F1Mag \|L2NPH1F3Mag \|L2NPH1THDF \|L2NPH1THDR \|L2NPH1RMS \|L2NPH1IRMS + \|L2NPH1Status \|L2NPH1HarmonicsNumber \|L2NPH1Frequency \|L2NPH1MagnitudeAbs + \|L2NPH1MagnitudePct \|L2NPH1Phase\|L2NPH1Limits \|L2NPH1PassFail\|L2NPH1Margin + \|L2NPH2F1Mag\|L2NPH2F3Mag \|L2NPH2THDF\|L2NPH2THDR \|L2NPH2RMS\|L2NPH2IRMS + \|L2NPH2Status \|L2NPH2HarmonicsNumber \|L2NPH2Frequency \|L2NPH2MagnitudeAbs + \|L2NPH2MagnitudePct \|L2NPH2Phase\|L2NPH2Limits \|L2NPH2PassFail\|L2NPH2Margin + \|L2NPH3F1Mag \|L2NPH3F3Mag \|L2NPH3THDF \|L2NPH3THDR \|L2NPH3RMS \|L2NPH3IRMS + \|L2NPH3Status \|L2NPH3HarmonicsNumber \|L2NPH3Frequency \|L2NPH3MagnitudeAbs + \|L2NPH3MagnitudePct \|L2NPH3Phase \|L2NPH3Limits \|L2NPH3PassFail \|L2NPH3Margin + \|ORDER\|PH1INPwr \|PH1OUTPwr \|PH1Efficiency \|PH2INPwr \|PH2OUTPwr \|PH2Efficiency + \|TotalEfficiency \|PH1LRIPRMS \|PH1LRIPPK2PK \|PH2LRIPRMS \|PH2LRIPPK2PK \|PH3LRIPRMS + \|PH3LRIPPK2PK \|PH1SWRIPRMS \|PH1SWRIPPK2PK \|PH2SWRIPRMS \|PH2SWRIPPK2PK + \|PH3SWRIPRMS \|PH3SWRIPPK2PK \|TruePwrSum \|RePwrSum \|AppPwrSum \|InPwrSum + \|OutPwrSum. + """ + return self._mean + + @property + def minimum(self) -> MeasuMeas1SubgroupResultsCurrentacqMinimum: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum`` command. + + Description: + - This query returns the minimum value of the measurement specified by the string, for + the current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._minimum + + @property + def pk2pk(self) -> MeasuMeas1SubgroupResultsCurrentacqPk2pk: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK`` command. + + Description: + - This query returns the peak-to-peak value of the measurement specified by the string, + for the current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._pk2pk + + @property + def population(self) -> MeasuMeas1SubgroupResultsCurrentacqPopulation: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation`` command. + + Description: + - This query returns the population value of the measurement specified by the string, + for the current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._population + + @property + def stddev(self) -> MeasuMeas1SubgroupResultsCurrentacqStddev: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev`` command. + + Description: + - This query returns the standard deviation value of the measurement specified by the + string, for the current acquisition. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._stddev + + +class MeasuMeas1SubgroupResultsAllacqsStddev(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev`` command. + + Description: + - This query returns the standard deviation value of the measurement specified by the + string, for all acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsAllacqsPopulation(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation`` command. + + Description: + - This query returns the population value of the measurement specified by the string, for + all acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsAllacqsPk2pk(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK`` command. + + Description: + - This query returns the peak-to-peak value of the measurement specified by the string, for + all acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsAllacqsMinimum(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum`` command. + + Description: + - This query returns the minimum value of the measurement specified by the string, for all + acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsAllacqsMean(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN`` command. + + Description: + - This query returns the mean value of the measurement specified by the string, for all + acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsAllacqsMaximum(SCPICmdReadWithArguments): + r"""The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum`` command. + + Description: + - This query returns the maximum value of the measurement specified by the string, for all + acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| OUTPUT6\|OUTPUT7\| + RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK \|RAIL1RMS + \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL \|RAIL3FREQUENCY + \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK \|RAIL4RMS + \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL \|RAIL6FREQUENCY + \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT \|RAIL7DPMUNDERSHOOT + \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + + +class MeasuMeas1SubgroupResultsAllacqs(SCPICmdRead): + """The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.maximum``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum`` command. + - ``.mean``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN`` command. + - ``.minimum``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum`` command. + - ``.pk2pk``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK`` command. + - ``.population``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation`` command. + - ``.stddev``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = MeasuMeas1SubgroupResultsAllacqsMaximum( + device, f"{self._cmd_syntax}:MAXimum" + ) + self._mean = MeasuMeas1SubgroupResultsAllacqsMean(device, f"{self._cmd_syntax}:MEAN") + self._minimum = MeasuMeas1SubgroupResultsAllacqsMinimum( + device, f"{self._cmd_syntax}:MINimum" + ) + self._pk2pk = MeasuMeas1SubgroupResultsAllacqsPk2pk(device, f"{self._cmd_syntax}:PK2PK") + self._population = MeasuMeas1SubgroupResultsAllacqsPopulation( + device, f"{self._cmd_syntax}:POPUlation" + ) + self._stddev = MeasuMeas1SubgroupResultsAllacqsStddev(device, f"{self._cmd_syntax}:STDDev") + + @property + def maximum(self) -> MeasuMeas1SubgroupResultsAllacqsMaximum: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum`` command. + + Description: + - This query returns the maximum value of the measurement specified by the string, for + all acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._maximum + + @property + def mean(self) -> MeasuMeas1SubgroupResultsAllacqsMean: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN`` command. + + Description: + - This query returns the mean value of the measurement specified by the string, for all + acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._mean + + @property + def minimum(self) -> MeasuMeas1SubgroupResultsAllacqsMinimum: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum`` command. + + Description: + - This query returns the minimum value of the measurement specified by the string, for + all acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._minimum + + @property + def pk2pk(self) -> MeasuMeas1SubgroupResultsAllacqsPk2pk: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK`` command. + + Description: + - This query returns the peak-to-peak value of the measurement specified by the string, + for all acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._pk2pk + + @property + def population(self) -> MeasuMeas1SubgroupResultsAllacqsPopulation: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation`` command. + + Description: + - This query returns the population value of the measurement specified by the string, + for all acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._population + + @property + def stddev(self) -> MeasuMeas1SubgroupResultsAllacqsStddev: + r"""Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev`` command. + + Description: + - This query returns the standard deviation value of the measurement specified by the + string, for all acquisitions. + + Usage: + - Using the ``.query(argument)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev? + ``` + + Info: + - ```` = INPUT\|OUTPUT1\|OUTPUT2\|OUTPUT3\|OUTPUT4\|OUTPUT5\| + OUTPUT6\|OUTPUT7\| RAIL1DPMOVERSHOOT\|RAIL1DPMUNDERSHOOT \|RAIL1FREQUENCY \|RAIL1PK2PK + \|RAIL1RMS \|RAIL1RMSFULL\|RAIL2FREQUENCY \|RAIL2PK2PK \|RAIL2RMS \|RAIL2RMSFULL + \|RAIL3FREQUENCY \|RAIL3PK2PK \|RAIL3RMS\|RAIL3RMSFULL \|RAIL4FREQUENCY \|RAIL4PK2PK + \|RAIL4RMS \|RAIL4RMSFULL \|RAIL5FREQUENCY \|RAIL5PK2PK\|RAIL5RMS \|RAIL5RMSFULL + \|RAIL6FREQUENCY \|RAIL6PK2PK \|RAIL6RMS \|RAIL6RMSFULL \|RAIL7DPMOVERSHOOT + \|RAIL7DPMUNDERSHOOT \|RAIL7FREQUENCY \|RAIL7PK2PK \|RAIL7RMS \|RAIL7RMSFULL. + """ + return self._stddev + + +class MeasuMeas1SubgroupResults(SCPICmdRead): + """The ``MEASU:MEAS1:SUBGROUP:RESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU:MEAS1:SUBGROUP:RESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``MEASU:MEAS1:SUBGROUP:RESUlts?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.allacqs``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs`` command tree. + - ``.currentacq``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._allacqs = MeasuMeas1SubgroupResultsAllacqs(device, f"{self._cmd_syntax}:ALLAcqs") + self._currentacq = MeasuMeas1SubgroupResultsCurrentacq( + device, f"{self._cmd_syntax}:CURRentacq" + ) + + @property + def allacqs(self) -> MeasuMeas1SubgroupResultsAllacqs: + """Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.maximum``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum`` command. + - ``.mean``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN`` command. + - ``.minimum``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum`` command. + - ``.pk2pk``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK`` command. + - ``.population``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation`` command. + - ``.stddev``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev`` command. + """ + return self._allacqs + + @property + def currentacq(self) -> MeasuMeas1SubgroupResultsCurrentacq: + """Return the ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.maximum``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum`` command. + - ``.mean``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN`` command. + - ``.minimum``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum`` command. + - ``.pk2pk``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK`` command. + - ``.population``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation`` command. + - ``.stddev``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev`` command. + """ + return self._currentacq + + +class MeasuMeas1Subgroup(SCPICmdRead): + """The ``MEASU:MEAS1:SUBGROUP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU:MEAS1:SUBGROUP?`` query. + - Using the ``.verify(value)`` method will send the ``MEASU:MEAS1:SUBGROUP?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.results``: The ``MEASU:MEAS1:SUBGROUP:RESUlts`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._results = MeasuMeas1SubgroupResults(device, f"{self._cmd_syntax}:RESUlts") + + @property + def results(self) -> MeasuMeas1SubgroupResults: + """Return the ``MEASU:MEAS1:SUBGROUP:RESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU:MEAS1:SUBGROUP:RESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``MEASU:MEAS1:SUBGROUP:RESUlts?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.allacqs``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs`` command tree. + - ``.currentacq``: The ``MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq`` command tree. + """ + return self._results + + +class MeasuMeas1(SCPICmdRead): + """The ``MEASU:MEAS1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU:MEAS1?`` query. + - Using the ``.verify(value)`` method will send the ``MEASU:MEAS1?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.subgroup``: The ``MEASU:MEAS1:SUBGROUP`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._subgroup = MeasuMeas1Subgroup(device, f"{self._cmd_syntax}:SUBGROUP") + + @property + def subgroup(self) -> MeasuMeas1Subgroup: + """Return the ``MEASU:MEAS1:SUBGROUP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU:MEAS1:SUBGROUP?`` query. + - Using the ``.verify(value)`` method will send the ``MEASU:MEAS1:SUBGROUP?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.results``: The ``MEASU:MEAS1:SUBGROUP:RESUlts`` command tree. + """ + return self._subgroup + + +class Measu(SCPICmdRead): + """The ``MEASU`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU?`` query. + - Using the ``.verify(value)`` method will send the ``MEASU?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.meas1``: The ``MEASU:MEAS1`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "MEASU") -> None: + super().__init__(device, cmd_syntax) + self._meas1 = MeasuMeas1(device, f"{self._cmd_syntax}:MEAS1") + + @property + def meas1(self) -> MeasuMeas1: + """Return the ``MEASU:MEAS1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU:MEAS1?`` query. + - Using the ``.verify(value)`` method will send the ``MEASU:MEAS1?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.subgroup``: The ``MEASU:MEAS1:SUBGROUP`` command tree. + """ + return self._meas1 diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/measurement.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/measurement.py new file mode 100644 index 00000000..d22d295b --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/measurement.py @@ -0,0 +1,27881 @@ +# pylint: disable=line-too-long +"""The measurement commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - MEASUrement:ADDMEAS {ACCOMMONMODE|ACRMS|AMPlITUDE|AREA|BASE|BITAMPLITUDE|BITHIGH|BITLOW|BURSTWIDTH|COMMONMODE|CCJITTER|DATARATE|DCD|DDJ|DDRAOS|DDRAOSPERTCK|DDRAOSPERUI|DDRAUS|DDRAUSPERTCK|DDRAUSPERUI|DDRHOLDDIFF|DDRSETUPDIFF|DDRTCHABS|DDRTCHAVERAGE|DDRTCKAVERAGE|DDRTCLABS|DDRTCLAVERAGE|DDRTERRMN|DDRTERRN|DDRTJITCC|DDRTJITDUTY|DDRTJITPER|DDRTPST|DDRTRPRE|DDRTWPRE|DDRVIXAC|DDRTDQSCK|DELAY|DJ|DJDIRAC|EYEHIGH|EYELOW|FALLSLEWRATE|FALLTIME|FREQUENCY|F2|F4|F8|HEIGHT|HEIGHTBER|HIGH|HIGHTIME|HOLD|IMDAPOWERQUALITY|IMDAHARMONICS|IMDAINPUTVOLTAGE|IMDAINPUTCURRENT|IMDAINPUTPOWER|IMDAPHASORDIAGRAM|IMDAEFFICIENCY|IMDALINERIPPLE|IMDASWITCHRIPPLE|IMDADQ0|JITTERSUMMARY|J2|J9|LOW|LOWTIME|MAXIMUM|MEAN|MINIMUM|NDUty|NOVERSHOOT|NPERIOD|NPJ|NWIDTTH|PDUTY|PERIOD|PHASE|PHASENOISE|PJ|PK2Pk|POVERSHOOT|PWIDTH|QFACTOR|RISESLEWRATE|RISETIME|RJ|RJDIRAC|RMS|SETUP|SKEW|SRJ|SSCFREQDEV|SSCMODRATE|TIE|TIMEOUTSIDELEVEL|TIMETOMAX|TIMETOMIN|TJBER|TNTRATIO|TOP|UNITINTERVAL|VDIFFXOVR|WIDTH|WIDTHBER} + - MEASUrement:ADDNew 'QString' + - MEASUrement:ANNOTate {OFF|AUTO} + - MEASUrement:ANNOTate? + - MEASUrement:AUTOset {EXECute|THREEPHASEAUTOset|WBGPREset|DPMAutoset|DPMPReset} + - MEASUrement:CH:REFLevels:ABSolute:FALLHigh + - MEASUrement:CH:REFLevels:ABSolute:FALLHigh? + - MEASUrement:CH:REFLevels:ABSolute:FALLLow + - MEASUrement:CH:REFLevels:ABSolute:FALLLow? + - MEASUrement:CH:REFLevels:ABSolute:FALLMid + - MEASUrement:CH:REFLevels:ABSolute:FALLMid? + - MEASUrement:CH:REFLevels:ABSolute:HYSTeresis + - MEASUrement:CH:REFLevels:ABSolute:HYSTeresis? + - MEASUrement:CH:REFLevels:ABSolute:RISEHigh + - MEASUrement:CH:REFLevels:ABSolute:RISEHigh? + - MEASUrement:CH:REFLevels:ABSolute:RISELow + - MEASUrement:CH:REFLevels:ABSolute:RISELow? + - MEASUrement:CH:REFLevels:ABSolute:RISEMid + - MEASUrement:CH:REFLevels:ABSolute:RISEMid? + - MEASUrement:CH:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:CH:REFLevels:ABSolute:TYPE? + - MEASUrement:CH:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:CH:REFLevels:BASETop? + - MEASUrement:CH:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:CH:REFLevels:METHod? + - MEASUrement:CH:REFLevels:PERCent:FALLHigh + - MEASUrement:CH:REFLevels:PERCent:FALLHigh? + - MEASUrement:CH:REFLevels:PERCent:FALLLow + - MEASUrement:CH:REFLevels:PERCent:FALLLow? + - MEASUrement:CH:REFLevels:PERCent:FALLMid + - MEASUrement:CH:REFLevels:PERCent:FALLMid? + - MEASUrement:CH:REFLevels:PERCent:HYSTeresis + - MEASUrement:CH:REFLevels:PERCent:HYSTeresis? + - MEASUrement:CH:REFLevels:PERCent:RISEHigh + - MEASUrement:CH:REFLevels:PERCent:RISEHigh? + - MEASUrement:CH:REFLevels:PERCent:RISELow + - MEASUrement:CH:REFLevels:PERCent:RISELow? + - MEASUrement:CH:REFLevels:PERCent:RISEMid + - MEASUrement:CH:REFLevels:PERCent:RISEMid? + - MEASUrement:CH:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:CH:REFLevels:PERCent:TYPE? + - MEASUrement:CLOCKRecovery:ADVanced:METHod {NONE|NOMinal|PATTern} + - MEASUrement:CLOCKRecovery:ADVanced:METHod? + - MEASUrement:CLOCKRecovery:CLOCKFrequency + - MEASUrement:CLOCKRecovery:CLOCKFrequency? + - MEASUrement:CLOCKRecovery:CLOCKMultiplier + - MEASUrement:CLOCKRecovery:CLOCKMultiplier? + - MEASUrement:CLOCKRecovery:CONSTCLOCKMODe {MEAN|MEDian|FIXed} + - MEASUrement:CLOCKRecovery:CONSTCLOCKMODe? + - MEASUrement:CLOCKRecovery:DAMPing + - MEASUrement:CLOCKRecovery:DAMPing? + - MEASUrement:CLOCKRecovery:DATAPath + - MEASUrement:CLOCKRecovery:DATAPath? + - MEASUrement:CLOCKRecovery:DATARate + - MEASUrement:CLOCKRecovery:DATARate? + - MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe {EDGE|PLL} + - MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe? + - MEASUrement:CLOCKRecovery:JTFBandwidth + - MEASUrement:CLOCKRecovery:JTFBandwidth? + - MEASUrement:CLOCKRecovery:LOOPBandwidth + - MEASUrement:CLOCKRecovery:LOOPBandwidth? + - MEASUrement:CLOCKRecovery:MEANAUTOCalculate {FIRST|EVERY} + - MEASUrement:CLOCKRecovery:MEANAUTOCalculate? + - MEASUrement:CLOCKRecovery:METHod {PLL|CONSTANTCLOCK|EXPLICITCLOCK} + - MEASUrement:CLOCKRecovery:METHod? + - MEASUrement:CLOCKRecovery:MODel {TYPE} + - MEASUrement:CLOCKRecovery:MODel? + - MEASUrement:CLOCKRecovery:NOMINALOFFset + - MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype {AUTO|MANUAL} + - MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype? + - MEASUrement:CLOCKRecovery:NOMINALOFFset? + - MEASUrement:CLOCKRecovery:STAndard {CUSTom|ENET100|FW1394BS400B|FW1394BS800B|FW1394BS1600B|FBD1|FBD2|FBD3|FC133|FC266|FC531|FC1063|FC2125|FC4250|FC8500|ENET1000|IBA2500|IBA_GEN2|OC1|OC3|OC12|OC48|PCIE_GEN1|PCIE_GEN2|PCIE_GEN3|RIO125|RIO250|RIO3125|SAS15_NOSSC|SAS3_NOSSC|SAS6_NOSSC|SAS12_NOSSC|SAS15_SSC|SAS3_SSC|SAS6_SSC|SAS12_SSC|SATA_GEN1|SATA_GEN2|SATA_GEN3|USB3|XAUI|XAUI_GEN2} + - MEASUrement:CLOCKRecovery:STAndard? + - MEASUrement:DELETEALL + - MEASUrement:DELete + - MEASUrement:DIRacmodel {PCIExpress|FIBREchannel} + - MEASUrement:DIRacmodel? + - MEASUrement:DISPLAYUnits {SEConds|UNITINtervals} + - MEASUrement:DISPLAYUnits? + - MEASUrement:EDGE {RISE|FALL|BOTH} + - MEASUrement:EYERENDER {ON|OFF|} + - MEASUrement:EYERENDER? + - MEASUrement:FILTers:BLANKingtime + - MEASUrement:FILTers:BLANKingtime? + - MEASUrement:FILTers:HIGHPass:FREQ + - MEASUrement:FILTers:HIGHPass:FREQ? + - MEASUrement:FILTers:HIGHPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:FILTers:HIGHPass:SPEC? + - MEASUrement:FILTers:LOWPass:FREQ + - MEASUrement:FILTers:LOWPass:FREQ? + - MEASUrement:FILTers:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:FILTers:LOWPass:SPEC? + - MEASUrement:FILTers:RAMPtime + - MEASUrement:FILTers:RAMPtime? + - MEASUrement:GATing {NONE|SCREEN|CURSor|LOGic|SEARch|TIMe} + - MEASUrement:GATing:ACTive {HIGH|LOW} + - MEASUrement:GATing:ACTive? + - MEASUrement:GATing:ENDtime + - MEASUrement:GATing:ENDtime? + - MEASUrement:GATing:HYSTeresis + - MEASUrement:GATing:HYSTeresis? + - MEASUrement:GATing:LOGICSource {S_Ch|CH|MATH|REF} + - MEASUrement:GATing:LOGICSource? + - MEASUrement:GATing:MIDRef + - MEASUrement:GATing:MIDRef? + - MEASUrement:GATing:SEARCHSource SEARCH1 + - MEASUrement:GATing:SEARCHSource? + - MEASUrement:GATing:STARTtime + - MEASUrement:GATing:STARTtime? + - MEASUrement:GATing? + - MEASUrement:HIGHLEVel:CONFIGuration {INPUT|OUTPUT} + - MEASUrement:HIGHLEVel:CONFIGuration? + - MEASUrement:HIGHLEVel:EDGEQUALifier {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:EDGEQUALifier? + - MEASUrement:HIGHLEVel:INLOWPass:FREQ + - MEASUrement:HIGHLEVel:INLOWPass:FREQ? + - MEASUrement:HIGHLEVel:INLOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:HIGHLEVel:INLOWPass:SPEC? + - MEASUrement:HIGHLEVel:L2LTOL2N {0|1} + - MEASUrement:HIGHLEVel:L2LTOL2N? + - MEASUrement:HIGHLEVel:LINESelected {ABCB|ACBC|BACA|AN|BN|CN} + - MEASUrement:HIGHLEVel:LINESelected? + - MEASUrement:HIGHLEVel:OUTEDGEQUALifier {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:OUTEDGEQUALifier? + - MEASUrement:HIGHLEVel:OUTL2LTOL2N {0|1} + - MEASUrement:HIGHLEVel:OUTL2LTOL2N? + - MEASUrement:HIGHLEVel:OUTLINESelected {XYZY|XZYZ|YXZX|XN|YN|ZN} + - MEASUrement:HIGHLEVel:OUTLINESelected? + - MEASUrement:HIGHLEVel:OUTLOWPass:FREQ + - MEASUrement:HIGHLEVel:OUTLOWPass:FREQ? + - MEASUrement:HIGHLEVel:OUTLOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:HIGHLEVel:OUTLOWPass:SPEC? + - MEASUrement:HIGHLEVel:OUTSOURCE {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:OUTSOURCE? + - MEASUrement:HIGHLEVel:OUTWIRing {P1W2V1I1|P1W3V2I2|P3W3V2I2|P3W3V3I3|P3W4|DCP1W2} + - MEASUrement:HIGHLEVel:OUTWIRing? + - MEASUrement:HIGHLEVel:SOURCE {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:SOURCE? + - MEASUrement:HIGHLEVel:WIRing {P1W2V1I1|P1W3V2I2|P3W3V2I2|P3W3V3I3|P3W3|DCP1W2} + - MEASUrement:HIGHLEVel:WIRing? + - MEASUrement:INTERp {AUTO|SINX|LINear} + - MEASUrement:INTERp? + - MEASUrement:JITTermodel {SPECTRAL|SPECTRALBUJ} + - MEASUrement:JITTermodel? + - MEASUrement:LIST? + - MEASUrement:LOCKRJ {ON|OFF|} + - MEASUrement:LOCKRJ? + - MEASUrement:LOCKRJValue + - MEASUrement:LOCKRJValue? + - MEASUrement:MATH:REFLevels:ABSolute:FALLHigh + - MEASUrement:MATH:REFLevels:ABSolute:FALLHigh? + - MEASUrement:MATH:REFLevels:ABSolute:FALLLow + - MEASUrement:MATH:REFLevels:ABSolute:FALLLow? + - MEASUrement:MATH:REFLevels:ABSolute:FALLMid + - MEASUrement:MATH:REFLevels:ABSolute:FALLMid? + - MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis + - MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis? + - MEASUrement:MATH:REFLevels:ABSolute:RISEHigh + - MEASUrement:MATH:REFLevels:ABSolute:RISEHigh? + - MEASUrement:MATH:REFLevels:ABSolute:RISELow + - MEASUrement:MATH:REFLevels:ABSolute:RISELow? + - MEASUrement:MATH:REFLevels:ABSolute:RISEMid + - MEASUrement:MATH:REFLevels:ABSolute:RISEMid? + - MEASUrement:MATH:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:MATH:REFLevels:ABSolute:TYPE? + - MEASUrement:MATH:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:MATH:REFLevels:BASETop? + - MEASUrement:MATH:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:MATH:REFLevels:METHod? + - MEASUrement:MATH:REFLevels:PERCent:FALLHigh + - MEASUrement:MATH:REFLevels:PERCent:FALLHigh? + - MEASUrement:MATH:REFLevels:PERCent:FALLLow + - MEASUrement:MATH:REFLevels:PERCent:FALLLow? + - MEASUrement:MATH:REFLevels:PERCent:FALLMid + - MEASUrement:MATH:REFLevels:PERCent:FALLMid? + - MEASUrement:MATH:REFLevels:PERCent:HYSTeresis + - MEASUrement:MATH:REFLevels:PERCent:HYSTeresis? + - MEASUrement:MATH:REFLevels:PERCent:RISEHigh + - MEASUrement:MATH:REFLevels:PERCent:RISEHigh? + - MEASUrement:MATH:REFLevels:PERCent:RISELow + - MEASUrement:MATH:REFLevels:PERCent:RISELow? + - MEASUrement:MATH:REFLevels:PERCent:RISEMid + - MEASUrement:MATH:REFLevels:PERCent:RISEMid? + - MEASUrement:MATH:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:MATH:REFLevels:PERCent:TYPE? + - MEASUrement:MEAS:BER + - MEASUrement:MEAS:BER:TARGETBER + - MEASUrement:MEAS:BER:TARGETBER? + - MEASUrement:MEAS:BER? + - MEASUrement:MEAS:BIN + - MEASUrement:MEAS:BIN? + - MEASUrement:MEAS:BITCfgmode {MEAN|MODE} + - MEASUrement:MEAS:BITCfgmode? + - MEASUrement:MEAS:BITEnd + - MEASUrement:MEAS:BITEnd? + - MEASUrement:MEAS:BITPcnt + - MEASUrement:MEAS:BITPcnt? + - MEASUrement:MEAS:BITSTart + - MEASUrement:MEAS:BITSTart? + - MEASUrement:MEAS:BITType {ALLBits|TRANSition|NONTRANsition} + - MEASUrement:MEAS:BITType? + - MEASUrement:MEAS:BURSTEDGTYPe {RISE|FALL} + - MEASUrement:MEAS:BURSTEDGTYPe? + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum? + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN? + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum? + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK? + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation? + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev? + - MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum? + - MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN? + - MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum? + - MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK? + - MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation? + - MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev? + - MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod {NONE|NOMinal|PATTern} + - MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod? + - MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency + - MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency? + - MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier + - MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier? + - MEASUrement:MEAS:CLOCKRecovery:CONSTCLOCKMODe {MEAN|MEDian|FIXed} + - MEASUrement:MEAS:CLOCKRecovery:DAMPing + - MEASUrement:MEAS:CLOCKRecovery:DAMPing? + - MEASUrement:MEAS:CLOCKRecovery:DATAPath + - MEASUrement:MEAS:CLOCKRecovery:DATAPath? + - MEASUrement:MEAS:CLOCKRecovery:DATARate + - MEASUrement:MEAS:CLOCKRecovery:DATARate? + - MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe {EDGE|PLL} + - MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe? + - MEASUrement:MEAS:CLOCKRecovery:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:CLOCKRecovery:GLOBal? + - MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth + - MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth? + - MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth + - MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth? + - MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate {FIRST|EVERY} + - MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate? + - MEASUrement:MEAS:CLOCKRecovery:METHod {PLL|CONSTANTCLOCK|EXPLICITCLOCK} + - MEASUrement:MEAS:CLOCKRecovery:METHod? + - MEASUrement:MEAS:CLOCKRecovery:MODel {TYPE} + - MEASUrement:MEAS:CLOCKRecovery:MODel? + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype {AUTO|MANUAL} + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype? + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset? + - MEASUrement:MEAS:CLOCKRecovery:STAndard {CUSTom|ENET100|FW1394BS400B|FW1394BS800B|FW1394BS1600B|FBD1|FBD2|FBD3|FC133|FC266|FC531|FC1063|FC2125|FC4250|FC8500|ENET1000|IBA2500|IBA_GEN2|OC1|OC3|OC12|OC48|PCIE_GEN1|PCIE_GEN2|PCIE_GEN3|RIO125|RIO250|RIO3125|SAS15_NOSSC|SAS3_NOSSC|SAS6_NOSSC|SAS12_NOSSC|SAS15_SSC|SAS3_SSC|SAS6_SSC|SAS12_SSC|SATA_GEN1|SATA_GEN2|SATA_GEN3|USB3|XAUI|XAUI_GEN2} + - MEASUrement:MEAS:COMMONMode:FILTers:STATE {OFF|ON|0|1} + - MEASUrement:MEAS:COMMONMode:FILTers:STATE? + - MEASUrement:MEAS:COMMONMode:SOURCEs {SINGLE|DOUBLE} + - MEASUrement:MEAS:COMMONMode:SOURCEs? + - MEASUrement:MEAS:COVer {FFREQuency|AFREQuencies} + - MEASUrement:MEAS:COVer? + - MEASUrement:MEAS:CUSTOMLIMITSFile + - MEASUrement:MEAS:CUSTOMLIMITSFile? + - MEASUrement:MEAS:CYCLemode {RECORD|CYCLE} + - MEASUrement:MEAS:CYCLemode? + - MEASUrement:MEAS:DELay:EDGE {FALL|RISe|BOTH|SAMEas|OPPositeas} + - MEASUrement:MEAS:DELay:EDGE? + - MEASUrement:MEAS:DISPlaystat:ENABle {ON|OFF|} + - MEASUrement:MEAS:DISPlaystat:ENABle? + - MEASUrement:MEAS:EDGE {RISE|FALL|BOTH} + - MEASUrement:MEAS:EDGEIncre + - MEASUrement:MEAS:EDGEIncre? + - MEASUrement:MEAS:EDGEQUALONE + - MEASUrement:MEAS:EDGEQUALONE? + - MEASUrement:MEAS:EDGEQUALTWO + - MEASUrement:MEAS:EDGEQUALTWO? + - MEASUrement:MEAS:EDGEQUALifier {CH|MATH|REF} + - MEASUrement:MEAS:EDGEQUALifier? + - MEASUrement:MEAS:EDGES:FROMLevel {MID|LOW|HIGH} + - MEASUrement:MEAS:EDGES:FROMLevel? + - MEASUrement:MEAS:EDGES:LEVel {HIGH|LOW|BOTH} + - MEASUrement:MEAS:EDGES:LEVel? + - MEASUrement:MEAS:EDGES:LOWERFREQuency + - MEASUrement:MEAS:EDGES:LOWERFREQuency? + - MEASUrement:MEAS:EDGES:N + - MEASUrement:MEAS:EDGES:N? + - MEASUrement:MEAS:EDGES:SLEWRATEMethod {NOMinal|DDR} + - MEASUrement:MEAS:EDGES:SLEWRATEMethod? + - MEASUrement:MEAS:EDGES:TOLevel {HIGH|MID|LOW} + - MEASUrement:MEAS:EDGES:TOLevel? + - MEASUrement:MEAS:EDGES:UPPERFREQuency + - MEASUrement:MEAS:EDGES:UPPERFREQuency? + - MEASUrement:MEAS:EEQUal {ON|OFF} + - MEASUrement:MEAS:EEQUal? + - MEASUrement:MEAS:FAILCount? + - MEASUrement:MEAS:FILTERRANGEFROM + - MEASUrement:MEAS:FILTERRANGEFROM? + - MEASUrement:MEAS:FILTERRANGETO + - MEASUrement:MEAS:FILTERRANGETO? + - MEASUrement:MEAS:FILTers:BLANKingtime + - MEASUrement:MEAS:FILTers:BLANKingtime? + - MEASUrement:MEAS:FILTers:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:FILTers:GLOBal? + - MEASUrement:MEAS:FILTers:HIGHPass:FREQ + - MEASUrement:MEAS:FILTers:HIGHPass:FREQ? + - MEASUrement:MEAS:FILTers:HIGHPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:FILTers:HIGHPass:SPEC? + - MEASUrement:MEAS:FILTers:LOWPass:FREQ + - MEASUrement:MEAS:FILTers:LOWPass:FREQ? + - MEASUrement:MEAS:FILTers:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:FILTers:LOWPass:SPEC? + - MEASUrement:MEAS:FILTers:RAMPtime + - MEASUrement:MEAS:FILTers:RAMPtime? + - MEASUrement:MEAS:FREQ + - MEASUrement:MEAS:FREQ? + - MEASUrement:MEAS:FROMEDGESEARCHDIRect {FORWard|BACKWard} + - MEASUrement:MEAS:FROMEDGESEARCHDIRect? + - MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce? + - MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce? + - MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce? + - MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce? + - MEASUrement:MEAS:FROMSymbol:MEASUREAT {Start|Stop|ClockEdge} + - MEASUrement:MEAS:FROMSymbol:MEASUREAT? + - MEASUrement:MEAS:FROMedge {RISe|FALL|BOTH} + - MEASUrement:MEAS:FROMedge? + - MEASUrement:MEAS:FUNDCURRent + - MEASUrement:MEAS:FUNDCURRent? + - MEASUrement:MEAS:GATing {NONE|SCREEN|CURSor|LOGic|SEARch|TIMe} + - MEASUrement:MEAS:GATing:ACTive {HIGH|LOW} + - MEASUrement:MEAS:GATing:ACTive? + - MEASUrement:MEAS:GATing:ENDtime + - MEASUrement:MEAS:GATing:ENDtime? + - MEASUrement:MEAS:GATing:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:GATing:GLOBal? + - MEASUrement:MEAS:GATing:HYSTeresis + - MEASUrement:MEAS:GATing:HYSTeresis? + - MEASUrement:MEAS:GATing:LOGICSource {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:GATing:MIDRef + - MEASUrement:MEAS:GATing:MIDRef? + - MEASUrement:MEAS:GATing:SEARCHSource SEARCH1 + - MEASUrement:MEAS:GATing:STARTtime + - MEASUrement:MEAS:GATing:STARTtime? + - MEASUrement:MEAS:GATing? + - MEASUrement:MEAS:GLOBalref {OFF|ON|0|1} + - MEASUrement:MEAS:GLOBalref? + - MEASUrement:MEAS:HARMONICSCLass {CLASSA|CLASSB|CLASSC|CLASSD} + - MEASUrement:MEAS:HARMONICSCLass? + - MEASUrement:MEAS:HARMONICSSOURce {CURRENT|VOLTAGE} + - MEASUrement:MEAS:HARMONICSSOURce? + - MEASUrement:MEAS:HARMONICSStd {NONE|IEC|IEEE519|CUSTOM} + - MEASUrement:MEAS:HARMONICSStd? + - MEASUrement:MEAS:HARMONICSUNits {LOGARITHM|LINEAR} + - MEASUrement:MEAS:HARMONICSUNits? + - MEASUrement:MEAS:HIGHLEVel:CONFIGuration {INPUT|OUTPUT} + - MEASUrement:MEAS:HIGHLEVel:CONFIGuration? + - MEASUrement:MEAS:HIGHLEVel:L2LTOL2N {0|1} + - MEASUrement:MEAS:HIGHLEVel:L2LTOL2N? + - MEASUrement:MEAS:HIGHLEVel:LINESelected {ABCB|ACBC|BACA|AN|BN|CN} + - MEASUrement:MEAS:HIGHLEVel:LINESelected? + - MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N {0|1} + - MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N? + - MEASUrement:MEAS:HIGHLEVel:OUTLINESelected {XYZY|XZYZ|YXZX|XN|YN|ZN} + - MEASUrement:MEAS:HIGHLEVel:OUTLINESelected? + - MEASUrement:MEAS:HIGHLEVel:OUTWIRing {P1W2V1I1|P1W3V2I2|P3W3V3I3|P3W4|DCP1W2} + - MEASUrement:MEAS:HIGHLEVel:OUTWIRing? + - MEASUrement:MEAS:HIGHLEVel:USEGLOBAL {1|0|ON|OFF} + - MEASUrement:MEAS:HIGHLEVel:USEGLOBAL? + - MEASUrement:MEAS:HIGHLEVel:WIRing {P1W2V1I1|P1W3V2I2|P3W3V2I2|P3W3V3I3|P3W3|DCP1W2} + - MEASUrement:MEAS:HIGHLEVel:WIRing? + - MEASUrement:MEAS:HIGHREFVoltage + - MEASUrement:MEAS:HIGHREFVoltage? + - MEASUrement:MEAS:HLEVel:OUTPut:UGLobal {ON|OFF} + - MEASUrement:MEAS:HLEVel:OUTPut:UGLobal? + - MEASUrement:MEAS:HTORque + - MEASUrement:MEAS:HTORque? + - MEASUrement:MEAS:HVOLtage + - MEASUrement:MEAS:HVOLtage? + - MEASUrement:MEAS:IDLETime + - MEASUrement:MEAS:IDLETime? + - MEASUrement:MEAS:INPUTLEVel + - MEASUrement:MEAS:INPUTLEVel? + - MEASUrement:MEAS:INPUTPOwer + - MEASUrement:MEAS:INPUTPOwer? + - MEASUrement:MEAS:JITTERSummary:DCD {0|1} + - MEASUrement:MEAS:JITTERSummary:DCD? + - MEASUrement:MEAS:JITTERSummary:DDJ {0|1} + - MEASUrement:MEAS:JITTERSummary:DDJ? + - MEASUrement:MEAS:JITTERSummary:DJDD {0|1} + - MEASUrement:MEAS:JITTERSummary:DJDD? + - MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER {0|1} + - MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER? + - MEASUrement:MEAS:JITTERSummary:NPJ {0|1} + - MEASUrement:MEAS:JITTERSummary:NPJ? + - MEASUrement:MEAS:JITTERSummary:PJ {0|1} + - MEASUrement:MEAS:JITTERSummary:PJ? + - MEASUrement:MEAS:JITTERSummary:RJDD {0|1} + - MEASUrement:MEAS:JITTERSummary:RJDD? + - MEASUrement:MEAS:JITTERSummary:TIE {0|1} + - MEASUrement:MEAS:JITTERSummary:TIE? + - MEASUrement:MEAS:JITTERSummary:TJBER {0|1} + - MEASUrement:MEAS:JITTERSummary:TJBER? + - MEASUrement:MEAS:LABel + - MEASUrement:MEAS:LINESelected {ABCB|ACBC|BACA|XYZY|XZYZ|YXZX} + - MEASUrement:MEAS:LINESelected? + - MEASUrement:MEAS:LOWREFVoltage + - MEASUrement:MEAS:LOWREFVoltage? + - MEASUrement:MEAS:LTORque + - MEASUrement:MEAS:LTORque? + - MEASUrement:MEAS:LTYPe {AUTO|CUSTom} + - MEASUrement:MEAS:LTYPe? + - MEASUrement:MEAS:LUNITs {PERCent|ABSolute} + - MEASUrement:MEAS:LUNITs? + - MEASUrement:MEAS:LVOLtage + - MEASUrement:MEAS:LVOLtage? + - MEASUrement:MEAS:MAXCUrrent + - MEASUrement:MEAS:MAXCUrrent? + - MEASUrement:MEAS:MAXCycle + - MEASUrement:MEAS:MAXCycle? + - MEASUrement:MEAS:MAXGVoltage + - MEASUrement:MEAS:MAXGVoltage? + - MEASUrement:MEAS:MAXVoltage + - MEASUrement:MEAS:MAXVoltage? + - MEASUrement:MEAS:MEASRange:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:MEASRange:GLOBal? + - MEASUrement:MEAS:MEASRange:MAX + - MEASUrement:MEAS:MEASRange:MAX? + - MEASUrement:MEAS:MEASRange:MIN + - MEASUrement:MEAS:MEASRange:MIN? + - MEASUrement:MEAS:MEASRange:STATE {OFF|ON|0|1} + - MEASUrement:MEAS:MEASRange:STATE? + - MEASUrement:MEAS:MECH:EINDexz {ON|OFF|1|0} + - MEASUrement:MEAS:MECH:EINDexz? + - MEASUrement:MEAS:MECH:GRATio + - MEASUrement:MEAS:MECH:GRATio? + - MEASUrement:MEAS:MECH:MUNits {NM|OZINCH|FTLB|INCHLB|DEGREES|RADIANS} + - MEASUrement:MEAS:MECH:MUNits? + - MEASUrement:MEAS:MECH:PPAirs + - MEASUrement:MEAS:MECH:PPAirs? + - MEASUrement:MEAS:MECH:PPRotation + - MEASUrement:MEAS:MECH:PPRotation? + - MEASUrement:MEAS:MECH:STYPe {HSENSOR|QEI} + - MEASUrement:MEAS:MECH:STYPe? + - MEASUrement:MEAS:MINCycle + - MEASUrement:MEAS:MINCycle? + - MEASUrement:MEAS:ODDEVen {ALL|EVEN|ODD} + - MEASUrement:MEAS:ODDEVen? + - MEASUrement:MEAS:OFILters:LOWPass:FREQ + - MEASUrement:MEAS:OFILters:LOWPass:FREQ? + - MEASUrement:MEAS:OFILters:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:OFILters:LOWPass:SPEC? + - MEASUrement:MEAS:OSANgle + - MEASUrement:MEAS:OSANgle? + - MEASUrement:MEAS:OUTEDGEQUALifier {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:OUTEDGEQUALifier? + - MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ + - MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ? + - MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC? + - MEASUrement:MEAS:OUTPUTVOLTage + - MEASUrement:MEAS:OUTPUTVOLTage? + - MEASUrement:MEAS:PASSFAILENabled + - MEASUrement:MEAS:PASSFAILENabled? + - MEASUrement:MEAS:PASSFAILHIGHlimit + - MEASUrement:MEAS:PASSFAILHIGHlimit? + - MEASUrement:MEAS:PASSFAILLIMit + - MEASUrement:MEAS:PASSFAILLIMit? + - MEASUrement:MEAS:PASSFAILLOWlimit + - MEASUrement:MEAS:PASSFAILLOWlimit? + - MEASUrement:MEAS:PASSFAILMARgin + - MEASUrement:MEAS:PASSFAILMARgin? + - MEASUrement:MEAS:PASSFAILWHEN {LESSthan|GREATERthan|Equals|NOTEQuals|INSIDErange|OUTSIDErange} + - MEASUrement:MEAS:PASSFAILWHEN? + - MEASUrement:MEAS:PATTERNDETECTION {AUTO|MANUAL} + - MEASUrement:MEAS:PATTERNDETECTION? + - MEASUrement:MEAS:PATTERNLENgth + - MEASUrement:MEAS:PATTERNLENgth? + - MEASUrement:MEAS:PATTERNTYPe {REPeating|ARBitrary} + - MEASUrement:MEAS:PATTERNTYPe? + - MEASUrement:MEAS:PCOUNt + - MEASUrement:MEAS:PCOUNt? + - MEASUrement:MEAS:PERFREQ:EDGE {FIRST|RISE|FALL} + - MEASUrement:MEAS:POLarity {NORMal|INVerted} + - MEASUrement:MEAS:POLarity? + - MEASUrement:MEAS:POPUlation:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:POPUlation:GLOBal? + - MEASUrement:MEAS:POPUlation:LIMIT:STATE {OFF|ON|0|1} + - MEASUrement:MEAS:POPUlation:LIMIT:STATE? + - MEASUrement:MEAS:POPUlation:LIMIT:VALue + - MEASUrement:MEAS:POPUlation:LIMIT:VALue? + - MEASUrement:MEAS:POWERFACtor + - MEASUrement:MEAS:POWERFACtor? + - MEASUrement:MEAS:PREGion {FPULse|SPULse|MPULse} + - MEASUrement:MEAS:PREGion? + - MEASUrement:MEAS:PWIDth + - MEASUrement:MEAS:PWIDth? + - MEASUrement:MEAS:REDGe {ON|OFF} + - MEASUrement:MEAS:REDGe? + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow? + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid? + - MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis + - MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis? + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh? + - MEASUrement:MEAS:REFLevels1:ABSolute:RISELow + - MEASUrement:MEAS:REFLevels1:ABSolute:RISELow? + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid? + - MEASUrement:MEAS:REFLevels1:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:MEAS:REFLevels1:ABSolute:TYPE? + - MEASUrement:MEAS:REFLevels1:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:MEAS:REFLevels1:BASETop? + - MEASUrement:MEAS:REFLevels1:METHod {PERCent|ABSolute} + - MEASUrement:MEAS:REFLevels1:METHod? + - MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh + - MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh? + - MEASUrement:MEAS:REFLevels1:PERCent:FALLLow + - MEASUrement:MEAS:REFLevels1:PERCent:FALLLow? + - MEASUrement:MEAS:REFLevels1:PERCent:FALLMid + - MEASUrement:MEAS:REFLevels1:PERCent:FALLMid? + - MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis + - MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis? + - MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh + - MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh? + - MEASUrement:MEAS:REFLevels1:PERCent:RISELow + - MEASUrement:MEAS:REFLevels1:PERCent:RISELow? + - MEASUrement:MEAS:REFLevels1:PERCent:RISEMid + - MEASUrement:MEAS:REFLevels1:PERCent:RISEMid? + - MEASUrement:MEAS:REFLevels1:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:MEAS:REFLevels1:PERCent:TYPE? + - MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh + - MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh? + - MEASUrement:MEAS:REFMode {AUTO|MANual} + - MEASUrement:MEAS:REFMode? + - MEASUrement:MEAS:REFVOLTAGEVal + - MEASUrement:MEAS:REFVOLTAGEVal? + - MEASUrement:MEAS:REFVoltage + - MEASUrement:MEAS:REFVoltage? + - MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum? + - MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN? + - MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum? + - MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK? + - MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation? + - MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev? + - MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum? + - MEASUrement:MEAS:RESUlts:CURRentacq:MEAN? + - MEASUrement:MEAS:RESUlts:CURRentacq:MINimum? + - MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK? + - MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation? + - MEASUrement:MEAS:RESUlts:CURRentacq:STDDev? + - MEASUrement:MEAS:RESUlts:HISTory:MAXimum? + - MEASUrement:MEAS:RESUlts:HISTory:MEAN? + - MEASUrement:MEAS:RESUlts:HISTory:MINimum? + - MEASUrement:MEAS:RESUlts:HISTory:PK2PK? + - MEASUrement:MEAS:RESUlts:HISTory:POPUlation? + - MEASUrement:MEAS:RESUlts:HISTory:STDDev? + - MEASUrement:MEAS:RIPPLEFREQVal + - MEASUrement:MEAS:RIPPLEFREQVal? + - MEASUrement:MEAS:SEQuence {ABC|ACB} + - MEASUrement:MEAS:SEQuence? + - MEASUrement:MEAS:SIGNALFREQUEncy {AUTO|FIFTYHZ|SIXTYHZ|FOURHUNDREDHZ|CUSTOM} + - MEASUrement:MEAS:SIGNALFREQUEncy? + - MEASUrement:MEAS:SIGNALType {CLOCK|DATA|AUTO} + - MEASUrement:MEAS:SIGNALType? + - MEASUrement:MEAS:SLABs + - MEASUrement:MEAS:SLABs? + - MEASUrement:MEAS:SLPCt + - MEASUrement:MEAS:SLPCt? + - MEASUrement:MEAS:SLTYpe {VDS|ID|VGE|VCE|IC} + - MEASUrement:MEAS:SLTYpe? + - MEASUrement:MEAS:SMOOTHINGFILTER + - MEASUrement:MEAS:SOURCE {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:SOURCE? + - MEASUrement:MEAS:SOUrce1 {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:SOUrce1? + - MEASUrement:MEAS:SSC:NOMinalfreq + - MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype {AUTO|MANual} + - MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype? + - MEASUrement:MEAS:SSC:NOMinalfreq? + - MEASUrement:MEAS:STATUS? + - MEASUrement:MEAS:STLABs + - MEASUrement:MEAS:STLABs? + - MEASUrement:MEAS:STLPct + - MEASUrement:MEAS:STLPct? + - MEASUrement:MEAS:STLTYpe {VDS|ID|VGE|VCE|IC} + - MEASUrement:MEAS:STLTYpe? + - MEASUrement:MEAS:STYPe {VOLTage|CURRent} + - MEASUrement:MEAS:STYPe? + - MEASUrement:MEAS:SUNits {RPM|HZ} + - MEASUrement:MEAS:SUNits? + - MEASUrement:MEAS:TCKAVG + - MEASUrement:MEAS:TCKAVG? + - MEASUrement:MEAS:TCONstant + - MEASUrement:MEAS:TCONstant? + - MEASUrement:MEAS:TIMINGMode {EACHCLOCKCYCLE|TWOCLOCKCYCLES} + - MEASUrement:MEAS:TIMINGMode? + - MEASUrement:MEAS:TMEThod {SENSOR|CURRENT} + - MEASUrement:MEAS:TMEThod? + - MEASUrement:MEAS:TOEDGESEARCHDIRect {FORWard|BACKWard} + - MEASUrement:MEAS:TOEDGESEARCHDIRect? + - MEASUrement:MEAS:TOEdge {SAMEas|OPPositeas|RISe|FALL|BOTH} + - MEASUrement:MEAS:TOEdge? + - MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce? + - MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce? + - MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce? + - MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce? + - MEASUrement:MEAS:TOSYmbol:MEASUREAT {Start|Stop|ClockEdge} + - MEASUrement:MEAS:TOSYmbol:MEASUREAT? + - MEASUrement:MEAS:TRANSition {ON|OFF|} + - MEASUrement:MEAS:TYPe {ACCOMMONMODE|ACRMS|AMPlITUDE|AREA|BASE|BITAMPLITUDE|BITHIGH|BITLOW|BURSTWIDTH|COMMONMODE|DATARATE|DCD|DDJ|DDRAOS|DDRAOSPERTCK|DDRAOSPERUI|DDRAUS|DDRAUSPERTCK|DDRAUSPERUI|DDRHOLDDIFF|DDRSETUPDIFF|DDRTCHABS|DDRTCHAVERAGE|DDRTCKAVERAGE|DDRTCLABS|DDRTCLAVERAGE|DDRTERRMN|DDRTERRN|DDRTJITCC|DDRTJITDUTY|DDRTJITPER|DDRTPST|DDRTRPRE|DDRTWPRE|DDRVIXAC|DDRTDQSCK|DELAY|DJ|DJDIRAC|DPMOVERSHOOT|DPMUNDERSHOOT|DPMRIPPLE|DPMTURNOFFTIME|DPMTURNONTIME|EYEHIGH|EYELOW|FALLSLEWRATE|FALLTIME|FREQUENCY|F2|F4|F8|HIGH|HEIGHT|HEIGHTBER|HIGHTIME|HOLD|IMDAPOWERQUALITY|IMDAHARMONICS|IMDAINPUTVOLTAGE|IMDAINPUTCURRENT|IMDAINPUTPOWER|IMDAPHASORDIAGRAM|IMDAEFFICIENCY|IMDALINERIPPLE|IMDASWITCHRIPPLE|IMDADQ0|JITTERSUMMARY|J2|J9|LOW|LOWTIME|MAXIMUM|MEAN|MINIMUM|NDUtY|NPERIOD|NPJ|NOVERSHOOT|NWIDTH|PDUTTY|PERIOD|PHASE|PHASENOISE|PJ|PK2Pk|POVERSHOOT|PWIDTH|QFACTOR|RISESLEWRATE|RISETIME|RJ|RJDIRAC|RMS|SRJ|SSCFREQDEV|SSCMODRATE|SETUP|SKEW|TIE|TIMEOUTSIDELEVEL|TJBER|TNTRATIO|TOP|UNITINTERVAL|VDIFFXOVR|WIDTH|WIDTHBER} + - MEASUrement:MEAS:TYPe? + - MEASUrement:MEAS:WAITTime + - MEASUrement:MEAS:WAITTime? + - MEASUrement:MEAS:WINDOWLENgth + - MEASUrement:MEAS:WINDOWLENgth? + - MEASUrement:MEAS:XUNIT? + - MEASUrement:MEAS:YUNIT? + - MEASUrement:MEASRange:MAX + - MEASUrement:MEASRange:MAX? + - MEASUrement:MEASRange:MIN + - MEASUrement:MEASRange:MIN? + - MEASUrement:MEASRange:STATE {OFF|ON|0|1} + - MEASUrement:MEASRange:STATE? + - MEASUrement:MECH:EINDexz {ON|OFF|1|0} + - MEASUrement:MECH:EINDexz? + - MEASUrement:MECH:GRATio + - MEASUrement:MECH:GRATio? + - MEASUrement:MECH:MUNits {NM|OZINCH|FTLB|INCHLB|DEGREES|RADIANS} + - MEASUrement:MECH:MUNits? + - MEASUrement:MECH:PPAirs + - MEASUrement:MECH:PPAirs? + - MEASUrement:MECH:PPRotation + - MEASUrement:MECH:PPRotation? + - MEASUrement:MECH:SOUrce1 {S_Ch|CH|MATH|REF|CH_D} + - MEASUrement:MECH:SOUrce1? + - MEASUrement:MECH:STYPe {HSENSOR|QEI} + - MEASUrement:MECH:STYPe? + - MEASUrement:MINUI + - MEASUrement:MINUI? + - MEASUrement:POPUlation:LIMIT:STATE {OFF|ON|0|1 } + - MEASUrement:POPUlation:LIMIT:STATE? + - MEASUrement:POPUlation:LIMIT:VALue + - MEASUrement:POPUlation:LIMIT:VALue? + - MEASUrement:REF:REFLevels:ABSolute:FALLHigh + - MEASUrement:REF:REFLevels:ABSolute:FALLHigh? + - MEASUrement:REF:REFLevels:ABSolute:FALLLow + - MEASUrement:REF:REFLevels:ABSolute:FALLLow? + - MEASUrement:REF:REFLevels:ABSolute:FALLMid + - MEASUrement:REF:REFLevels:ABSolute:FALLMid? + - MEASUrement:REF:REFLevels:ABSolute:HYSTeresis + - MEASUrement:REF:REFLevels:ABSolute:HYSTeresis? + - MEASUrement:REF:REFLevels:ABSolute:RISEHigh + - MEASUrement:REF:REFLevels:ABSolute:RISEHigh? + - MEASUrement:REF:REFLevels:ABSolute:RISELow + - MEASUrement:REF:REFLevels:ABSolute:RISELow? + - MEASUrement:REF:REFLevels:ABSolute:RISEMid + - MEASUrement:REF:REFLevels:ABSolute:RISEMid? + - MEASUrement:REF:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:REF:REFLevels:ABSolute:TYPE? + - MEASUrement:REF:REFLevels:BASETop + - MEASUrement:REF:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:REF:REFLevels:METHod? + - MEASUrement:REF:REFLevels:PERCent:FALLHigh + - MEASUrement:REF:REFLevels:PERCent:FALLHigh? + - MEASUrement:REF:REFLevels:PERCent:FALLLow + - MEASUrement:REF:REFLevels:PERCent:FALLLow? + - MEASUrement:REF:REFLevels:PERCent:FALLMid + - MEASUrement:REF:REFLevels:PERCent:FALLMid? + - MEASUrement:REF:REFLevels:PERCent:HYSTeresis + - MEASUrement:REF:REFLevels:PERCent:HYSTeresis? + - MEASUrement:REF:REFLevels:PERCent:RISEHigh + - MEASUrement:REF:REFLevels:PERCent:RISEHigh? + - MEASUrement:REF:REFLevels:PERCent:RISELow + - MEASUrement:REF:REFLevels:PERCent:RISELow? + - MEASUrement:REF:REFLevels:PERCent:RISEMid + - MEASUrement:REF:REFLevels:PERCent:RISEMid? + - MEASUrement:REF:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:REF:REFLevels:PERCent:TYPE? + - MEASUrement:REFLevels:ABSolute:FALLHigh + - MEASUrement:REFLevels:ABSolute:FALLHigh? + - MEASUrement:REFLevels:ABSolute:FALLLow + - MEASUrement:REFLevels:ABSolute:FALLLow? + - MEASUrement:REFLevels:ABSolute:FALLMid + - MEASUrement:REFLevels:ABSolute:FALLMid? + - MEASUrement:REFLevels:ABSolute:HYSTeresis + - MEASUrement:REFLevels:ABSolute:HYSTeresis? + - MEASUrement:REFLevels:ABSolute:RISEHigh + - MEASUrement:REFLevels:ABSolute:RISEHigh? + - MEASUrement:REFLevels:ABSolute:RISELow + - MEASUrement:REFLevels:ABSolute:RISELow? + - MEASUrement:REFLevels:ABSolute:RISEMid + - MEASUrement:REFLevels:ABSolute:RISEMid? + - MEASUrement:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:REFLevels:ABSolute:TYPE? + - MEASUrement:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:REFLevels:BASETop? + - MEASUrement:REFLevels:JITTERMODE {CONTinuous|LATCh} + - MEASUrement:REFLevels:JITTERMODE? + - MEASUrement:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:REFLevels:METHod? + - MEASUrement:REFLevels:MODE {LATCh|CONTinuous} + - MEASUrement:REFLevels:MODE? + - MEASUrement:REFLevels:PERCent:FALLHigh + - MEASUrement:REFLevels:PERCent:FALLHigh? + - MEASUrement:REFLevels:PERCent:FALLLow + - MEASUrement:REFLevels:PERCent:FALLLow? + - MEASUrement:REFLevels:PERCent:FALLMid + - MEASUrement:REFLevels:PERCent:FALLMid? + - MEASUrement:REFLevels:PERCent:HYSTeresis + - MEASUrement:REFLevels:PERCent:HYSTeresis? + - MEASUrement:REFLevels:PERCent:RISEHigh + - MEASUrement:REFLevels:PERCent:RISEHigh? + - MEASUrement:REFLevels:PERCent:RISELow + - MEASUrement:REFLevels:PERCent:RISELow? + - MEASUrement:REFLevels:PERCent:RISEMid + - MEASUrement:REFLevels:PERCent:RISEMid? + - MEASUrement:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:REFLevels:PERCent:TYPE? + - MEASUrement:REFLevels:TYPE {GLOBal|PERSource} + - MEASUrement:REFLevels:TYPE? + - MEASUrement:RESUlts:HISTory:STARt + - MEASUrement:RESUlts:HISTory:STARt? + - MEASUrement:RESUlts:HISTory:STOP + - MEASUrement:RESUlts:HISTory:STOP? + - MEASUrement:STATIstics:CYCLEMode {OFF|ON|0|1} + - MEASUrement:STATIstics:CYCLEMode? + - MEASUrement:WBG:PDEVice {IGBT|MOSFET} + - MEASUrement:WBG:PDEVice? + - MEASUrement? + ``` +""" # noqa: E501 + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedChannel, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class MeasurementWbgPdevice(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:WBG:PDEVice`` command. + + Description: + - This command sets or returns the type of the Power device. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:WBG:PDEVice?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:WBG:PDEVice?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:WBG:PDEVice value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:WBG:PDEVice {IGBT|MOSFET} + - MEASUrement:WBG:PDEVice? + ``` + + Info: + - ``IGBT`` specifies the type of the Power device as IGBT. + - ``MOSFET`` specifies the type of the Power device as MOSFET. + """ + + +class MeasurementWbg(SCPICmdRead): + """The ``MEASUrement:WBG`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:WBG?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:WBG?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.pdevice``: The ``MEASUrement:WBG:PDEVice`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._pdevice = MeasurementWbgPdevice(device, f"{self._cmd_syntax}:PDEVice") + + @property + def pdevice(self) -> MeasurementWbgPdevice: + """Return the ``MEASUrement:WBG:PDEVice`` command. + + Description: + - This command sets or returns the type of the Power device. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:WBG:PDEVice?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:WBG:PDEVice?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:WBG:PDEVice value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:WBG:PDEVice {IGBT|MOSFET} + - MEASUrement:WBG:PDEVice? + ``` + + Info: + - ``IGBT`` specifies the type of the Power device as IGBT. + - ``MOSFET`` specifies the type of the Power device as MOSFET. + """ + return self._pdevice + + +class MeasurementStatisticsCyclemode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:STATIstics:CYCLEMode`` command. + + Description: + - This command turns on and off cycle to cycle measurement statistics tracking and affects + computation and display of cycle-cycle statistics in the Measurement Result table. It + affects measurement statistics after being enabled and after new data is acquired and + measured. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:STATIstics:CYCLEMode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:STATIstics:CYCLEMode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:STATIstics:CYCLEMode value`` command. + + SCPI Syntax: + ``` + - MEASUrement:STATIstics:CYCLEMode {OFF|ON|0|1} + - MEASUrement:STATIstics:CYCLEMode? + ``` + + Info: + - ``OFF`` turns off statistics for all measurements. This is the default value. + - ``ON`` turns on statistics and displays all statistics for each measurement. + - ``0`` turns off statistics for all measurements. + - ``1`` turns on statistics and displays all statistics for each measurement. + """ + + +class MeasurementStatistics(SCPICmdRead): + """The ``MEASUrement:STATIstics`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:STATIstics?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:STATIstics?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.cyclemode``: The ``MEASUrement:STATIstics:CYCLEMode`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cyclemode = MeasurementStatisticsCyclemode(device, f"{self._cmd_syntax}:CYCLEMode") + + @property + def cyclemode(self) -> MeasurementStatisticsCyclemode: + """Return the ``MEASUrement:STATIstics:CYCLEMode`` command. + + Description: + - This command turns on and off cycle to cycle measurement statistics tracking and + affects computation and display of cycle-cycle statistics in the Measurement Result + table. It affects measurement statistics after being enabled and after new data is + acquired and measured. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:STATIstics:CYCLEMode?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:STATIstics:CYCLEMode?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:STATIstics:CYCLEMode value`` command. + + SCPI Syntax: + ``` + - MEASUrement:STATIstics:CYCLEMode {OFF|ON|0|1} + - MEASUrement:STATIstics:CYCLEMode? + ``` + + Info: + - ``OFF`` turns off statistics for all measurements. This is the default value. + - ``ON`` turns on statistics and displays all statistics for each measurement. + - ``0`` turns off statistics for all measurements. + - ``1`` turns on statistics and displays all statistics for each measurement. + """ + return self._cyclemode + + +class MeasurementResultsHistoryStop(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:RESUlts:HISTory:STOP`` command. + + Description: + - This command sets or queries the last acquisition number that will be transferred for + measurement history results. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:RESUlts:HISTory:STOP?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:RESUlts:HISTory:STOP?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:RESUlts:HISTory:STOP value`` command. + + SCPI Syntax: + ``` + - MEASUrement:RESUlts:HISTory:STOP + - MEASUrement:RESUlts:HISTory:STOP? + ``` + + Info: + - ```` is the last acquisition that will be transferred, which ranges from 1 to the + number of history acquisitions. Results will be transferred from + ``MEASUrement:RESUlts:HISTory:STARt`` to . A special value of 0 for indicates + that the stop position is always the last history acquisition. + """ + + +class MeasurementResultsHistoryStart(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:RESUlts:HISTory:STARt`` command. + + Description: + - This command sets or queries the starting acquisition number for transferring measurement + history results. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:RESUlts:HISTory:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:RESUlts:HISTory:STARt?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:RESUlts:HISTory:STARt value`` command. + + SCPI Syntax: + ``` + - MEASUrement:RESUlts:HISTory:STARt + - MEASUrement:RESUlts:HISTory:STARt? + ``` + + Info: + - ```` is the first acquisition that will be transferred, which ranges from 1 to the + number of history acquisitions. Results will be transferred from acquisitions to + ``MEASUrement:RESUlts:HISTory:STOP``. + """ + + +class MeasurementResultsHistory(SCPICmdRead): + """The ``MEASUrement:RESUlts:HISTory`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:RESUlts:HISTory?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:RESUlts:HISTory?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.start``: The ``MEASUrement:RESUlts:HISTory:STARt`` command. + - ``.stop``: The ``MEASUrement:RESUlts:HISTory:STOP`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._start = MeasurementResultsHistoryStart(device, f"{self._cmd_syntax}:STARt") + self._stop = MeasurementResultsHistoryStop(device, f"{self._cmd_syntax}:STOP") + + @property + def start(self) -> MeasurementResultsHistoryStart: + """Return the ``MEASUrement:RESUlts:HISTory:STARt`` command. + + Description: + - This command sets or queries the starting acquisition number for transferring + measurement history results. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:RESUlts:HISTory:STARt?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:RESUlts:HISTory:STARt?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:RESUlts:HISTory:STARt value`` command. + + SCPI Syntax: + ``` + - MEASUrement:RESUlts:HISTory:STARt + - MEASUrement:RESUlts:HISTory:STARt? + ``` + + Info: + - ```` is the first acquisition that will be transferred, which ranges from 1 to + the number of history acquisitions. Results will be transferred from acquisitions + to ``MEASUrement:RESUlts:HISTory:STOP``. + """ + return self._start + + @property + def stop(self) -> MeasurementResultsHistoryStop: + """Return the ``MEASUrement:RESUlts:HISTory:STOP`` command. + + Description: + - This command sets or queries the last acquisition number that will be transferred for + measurement history results. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:RESUlts:HISTory:STOP?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:RESUlts:HISTory:STOP?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:RESUlts:HISTory:STOP value`` command. + + SCPI Syntax: + ``` + - MEASUrement:RESUlts:HISTory:STOP + - MEASUrement:RESUlts:HISTory:STOP? + ``` + + Info: + - ```` is the last acquisition that will be transferred, which ranges from 1 to the + number of history acquisitions. Results will be transferred from + ``MEASUrement:RESUlts:HISTory:STARt`` to . A special value of 0 for + indicates that the stop position is always the last history acquisition. + """ + return self._stop + + +class MeasurementResults(SCPICmdRead): + """The ``MEASUrement:RESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:RESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:RESUlts?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.history``: The ``MEASUrement:RESUlts:HISTory`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._history = MeasurementResultsHistory(device, f"{self._cmd_syntax}:HISTory") + + @property + def history(self) -> MeasurementResultsHistory: + """Return the ``MEASUrement:RESUlts:HISTory`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:RESUlts:HISTory?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:RESUlts:HISTory?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.start``: The ``MEASUrement:RESUlts:HISTory:STARt`` command. + - ``.stop``: The ``MEASUrement:RESUlts:HISTory:STOP`` command. + """ + return self._history + + +class MeasurementReflevelsType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:TYPE`` command. + + Description: + - This command sets or queries the shared reference level method used for sources of + measurement calculations. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:REFLevels:TYPE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:TYPE {GLOBal|PERSource} + - MEASUrement:REFLevels:TYPE? + ``` + + Info: + - ``GLOBal`` shares reference levels across measurements. + - ``PERSource`` causes reference levels to be used on individual measurements. + """ + + +class MeasurementReflevelsPercentType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:PERCent:TYPE`` command. + + Description: + - This command sets or queries the reference level percent type for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:PERCent:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``TENNinety`` sets the values for Low, Mid and High Ref to 10%, 50% and 90% respectively. + - ``TWENtyeighty`` sets the values for Low, Mid and High Ref are set to 20%, 50% and 80% + respectively. + - ``CUSTom`` allows setting other reference level percents. + """ + + +class MeasurementReflevelsPercentRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the rising edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:RISEMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:RISEMid + - MEASUrement:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the rising edge. + """ + + +class MeasurementReflevelsPercentRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the low reference level of the rising edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:RISELow?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:RISELow + - MEASUrement:REFLevels:PERCent:RISELow? + ``` + + Info: + - ```` is the percentage used to calculate the low reference level of the rising edge. + """ + + +class MeasurementReflevelsPercentRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the rising edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:RISEHigh?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:RISEHigh + - MEASUrement:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ```` is the percentage used to calculate the high reference level of the rising edge. + """ + + +class MeasurementReflevelsPercentHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 100% is equal to MAX and 1% is equal to + MIN) used to calculate the hysteresis of the reference level when the measurement's ref + level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:HYSTeresis?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:HYSTeresis?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:HYSTeresis + - MEASUrement:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ```` is the percentage used to calculate the hysteresis of the reference level. + """ + + +class MeasurementReflevelsPercentFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the falling edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:FALLMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:FALLMid + - MEASUrement:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the falling edge. + """ + + +class MeasurementReflevelsPercentFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the falling edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:FALLLow?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:FALLLow + - MEASUrement:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the falling edge. + """ + + +class MeasurementReflevelsPercentFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the falling edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:FALLHigh?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:FALLHigh + - MEASUrement:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ```` is the percentage used to calculate the high reference level of the falling + edge. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementReflevelsPercent(SCPICmdRead): + """The ``MEASUrement:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:PERCent?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.fallhigh``: The ``MEASUrement:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:REFLevels:PERCent:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementReflevelsPercentFallhigh(device, f"{self._cmd_syntax}:FALLHigh") + self._falllow = MeasurementReflevelsPercentFalllow(device, f"{self._cmd_syntax}:FALLLow") + self._fallmid = MeasurementReflevelsPercentFallmid(device, f"{self._cmd_syntax}:FALLMid") + self._hysteresis = MeasurementReflevelsPercentHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementReflevelsPercentRisehigh(device, f"{self._cmd_syntax}:RISEHigh") + self._riselow = MeasurementReflevelsPercentRiselow(device, f"{self._cmd_syntax}:RISELow") + self._risemid = MeasurementReflevelsPercentRisemid(device, f"{self._cmd_syntax}:RISEMid") + self._type = MeasurementReflevelsPercentType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> MeasurementReflevelsPercentFallhigh: + """Return the ``MEASUrement:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the falling edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:FALLHigh + - MEASUrement:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ```` is the percentage used to calculate the high reference level of the falling + edge. + """ + return self._fallhigh + + @property + def falllow(self) -> MeasurementReflevelsPercentFalllow: + """Return the ``MEASUrement:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the falling edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:FALLLow?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:FALLLow + - MEASUrement:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the falling + edge. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementReflevelsPercentFallmid: + """Return the ``MEASUrement:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the falling edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:FALLMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:FALLMid + - MEASUrement:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the falling + edge. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementReflevelsPercentHysteresis: + """Return the ``MEASUrement:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 100% is equal to MAX and 1% is + equal to MIN) used to calculate the hysteresis of the reference level when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:HYSTeresis?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:HYSTeresis + - MEASUrement:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ```` is the percentage used to calculate the hysteresis of the reference level. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementReflevelsPercentRisehigh: + """Return the ``MEASUrement:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the rising edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:RISEHigh + - MEASUrement:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ```` is the percentage used to calculate the high reference level of the rising + edge. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementReflevelsPercentRiselow: + """Return the ``MEASUrement:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the low reference level of the rising edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:RISELow?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:RISELow + - MEASUrement:REFLevels:PERCent:RISELow? + ``` + + Info: + - ```` is the percentage used to calculate the low reference level of the rising + edge. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementReflevelsPercentRisemid: + """Return the ``MEASUrement:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the rising edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:RISEMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:RISEMid + - MEASUrement:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the rising + edge. + """ + return self._risemid + + @property + def type(self) -> MeasurementReflevelsPercentType: + """Return the ``MEASUrement:REFLevels:PERCent:TYPE`` command. + + Description: + - This command sets or queries the reference level percent type for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``TENNinety`` sets the values for Low, Mid and High Ref to 10%, 50% and 90% + respectively. + - ``TWENtyeighty`` sets the values for Low, Mid and High Ref are set to 20%, 50% and 80% + respectively. + - ``CUSTom`` allows setting other reference level percents. + """ + return self._type + + +class MeasurementReflevelsMode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:MODE`` command. + + Description: + - This command sets or queries how often reference levels are calculated. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:MODE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:MODE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:REFLevels:MODE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:MODE {LATCh|CONTinuous} + - MEASUrement:REFLevels:MODE? + ``` + + Info: + - ``LATCh`` calculates reference levels only on the first acquisition after a statistics + reset. + - ``CONTinuous`` calculates reference levels on every acquisition. + """ + + +class MeasurementReflevelsMethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:METHod?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:METHod?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:REFLevels:METHod value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:REFLevels:METHod? + ``` + + Info: + - ``PERCent`` specifies that the reference levels are calculated as a percent relative to + HIGH and LOW. The percentages are defined using the + ``MEASUrement:REFLevels:REFLevel:PERCent`` commands. + - ``ABSolute`` specifies that the reference levels are set explicitly using the + ``MEASUrement:REFLevels:REFLevel:ABSolute`` commands. This method is useful when precise + values are required. + """ + + +class MeasurementReflevelsJittermode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:JITTERMODE`` command. + + Description: + - This command sets or queries how often reference levels are calculated on Jitter + measurements. If the mode is set to Latch, ref levels are calculated only on the first + acquisition after a statistics reset. If it is set to Continuous, reference levels are + calculated on every acquisition. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:JITTERMODE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:JITTERMODE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:JITTERMODE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:JITTERMODE {CONTinuous|LATCh} + - MEASUrement:REFLevels:JITTERMODE? + ``` + + Info: + - ``CONTinuous`` specifies that reference levels are calculated on every acquisition. + - ``LATCh`` specifies that reference levels are calculated only on the first acquisition + after a statistics reset. + """ + + +class MeasurementReflevelsBasetop(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE, used to + calculate reference levels for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:BASETop?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:BASETop?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:REFLevels:BASETop value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:REFLevels:BASETop? + ``` + + Info: + - ``AUTO`` sets the base top method to AUTO. + - ``MINMax`` sets the base top method to MINMax. + - ``MEANhistogram`` sets the base top method to MEANhistogram. + - ``MODEhistogram`` sets the base top method to MODEhistogram. + - ``EYEhistogram`` sets the base top method to EYEhistogram. + """ + + +class MeasurementReflevelsAbsoluteType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:ABSolute:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``SAME`` specifies that the absolute levels are set the same. + - ``UNIQue`` specifies that the absolute levels can be set independently. + """ + + +class MeasurementReflevelsAbsoluteRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute:RISEMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:RISEMid + - MEASUrement:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ```` is the mid reference level of the rising edge. + """ + + +class MeasurementReflevelsAbsoluteRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute:RISELow?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:RISELow + - MEASUrement:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ```` is the value used as the the low reference level of the rising edge. + """ + + +class MeasurementReflevelsAbsoluteRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute:RISEHigh?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:RISEHigh + - MEASUrement:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ```` is the value used as the high reference level of the rising edge. + """ + + +class MeasurementReflevelsAbsoluteHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when the + measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute:HYSTeresis?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:HYSTeresis?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:HYSTeresis + - MEASUrement:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ```` is the value of the hysteresis of the reference level. + """ + + +class MeasurementReflevelsAbsoluteFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute:FALLMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:FALLMid + - MEASUrement:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ```` is the value used as the mid reference level of the falling edge. + """ + + +class MeasurementReflevelsAbsoluteFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute:FALLLow?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:FALLLow + - MEASUrement:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ```` is the value used as the low reference level of the falling edge. + """ + + +class MeasurementReflevelsAbsoluteFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute:FALLHigh?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:FALLHigh + - MEASUrement:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ```` is the value used as the high reference level of the falling edge when the + measurement's ref level method is set to absolute. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementReflevelsAbsolute(SCPICmdRead): + """The ``MEASUrement:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:ABSolute?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.fallhigh``: The ``MEASUrement:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:REFLevels:ABSolute:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementReflevelsAbsoluteFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = MeasurementReflevelsAbsoluteFalllow(device, f"{self._cmd_syntax}:FALLLow") + self._fallmid = MeasurementReflevelsAbsoluteFallmid(device, f"{self._cmd_syntax}:FALLMid") + self._hysteresis = MeasurementReflevelsAbsoluteHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementReflevelsAbsoluteRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = MeasurementReflevelsAbsoluteRiselow(device, f"{self._cmd_syntax}:RISELow") + self._risemid = MeasurementReflevelsAbsoluteRisemid(device, f"{self._cmd_syntax}:RISEMid") + self._type = MeasurementReflevelsAbsoluteType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> MeasurementReflevelsAbsoluteFallhigh: + """Return the ``MEASUrement:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:FALLHigh + - MEASUrement:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ```` is the value used as the high reference level of the falling edge when the + measurement's ref level method is set to absolute. + """ + return self._fallhigh + + @property + def falllow(self) -> MeasurementReflevelsAbsoluteFalllow: + """Return the ``MEASUrement:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:FALLLow + - MEASUrement:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ```` is the value used as the low reference level of the falling edge. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementReflevelsAbsoluteFallmid: + """Return the ``MEASUrement:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:FALLMid + - MEASUrement:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ```` is the value used as the mid reference level of the falling edge. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementReflevelsAbsoluteHysteresis: + """Return the ``MEASUrement:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when + the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:HYSTeresis?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:HYSTeresis + - MEASUrement:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ```` is the value of the hysteresis of the reference level. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementReflevelsAbsoluteRisehigh: + """Return the ``MEASUrement:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:RISEHigh + - MEASUrement:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ```` is the value used as the high reference level of the rising edge. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementReflevelsAbsoluteRiselow: + """Return the ``MEASUrement:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:RISELow + - MEASUrement:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ```` is the value used as the the low reference level of the rising edge. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementReflevelsAbsoluteRisemid: + """Return the ``MEASUrement:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:RISEMid + - MEASUrement:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ```` is the mid reference level of the rising edge. + """ + return self._risemid + + @property + def type(self) -> MeasurementReflevelsAbsoluteType: + """Return the ``MEASUrement:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``SAME`` specifies that the absolute levels are set the same. + - ``UNIQue`` specifies that the absolute levels can be set independently. + """ + return self._type + + +class MeasurementReflevels(SCPICmdRead): + """The ``MEASUrement:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.absolute``: The ``MEASUrement:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:REFLevels:BASETop`` command. + - ``.jittermode``: The ``MEASUrement:REFLevels:JITTERMODE`` command. + - ``.method``: The ``MEASUrement:REFLevels:METHod`` command. + - ``.mode``: The ``MEASUrement:REFLevels:MODE`` command. + - ``.percent``: The ``MEASUrement:REFLevels:PERCent`` command tree. + - ``.type``: The ``MEASUrement:REFLevels:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._absolute = MeasurementReflevelsAbsolute(device, f"{self._cmd_syntax}:ABSolute") + self._basetop = MeasurementReflevelsBasetop(device, f"{self._cmd_syntax}:BASETop") + self._jittermode = MeasurementReflevelsJittermode(device, f"{self._cmd_syntax}:JITTERMODE") + self._method = MeasurementReflevelsMethod(device, f"{self._cmd_syntax}:METHod") + self._mode = MeasurementReflevelsMode(device, f"{self._cmd_syntax}:MODE") + self._percent = MeasurementReflevelsPercent(device, f"{self._cmd_syntax}:PERCent") + self._type = MeasurementReflevelsType(device, f"{self._cmd_syntax}:TYPE") + + @property + def absolute(self) -> MeasurementReflevelsAbsolute: + """Return the ``MEASUrement:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:ABSolute?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:ABSolute?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:REFLevels:ABSolute:TYPE`` command. + """ + return self._absolute + + @property + def basetop(self) -> MeasurementReflevelsBasetop: + """Return the ``MEASUrement:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE, used to + calculate reference levels for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:BASETop?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:BASETop?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:BASETop value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:REFLevels:BASETop? + ``` + + Info: + - ``AUTO`` sets the base top method to AUTO. + - ``MINMax`` sets the base top method to MINMax. + - ``MEANhistogram`` sets the base top method to MEANhistogram. + - ``MODEhistogram`` sets the base top method to MODEhistogram. + - ``EYEhistogram`` sets the base top method to EYEhistogram. + """ + return self._basetop + + @property + def jittermode(self) -> MeasurementReflevelsJittermode: + """Return the ``MEASUrement:REFLevels:JITTERMODE`` command. + + Description: + - This command sets or queries how often reference levels are calculated on Jitter + measurements. If the mode is set to Latch, ref levels are calculated only on the first + acquisition after a statistics reset. If it is set to Continuous, reference levels are + calculated on every acquisition. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:JITTERMODE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REFLevels:JITTERMODE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:JITTERMODE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:JITTERMODE {CONTinuous|LATCh} + - MEASUrement:REFLevels:JITTERMODE? + ``` + + Info: + - ``CONTinuous`` specifies that reference levels are calculated on every acquisition. + - ``LATCh`` specifies that reference levels are calculated only on the first acquisition + after a statistics reset. + """ + return self._jittermode + + @property + def method(self) -> MeasurementReflevelsMethod: + """Return the ``MEASUrement:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:METHod?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:METHod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REFLevels:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:REFLevels:METHod? + ``` + + Info: + - ``PERCent`` specifies that the reference levels are calculated as a percent relative + to HIGH and LOW. The percentages are defined using the + ``MEASUrement:REFLevels:REFLevel:PERCent`` commands. + - ``ABSolute`` specifies that the reference levels are set explicitly using the + ``MEASUrement:REFLevels:REFLevel:ABSolute`` commands. This method is useful when + precise values are required. + """ + return self._method + + @property + def mode(self) -> MeasurementReflevelsMode: + """Return the ``MEASUrement:REFLevels:MODE`` command. + + Description: + - This command sets or queries how often reference levels are calculated. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:MODE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:MODE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:REFLevels:MODE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:MODE {LATCh|CONTinuous} + - MEASUrement:REFLevels:MODE? + ``` + + Info: + - ``LATCh`` calculates reference levels only on the first acquisition after a statistics + reset. + - ``CONTinuous`` calculates reference levels on every acquisition. + """ + return self._mode + + @property + def percent(self) -> MeasurementReflevelsPercent: + """Return the ``MEASUrement:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:PERCent?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:PERCent?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:REFLevels:PERCent:TYPE`` command. + """ + return self._percent + + @property + def type(self) -> MeasurementReflevelsType: + """Return the ``MEASUrement:REFLevels:TYPE`` command. + + Description: + - This command sets or queries the shared reference level method used for sources of + measurement calculations. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:REFLevels:TYPE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:REFLevels:TYPE {GLOBal|PERSource} + - MEASUrement:REFLevels:TYPE? + ``` + + Info: + - ``GLOBal`` shares reference levels across measurements. + - ``PERSource`` causes reference levels to be used on individual measurements. + """ + return self._type + + +class MeasurementRefItemReflevelsPercentType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:PERCent:TYPE`` command. + + Description: + - This command sets or queries the reference level percent type for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF:REFLevels:PERCent:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:REF:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``TENNinety`` sets the values for Low, Mid and High Ref to 10%, 50% and 90% respectively. + - ``TWENtyeighty`` sets the values for Low, Mid and High Ref are set to 20%, 50% and 80% + respectively. + - ``CUSTom`` allows setting other reference level percents. + """ + + +class MeasurementRefItemReflevelsPercentRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the rising edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:RISEMid + - MEASUrement:REF:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the rising edge. + """ + + +class MeasurementRefItemReflevelsPercentRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the low reference level of the rising edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:RISELow + - MEASUrement:REF:REFLevels:PERCent:RISELow? + ``` + + Info: + - ```` is the percentage used to calculate the low reference level of the rising edge. + """ + + +class MeasurementRefItemReflevelsPercentRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the rising edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:RISEHigh + - MEASUrement:REF:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ```` is the percentage used to calculate the high reference level of the rising edge. + """ + + +class MeasurementRefItemReflevelsPercentHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to MAX and 1% is equal to + MIN) used to calculate the hysteresis of the reference level when the measurement's ref + level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:HYSTeresis + - MEASUrement:REF:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ```` is the percentage used to calculate the hysteresis of the reference level. + """ + + +class MeasurementRefItemReflevelsPercentFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the falling edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:FALLMid + - MEASUrement:REF:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the falling edge. + """ + + +class MeasurementRefItemReflevelsPercentFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the low reference level of the falling edge when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:FALLLow + - MEASUrement:REF:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ```` is the percentage used to calculate the low reference level. + """ + + +class MeasurementRefItemReflevelsPercentFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the falling edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:FALLHigh + - MEASUrement:REF:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ```` is the percentage used to calculate the high reference level of the falling + edge. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementRefItemReflevelsPercent(SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF:REFLevels:PERCent?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.fallhigh``: The ``MEASUrement:REF:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:REF:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:REF:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:REF:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:REF:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:REF:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:REF:REFLevels:PERCent:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementRefItemReflevelsPercentFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = MeasurementRefItemReflevelsPercentFalllow( + device, f"{self._cmd_syntax}:FALLLow" + ) + self._fallmid = MeasurementRefItemReflevelsPercentFallmid( + device, f"{self._cmd_syntax}:FALLMid" + ) + self._hysteresis = MeasurementRefItemReflevelsPercentHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementRefItemReflevelsPercentRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = MeasurementRefItemReflevelsPercentRiselow( + device, f"{self._cmd_syntax}:RISELow" + ) + self._risemid = MeasurementRefItemReflevelsPercentRisemid( + device, f"{self._cmd_syntax}:RISEMid" + ) + self._type = MeasurementRefItemReflevelsPercentType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> MeasurementRefItemReflevelsPercentFallhigh: + """Return the ``MEASUrement:REF:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the falling edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:FALLHigh + - MEASUrement:REF:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ```` is the percentage used to calculate the high reference level of the falling + edge. + """ + return self._fallhigh + + @property + def falllow(self) -> MeasurementRefItemReflevelsPercentFalllow: + """Return the ``MEASUrement:REF:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the low reference level of the falling edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:FALLLow + - MEASUrement:REF:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ```` is the percentage used to calculate the low reference level. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementRefItemReflevelsPercentFallmid: + """Return the ``MEASUrement:REF:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the falling edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:FALLMid + - MEASUrement:REF:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the falling + edge. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementRefItemReflevelsPercentHysteresis: + """Return the ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to MAX and 1% is equal + to MIN) used to calculate the hysteresis of the reference level when the measurement's + ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:HYSTeresis + - MEASUrement:REF:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ```` is the percentage used to calculate the hysteresis of the reference level. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementRefItemReflevelsPercentRisehigh: + """Return the ``MEASUrement:REF:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the rising edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:RISEHigh + - MEASUrement:REF:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ```` is the percentage used to calculate the high reference level of the rising + edge. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementRefItemReflevelsPercentRiselow: + """Return the ``MEASUrement:REF:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the low reference level of the rising edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISELow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:RISELow + - MEASUrement:REF:REFLevels:PERCent:RISELow? + ``` + + Info: + - ```` is the percentage used to calculate the low reference level of the rising + edge. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementRefItemReflevelsPercentRisemid: + """Return the ``MEASUrement:REF:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the rising edge when the + measurement's ref level method is set to percent. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:RISEMid + - MEASUrement:REF:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ```` is the percentage used to calculate the mid reference level of the rising + edge. + """ + return self._risemid + + @property + def type(self) -> MeasurementRefItemReflevelsPercentType: + """Return the ``MEASUrement:REF:REFLevels:PERCent:TYPE`` command. + + Description: + - This command sets or queries the reference level percent type for the measurement. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:TYPE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:REF:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``TENNinety`` sets the values for Low, Mid and High Ref to 10%, 50% and 90% + respectively. + - ``TWENtyeighty`` sets the values for Low, Mid and High Ref are set to 20%, 50% and 80% + respectively. + - ``CUSTom`` allows setting other reference level percents. + """ + return self._type + + +class MeasurementRefItemReflevelsMethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF:REFLevels:METHod?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REF:REFLevels:METHod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:REF:REFLevels:METHod? + ``` + + Info: + - ``PERCent`` specifies that the reference levels are calculated as a percent relative to + HIGH and LOW. The percentages are defined using the + ``MEASUrement:REF:REFLevel:PERCent`` commands. + - ``ABSolute`` specifies that the reference levels are set explicitly using the + ``MEASUrement:REF:REFLevel:ABSolute`` commands. This method is useful when precise + values are required. + """ + + +class MeasurementRefItemReflevelsBasetop(SCPICmdWriteNoArguments): + """The ``MEASUrement:REF:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE, used to + calculate reference levels for the measurement. + + Usage: + - Using the ``.write()`` method will send the ``MEASUrement:REF:REFLevels:BASETop`` + command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:BASETop + ``` + + Info: + - ``AUTO`` automatically chooses a reference level method. + - ``MINMax`` specifies that reference levels are relative to the measurement MIN and MAX. + - ``MEANhistogram`` specifies that reference levels are relative to the histogram mean BASE + and TOP. + - ``MODEhistogram`` specifies that reference levels are relative to the histogram mode BASE + and TOP. + - ``EYEhistogram`` specifies that reverence levels are relative to the eye histogram BASE + and TOP. + """ + + +class MeasurementRefItemReflevelsAbsoluteType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the measurement. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:REF:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``SAME`` specifies that the absolute levels are set the same. + - ``UNIQue`` specifies that the absolute levels can be set independently. + """ + + +class MeasurementRefItemReflevelsAbsoluteRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:RISEMid + - MEASUrement:REF:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ```` is the value used as the mid reference level of the rising edge when the + measurement's ref level method is set to absolute. + """ + + +class MeasurementRefItemReflevelsAbsoluteRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:RISELow + - MEASUrement:REF:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ```` is the value used as the low reference level of the rising edge when the + measurement's ref level method is set to absolute. + """ + + +class MeasurementRefItemReflevelsAbsoluteRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:RISEHigh + - MEASUrement:REF:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ```` is the value used as the high reference level of the rising edge when the + measurement's ref level method is set to absolute. + """ + + +class MeasurementRefItemReflevelsAbsoluteHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when the + measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:HYSTeresis + - MEASUrement:REF:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ```` is the value of the hysteresis of the reference level when the measurement's ref + level method is set to absolute. + """ + + +class MeasurementRefItemReflevelsAbsoluteFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:FALLMid + - MEASUrement:REF:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ```` is the value used as the mid reference level of the falling edge when the + measurement's ref level method is set to absolute. + """ + + +class MeasurementRefItemReflevelsAbsoluteFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling edge + when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:FALLLow + - MEASUrement:REF:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ```` is the value used as the low reference level of the falling edge when the + measurement's ref level method is set to absolute. + """ + + +class MeasurementRefItemReflevelsAbsoluteFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:FALLHigh + - MEASUrement:REF:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ```` is the value used as the high reference level of the falling edge when the + measurement's ref level method is set to absolute. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementRefItemReflevelsAbsolute(SCPICmdRead): + """The ``MEASUrement:REF:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF:REFLevels:ABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.fallhigh``: The ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:REF:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:REF:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:REF:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:REF:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:REF:REFLevels:ABSolute:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementRefItemReflevelsAbsoluteFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = MeasurementRefItemReflevelsAbsoluteFalllow( + device, f"{self._cmd_syntax}:FALLLow" + ) + self._fallmid = MeasurementRefItemReflevelsAbsoluteFallmid( + device, f"{self._cmd_syntax}:FALLMid" + ) + self._hysteresis = MeasurementRefItemReflevelsAbsoluteHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementRefItemReflevelsAbsoluteRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = MeasurementRefItemReflevelsAbsoluteRiselow( + device, f"{self._cmd_syntax}:RISELow" + ) + self._risemid = MeasurementRefItemReflevelsAbsoluteRisemid( + device, f"{self._cmd_syntax}:RISEMid" + ) + self._type = MeasurementRefItemReflevelsAbsoluteType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> MeasurementRefItemReflevelsAbsoluteFallhigh: + """Return the ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:FALLHigh + - MEASUrement:REF:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ```` is the value used as the high reference level of the falling edge when the + measurement's ref level method is set to absolute. + """ + return self._fallhigh + + @property + def falllow(self) -> MeasurementRefItemReflevelsAbsoluteFalllow: + """Return the ``MEASUrement:REF:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:FALLLow + - MEASUrement:REF:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ```` is the value used as the low reference level of the falling edge when the + measurement's ref level method is set to absolute. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementRefItemReflevelsAbsoluteFallmid: + """Return the ``MEASUrement:REF:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:FALLMid + - MEASUrement:REF:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ```` is the value used as the mid reference level of the falling edge when the + measurement's ref level method is set to absolute. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementRefItemReflevelsAbsoluteHysteresis: + """Return the ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when + the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:HYSTeresis + - MEASUrement:REF:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ```` is the value of the hysteresis of the reference level when the measurement's + ref level method is set to absolute. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementRefItemReflevelsAbsoluteRisehigh: + """Return the ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:RISEHigh + - MEASUrement:REF:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ```` is the value used as the high reference level of the rising edge when the + measurement's ref level method is set to absolute. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementRefItemReflevelsAbsoluteRiselow: + """Return the ``MEASUrement:REF:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:RISELow + - MEASUrement:REF:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ```` is the value used as the low reference level of the rising edge when the + measurement's ref level method is set to absolute. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementRefItemReflevelsAbsoluteRisemid: + """Return the ``MEASUrement:REF:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising + edge when the measurement's ref level method is set to absolute. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:RISEMid + - MEASUrement:REF:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ```` is the value used as the mid reference level of the rising edge when the + measurement's ref level method is set to absolute. + """ + return self._risemid + + @property + def type(self) -> MeasurementRefItemReflevelsAbsoluteType: + """Return the ``MEASUrement:REF:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the measurement. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:TYPE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:REF:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``SAME`` specifies that the absolute levels are set the same. + - ``UNIQue`` specifies that the absolute levels can be set independently. + """ + return self._type + + +class MeasurementRefItemReflevels(SCPICmdRead): + """The ``MEASUrement:REF:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REF:REFLevels?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.absolute``: The ``MEASUrement:REF:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:REF:REFLevels:BASETop`` command. + - ``.method``: The ``MEASUrement:REF:REFLevels:METHod`` command. + - ``.percent``: The ``MEASUrement:REF:REFLevels:PERCent`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._absolute = MeasurementRefItemReflevelsAbsolute(device, f"{self._cmd_syntax}:ABSolute") + self._basetop = MeasurementRefItemReflevelsBasetop(device, f"{self._cmd_syntax}:BASETop") + self._method = MeasurementRefItemReflevelsMethod(device, f"{self._cmd_syntax}:METHod") + self._percent = MeasurementRefItemReflevelsPercent(device, f"{self._cmd_syntax}:PERCent") + + @property + def absolute(self) -> MeasurementRefItemReflevelsAbsolute: + """Return the ``MEASUrement:REF:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF:REFLevels:ABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:REF:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:REF:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:REF:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:REF:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:REF:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:REF:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:REF:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:REF:REFLevels:ABSolute:TYPE`` command. + """ + return self._absolute + + @property + def basetop(self) -> MeasurementRefItemReflevelsBasetop: + """Return the ``MEASUrement:REF:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE, used to + calculate reference levels for the measurement. + + Usage: + - Using the ``.write()`` method will send the ``MEASUrement:REF:REFLevels:BASETop`` + command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:BASETop + ``` + + Info: + - ``AUTO`` automatically chooses a reference level method. + - ``MINMax`` specifies that reference levels are relative to the measurement MIN and + MAX. + - ``MEANhistogram`` specifies that reference levels are relative to the histogram mean + BASE and TOP. + - ``MODEhistogram`` specifies that reference levels are relative to the histogram mode + BASE and TOP. + - ``EYEhistogram`` specifies that reverence levels are relative to the eye histogram + BASE and TOP. + """ + return self._basetop + + @property + def method(self) -> MeasurementRefItemReflevelsMethod: + """Return the ``MEASUrement:REF:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF:REFLevels:METHod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:REF:REFLevels:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:REF:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:REF:REFLevels:METHod? + ``` + + Info: + - ``PERCent`` specifies that the reference levels are calculated as a percent relative + to HIGH and LOW. The percentages are defined using the + ``MEASUrement:REF:REFLevel:PERCent`` commands. + - ``ABSolute`` specifies that the reference levels are set explicitly using the + ``MEASUrement:REF:REFLevel:ABSolute`` commands. This method is useful when precise + values are required. + """ + return self._method + + @property + def percent(self) -> MeasurementRefItemReflevelsPercent: + """Return the ``MEASUrement:REF:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF:REFLevels:PERCent?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:REF:REFLevels:PERCent?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:REF:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:REF:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:REF:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:REF:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:REF:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:REF:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:REF:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:REF:REFLevels:PERCent:TYPE`` command. + """ + return self._percent + + +class MeasurementRefItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``MEASUrement:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REF?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.reflevels``: The ``MEASUrement:REF:REFLevels`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._reflevels = MeasurementRefItemReflevels(device, f"{self._cmd_syntax}:REFLevels") + + @property + def reflevels(self) -> MeasurementRefItemReflevels: + """Return the ``MEASUrement:REF:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REF:REFLevels?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.absolute``: The ``MEASUrement:REF:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:REF:REFLevels:BASETop`` command. + - ``.method``: The ``MEASUrement:REF:REFLevels:METHod`` command. + - ``.percent``: The ``MEASUrement:REF:REFLevels:PERCent`` command tree. + """ + return self._reflevels + + +class MeasurementPopulationLimitValue(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:POPUlation:LIMIT:VALue`` command. + + Description: + - This command sets or queries the global population limit value for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:POPUlation:LIMIT:VALue?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:POPUlation:LIMIT:VALue?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:POPUlation:LIMIT:VALue value`` command. + + SCPI Syntax: + ``` + - MEASUrement:POPUlation:LIMIT:VALue + - MEASUrement:POPUlation:LIMIT:VALue? + ``` + + Info: + - ```` is the current limit value. + """ + + +class MeasurementPopulationLimitState(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:POPUlation:LIMIT:STATE`` command. + + Description: + - This command sets or queries the global population limit state for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:POPUlation:LIMIT:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:POPUlation:LIMIT:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:POPUlation:LIMIT:STATE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:POPUlation:LIMIT:STATE {OFF|ON|0|1 } + - MEASUrement:POPUlation:LIMIT:STATE? + ``` + + Info: + - ``OFF`` turns off the population limit. + - ``ON`` turns on the population limit. + - ``0`` turns off the population limit. + - ``1`` turns on the population limit. + """ + + +class MeasurementPopulationLimit(SCPICmdRead): + """The ``MEASUrement:POPUlation:LIMIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:POPUlation:LIMIT?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:POPUlation:LIMIT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``MEASUrement:POPUlation:LIMIT:STATE`` command. + - ``.value``: The ``MEASUrement:POPUlation:LIMIT:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = MeasurementPopulationLimitState(device, f"{self._cmd_syntax}:STATE") + self._value = MeasurementPopulationLimitValue(device, f"{self._cmd_syntax}:VALue") + + @property + def state(self) -> MeasurementPopulationLimitState: + """Return the ``MEASUrement:POPUlation:LIMIT:STATE`` command. + + Description: + - This command sets or queries the global population limit state for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:POPUlation:LIMIT:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:POPUlation:LIMIT:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:POPUlation:LIMIT:STATE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:POPUlation:LIMIT:STATE {OFF|ON|0|1 } + - MEASUrement:POPUlation:LIMIT:STATE? + ``` + + Info: + - ``OFF`` turns off the population limit. + - ``ON`` turns on the population limit. + - ``0`` turns off the population limit. + - ``1`` turns on the population limit. + """ + return self._state + + @property + def value(self) -> MeasurementPopulationLimitValue: + """Return the ``MEASUrement:POPUlation:LIMIT:VALue`` command. + + Description: + - This command sets or queries the global population limit value for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:POPUlation:LIMIT:VALue?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:POPUlation:LIMIT:VALue?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:POPUlation:LIMIT:VALue value`` command. + + SCPI Syntax: + ``` + - MEASUrement:POPUlation:LIMIT:VALue + - MEASUrement:POPUlation:LIMIT:VALue? + ``` + + Info: + - ```` is the current limit value. + """ + return self._value + + +class MeasurementPopulation(SCPICmdRead): + """The ``MEASUrement:POPUlation`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:POPUlation?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.limit``: The ``MEASUrement:POPUlation:LIMIT`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._limit = MeasurementPopulationLimit(device, f"{self._cmd_syntax}:LIMIT") + + @property + def limit(self) -> MeasurementPopulationLimit: + """Return the ``MEASUrement:POPUlation:LIMIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:POPUlation:LIMIT?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:POPUlation:LIMIT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``MEASUrement:POPUlation:LIMIT:STATE`` command. + - ``.value``: The ``MEASUrement:POPUlation:LIMIT:VALue`` command. + """ + return self._limit + + +class MeasurementMinui(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MINUI`` command. + + Description: + - This command sets or queries the minimum number of unit intervals required for BUJ + analysis. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MINUI?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MINUI?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MINUI value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MINUI + - MEASUrement:MINUI? + ``` + + Info: + - ```` is the minimum number of unit intervals required for BUJ analysis. + """ + + +class MeasurementMechStype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MECH:STYPe`` command. + + Description: + - This command sets or queries the measurement sensor type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:STYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:STYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:STYPe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:STYPe {HSENSOR|QEI} + - MEASUrement:MECH:STYPe? + ``` + + Info: + - ``HSENSOR`` specifies the sensor type as HSENSOR. + - ``QEI`` specifies the sensor type as QEI. + """ + + +class MeasurementMechSource1(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MECH:SOUrce1`` command. + + Description: + - This command sets or queries the global mechanical source of the specified source number. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:SOUrce1?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:SOUrce1?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:SOUrce1 value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:SOUrce1 {S_Ch|CH|MATH|REF|CH_D} + - MEASUrement:MECH:SOUrce1? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source waveform. + - ``MATH`` specifies a math waveform as the source waveform. + - ``REF`` specifies an reference waveform as the source waveform . + - ``CH_D`` specifies a digital channel as the source waveform. + """ + + +class MeasurementMechPprotation(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MECH:PPRotation`` command. + + Description: + - This command sets or queries the global pulses per rotation of the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:PPRotation?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:PPRotation?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:PPRotation value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:PPRotation + - MEASUrement:MECH:PPRotation? + ``` + + Info: + - ```` defines the pulses per rotation of the measurement. The minimum to maximum range + is 1 to 100000. + """ + + +class MeasurementMechPpairs(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MECH:PPAirs`` command. + + Description: + - This command sets or queries the measurement number of pole pairs. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:PPAirs?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:PPAirs?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:PPAirs value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:PPAirs + - MEASUrement:MECH:PPAirs? + ``` + + Info: + - ```` defines the number of pole pairs for the specified measurement. The minimum to + maximum range is 1 to 20. + """ + + +class MeasurementMechMunits(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MECH:MUNits`` command. + + Description: + - This command sets or queries the global mechanical measurement results units. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:MUNits?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:MUNits?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:MUNits value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:MUNits {NM|OZINCH|FTLB|INCHLB|DEGREES|RADIANS} + - MEASUrement:MECH:MUNits? + ``` + + Info: + - ``NM`` specifies the results units of mechanical Torque measurement as NM. + - ``OZINCH`` specifies the results units of mechanical Torque measurement as OZINCH. + - ``FTLB`` specifies the results units of mechanical Torque measurement as FTLB. + - ``INCHLB`` specifies the results units of mechanical Torque measurement as INCHLB. + - ``DEGREES`` specifies the results units of mechanical Torque measurement as DEGREES. + - ``RADIANS`` specifies the results units of mechanical Torque measurement as RADIANS. + """ + + +class MeasurementMechGratio(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MECH:GRATio`` command. + + Description: + - This command sets or queries the measurement gear ratio. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:GRATio?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:GRATio?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:GRATio value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:GRATio + - MEASUrement:MECH:GRATio? + ``` + + Info: + - ```` specifies the gear ratio value for a specified measurement. The minimum and + maximum values are 0.001 to 1000. + """ + + +class MeasurementMechEindexz(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MECH:EINDexz`` command. + + Description: + - This command sets or queries the global mechanical Index Z source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:EINDexz?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:EINDexz?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:EINDexz value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:EINDexz {ON|OFF|1|0} + - MEASUrement:MECH:EINDexz? + ``` + + Info: + - ``ON`` specifies the Index Z check box state as enabled. + - ``OFF`` specifies the Index Z check box state as disabled. + - ``1`` specifies the Index Z check box state as enabled. + - ``0`` specifies the Index Z check box state as disabled. + """ + + +class MeasurementMech(SCPICmdRead): + """The ``MEASUrement:MECH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.eindexz``: The ``MEASUrement:MECH:EINDexz`` command. + - ``.gratio``: The ``MEASUrement:MECH:GRATio`` command. + - ``.munits``: The ``MEASUrement:MECH:MUNits`` command. + - ``.ppairs``: The ``MEASUrement:MECH:PPAirs`` command. + - ``.pprotation``: The ``MEASUrement:MECH:PPRotation`` command. + - ``.source1``: The ``MEASUrement:MECH:SOUrce1`` command. + - ``.stype``: The ``MEASUrement:MECH:STYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._eindexz = MeasurementMechEindexz(device, f"{self._cmd_syntax}:EINDexz") + self._gratio = MeasurementMechGratio(device, f"{self._cmd_syntax}:GRATio") + self._munits = MeasurementMechMunits(device, f"{self._cmd_syntax}:MUNits") + self._ppairs = MeasurementMechPpairs(device, f"{self._cmd_syntax}:PPAirs") + self._pprotation = MeasurementMechPprotation(device, f"{self._cmd_syntax}:PPRotation") + self._source1 = MeasurementMechSource1(device, f"{self._cmd_syntax}:SOUrce1") + self._stype = MeasurementMechStype(device, f"{self._cmd_syntax}:STYPe") + + @property + def eindexz(self) -> MeasurementMechEindexz: + """Return the ``MEASUrement:MECH:EINDexz`` command. + + Description: + - This command sets or queries the global mechanical Index Z source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:EINDexz?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:EINDexz?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:EINDexz value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:EINDexz {ON|OFF|1|0} + - MEASUrement:MECH:EINDexz? + ``` + + Info: + - ``ON`` specifies the Index Z check box state as enabled. + - ``OFF`` specifies the Index Z check box state as disabled. + - ``1`` specifies the Index Z check box state as enabled. + - ``0`` specifies the Index Z check box state as disabled. + """ + return self._eindexz + + @property + def gratio(self) -> MeasurementMechGratio: + """Return the ``MEASUrement:MECH:GRATio`` command. + + Description: + - This command sets or queries the measurement gear ratio. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:GRATio?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:GRATio?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:GRATio value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:GRATio + - MEASUrement:MECH:GRATio? + ``` + + Info: + - ```` specifies the gear ratio value for a specified measurement. The minimum and + maximum values are 0.001 to 1000. + """ + return self._gratio + + @property + def munits(self) -> MeasurementMechMunits: + """Return the ``MEASUrement:MECH:MUNits`` command. + + Description: + - This command sets or queries the global mechanical measurement results units. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:MUNits?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:MUNits?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:MUNits value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:MUNits {NM|OZINCH|FTLB|INCHLB|DEGREES|RADIANS} + - MEASUrement:MECH:MUNits? + ``` + + Info: + - ``NM`` specifies the results units of mechanical Torque measurement as NM. + - ``OZINCH`` specifies the results units of mechanical Torque measurement as OZINCH. + - ``FTLB`` specifies the results units of mechanical Torque measurement as FTLB. + - ``INCHLB`` specifies the results units of mechanical Torque measurement as INCHLB. + - ``DEGREES`` specifies the results units of mechanical Torque measurement as DEGREES. + - ``RADIANS`` specifies the results units of mechanical Torque measurement as RADIANS. + """ + return self._munits + + @property + def ppairs(self) -> MeasurementMechPpairs: + """Return the ``MEASUrement:MECH:PPAirs`` command. + + Description: + - This command sets or queries the measurement number of pole pairs. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:PPAirs?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:PPAirs?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:PPAirs value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:PPAirs + - MEASUrement:MECH:PPAirs? + ``` + + Info: + - ```` defines the number of pole pairs for the specified measurement. The minimum + to maximum range is 1 to 20. + """ + return self._ppairs + + @property + def pprotation(self) -> MeasurementMechPprotation: + """Return the ``MEASUrement:MECH:PPRotation`` command. + + Description: + - This command sets or queries the global pulses per rotation of the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:PPRotation?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:PPRotation?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:PPRotation value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:PPRotation + - MEASUrement:MECH:PPRotation? + ``` + + Info: + - ```` defines the pulses per rotation of the measurement. The minimum to maximum + range is 1 to 100000. + """ + return self._pprotation + + @property + def source1(self) -> MeasurementMechSource1: + """Return the ``MEASUrement:MECH:SOUrce1`` command. + + Description: + - This command sets or queries the global mechanical source of the specified source + number. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:SOUrce1?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:SOUrce1?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:SOUrce1 value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:SOUrce1 {S_Ch|CH|MATH|REF|CH_D} + - MEASUrement:MECH:SOUrce1? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source waveform. + - ``MATH`` specifies a math waveform as the source waveform. + - ``REF`` specifies an reference waveform as the source waveform . + - ``CH_D`` specifies a digital channel as the source waveform. + """ + return self._source1 + + @property + def stype(self) -> MeasurementMechStype: + """Return the ``MEASUrement:MECH:STYPe`` command. + + Description: + - This command sets or queries the measurement sensor type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH:STYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH:STYPe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MECH:STYPe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MECH:STYPe {HSENSOR|QEI} + - MEASUrement:MECH:STYPe? + ``` + + Info: + - ``HSENSOR`` specifies the sensor type as HSENSOR. + - ``QEI`` specifies the sensor type as QEI. + """ + return self._stype + + +class MeasurementMeasrangeState(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEASRange:STATE`` command. + + Description: + - This command sets or queries the global range state. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEASRange:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEASRange:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEASRange:STATE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEASRange:STATE {OFF|ON|0|1} + - MEASUrement:MEASRange:STATE? + ``` + + Info: + - ``OFF`` specifies that the measurement results are not limited. + - ``ON`` specifies that the measurement results are limited to results with values between + the range minimum and maximum. + - ``0`` specifies that the measurement results are not limited. + - ``1`` specifies that the measurement results are limited to results with values between + the range minimum and maximum. + """ + + +class MeasurementMeasrangeMin(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEASRange:MIN`` command. + + Description: + - This command sets or queries the global range minimum value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEASRange:MIN?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEASRange:MIN?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEASRange:MIN value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEASRange:MIN + - MEASUrement:MEASRange:MIN? + ``` + + Info: + - ```` is the minimum measurement range limit value. + """ + + +class MeasurementMeasrangeMax(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEASRange:MAX`` command. + + Description: + - This command sets or queries the global range maximum value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEASRange:MAX?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEASRange:MAX?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEASRange:MAX value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEASRange:MAX + - MEASUrement:MEASRange:MAX? + ``` + + Info: + - ```` is the maximum measurement range limit value. + """ + + +class MeasurementMeasrange(SCPICmdRead): + """The ``MEASUrement:MEASRange`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEASRange?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEASRange?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.max``: The ``MEASUrement:MEASRange:MAX`` command. + - ``.min``: The ``MEASUrement:MEASRange:MIN`` command. + - ``.state``: The ``MEASUrement:MEASRange:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._max = MeasurementMeasrangeMax(device, f"{self._cmd_syntax}:MAX") + self._min = MeasurementMeasrangeMin(device, f"{self._cmd_syntax}:MIN") + self._state = MeasurementMeasrangeState(device, f"{self._cmd_syntax}:STATE") + + @property + def max(self) -> MeasurementMeasrangeMax: + """Return the ``MEASUrement:MEASRange:MAX`` command. + + Description: + - This command sets or queries the global range maximum value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEASRange:MAX?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEASRange:MAX?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEASRange:MAX value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEASRange:MAX + - MEASUrement:MEASRange:MAX? + ``` + + Info: + - ```` is the maximum measurement range limit value. + """ + return self._max + + @property + def min(self) -> MeasurementMeasrangeMin: + """Return the ``MEASUrement:MEASRange:MIN`` command. + + Description: + - This command sets or queries the global range minimum value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEASRange:MIN?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEASRange:MIN?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEASRange:MIN value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEASRange:MIN + - MEASUrement:MEASRange:MIN? + ``` + + Info: + - ```` is the minimum measurement range limit value. + """ + return self._min + + @property + def state(self) -> MeasurementMeasrangeState: + """Return the ``MEASUrement:MEASRange:STATE`` command. + + Description: + - This command sets or queries the global range state. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEASRange:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEASRange:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEASRange:STATE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEASRange:STATE {OFF|ON|0|1} + - MEASUrement:MEASRange:STATE? + ``` + + Info: + - ``OFF`` specifies that the measurement results are not limited. + - ``ON`` specifies that the measurement results are limited to results with values + between the range minimum and maximum. + - ``0`` specifies that the measurement results are not limited. + - ``1`` specifies that the measurement results are limited to results with values + between the range minimum and maximum. + """ + return self._state + + +class MeasurementMeasItemYunit(SCPICmdRead): + """The ``MEASUrement:MEAS:YUNIT`` command. + + Description: + - Returns the vertical scale units of the specified measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:YUNIT?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:YUNIT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:YUNIT? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ + + +class MeasurementMeasItemXunit(SCPICmdRead): + """The ``MEASUrement:MEAS:XUNIT`` command. + + Description: + - Returns the horizontal scale units of the specified measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:XUNIT?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:XUNIT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:XUNIT? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ + + +class MeasurementMeasItemWindowlength(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:WINDOWLENgth`` command. + + Description: + - This command sets or queries the window length for the measurement. The measurement number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:WINDOWLENgth?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:WINDOWLENgth?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:WINDOWLENgth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:WINDOWLENgth + - MEASUrement:MEAS:WINDOWLENgth? + ``` + + Info: + - ```` is the value for the window length. + """ + + +class MeasurementMeasItemWaittime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:WAITTime`` command. + + Description: + - Sets or queries the wait time. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:WAITTime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:WAITTime?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:WAITTime value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:WAITTime + - MEASUrement:MEAS:WAITTime? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the wait time, in the range of 1 s to 500 s. + """ + + +class MeasurementMeasItemType(SCPICmdWrite, SCPICmdRead): + r"""The ``MEASUrement:MEAS:TYPe`` command. + + Description: + - This command sets or queries the measurement type for the measurement specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TYPe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TYPe {ACCOMMONMODE|ACRMS|AMPlITUDE|AREA|BASE|BITAMPLITUDE|BITHIGH|BITLOW|BURSTWIDTH|COMMONMODE|DATARATE|DCD|DDJ|DDRAOS|DDRAOSPERTCK|DDRAOSPERUI|DDRAUS|DDRAUSPERTCK|DDRAUSPERUI|DDRHOLDDIFF|DDRSETUPDIFF|DDRTCHABS|DDRTCHAVERAGE|DDRTCKAVERAGE|DDRTCLABS|DDRTCLAVERAGE|DDRTERRMN|DDRTERRN|DDRTJITCC|DDRTJITDUTY|DDRTJITPER|DDRTPST|DDRTRPRE|DDRTWPRE|DDRVIXAC|DDRTDQSCK|DELAY|DJ|DJDIRAC|DPMOVERSHOOT|DPMUNDERSHOOT|DPMRIPPLE|DPMTURNOFFTIME|DPMTURNONTIME|EYEHIGH|EYELOW|FALLSLEWRATE|FALLTIME|FREQUENCY|F2|F4|F8|HIGH|HEIGHT|HEIGHTBER|HIGHTIME|HOLD|IMDAPOWERQUALITY|IMDAHARMONICS|IMDAINPUTVOLTAGE|IMDAINPUTCURRENT|IMDAINPUTPOWER|IMDAPHASORDIAGRAM|IMDAEFFICIENCY|IMDALINERIPPLE|IMDASWITCHRIPPLE|IMDADQ0|JITTERSUMMARY|J2|J9|LOW|LOWTIME|MAXIMUM|MEAN|MINIMUM|NDUtY|NPERIOD|NPJ|NOVERSHOOT|NWIDTH|PDUTTY|PERIOD|PHASE|PHASENOISE|PJ|PK2Pk|POVERSHOOT|PWIDTH|QFACTOR|RISESLEWRATE|RISETIME|RJ|RJDIRAC|RMS|SRJ|SSCFREQDEV|SSCMODRATE|SETUP|SKEW|TIE|TIMEOUTSIDELEVEL|TJBER|TNTRATIO|TOP|UNITINTERVAL|VDIFFXOVR|WIDTH|WIDTHBER} + - MEASUrement:MEAS:TYPe? + ``` + + Info: + - ``ACCOMMONMODE`` AC Common Mode (Pk-Pk) is the peak-to-peak of the common mode voltage of + two sources. This measurement is made across the entire record. This measurement requires + the DJA option and is not available on a 4 Series MSO instrument. + - ``ACRMS`` (AC RMS) is the true Root Mean Square of the data points, about the Mean. This + measurement can be made across the entire record, or on each cycle in the record. + - ``AMPLITUDE`` is the difference between the Top value and the Base value. This measurement + can be made across the entire record, or on each cycle in the record. + - ``Amplitude = High - Low`` + - ``AREA`` is the area under the curve, calculated by integrating the data points. The area + measured above ground is positive. The area measured below ground is negative. This + measurement can be made across the entire record, or on each cycle in the record. + - ``BASE`` is the most common data value below the midpoint of the waveform. This + measurement can be made across the entire record, or on each cycle in the record. + - ``BITAMPLITUDE`` (Bit Amplitude) is the difference between the amplitudes of the 1 bit and + the 0 bit surrounding a transition. The amplitude is measured over a user specified + portion at the center of the recovered unit interval. This measurement is made on each + transition bit in the record (Mean) or across the entire record (Mode). This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BITHIGH`` (Bit High) is the amplitude of a 1 bit. The amplitude is measured over a user + specified portion at the center of the recovered unit interval. This measurement is made + on each high bit in the record (Mean) or across the entire record (Mode). This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BITLOW`` (Bit Low) is the amplitude of a 0 bit. The amplitude is measured over a user + specified portion at the center of the recovered unit interval. This measurement is made + on each high bit in the record (Mean) or across the entire record (Mode). This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BURSTWIDTH`` (Burst Width) is the duration of a series of adjacent crossings of the Mid + reference level (RM). Bursts are separated by a user-defined idle time (tI). This + measurement is made on each burst in the record. + - ``COMMONMODE`` (DC Common Mode) is the arithmetic mean of the common mode voltage of two + sources. This measurement is made across the entire record. This measurement requires the + DJA option and is not available on a 4 Series MSO instrument. + - ``DATARATE`` (Data Rate) is the reciprocal of Unit Interval. This measurement is made on + each bit in the record. + - ``DCD`` (duty cycle distortion) is the peak-to-peak amplitude of the component of the + deterministic jitter correlated with the signal polarity. This measurement is made across + the entire record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``DDJ`` (data dependent jitter) is the peak-to-peak amplitude of the component of the + deterministic jitter correlated with the data pattern in the waveform. This measurement is + made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``DDRAOS`` (area above signal) is the total area of the signal above a specified reference + level. This measurement is made across the entire record. + - ``DDRAOSPERTCK`` (area over signal for tCK events) is the total area of the signal above a + specified reference level calculated over consecutive tCK intervals. It is applicable to + clock and address/command waveforms. + - ``DDRAOSPERUI`` (area over signal for UI events) is the total area of the signal above a + specified reference level calculated over consecutive unit intervals. It is applicable to + data and data strobe waveforms. + - ``DDRAUS`` (area under signal) is the total area of the signal below a specified reference + level. This measurement is made across the entire record. + - ``DDRAUSPERTCK`` (area under signal for tCK events) is the total area of the signal below + a specified reference level calculated over consecutive tCK intervals. It is applicable to + clock and address/command waveforms. + - ``DDRAUSPERUI`` (area under signal for UI events) is the total area of the signal below a + specified reference level calculated over consecutive unit intervals. It is applicable to + data and data strobe waveforms. + - ``DDRHOLDDIFF`` (hold difference) is the elapsed time between the specified edge of a + single-ended clock waveform and the specified edge of a differential data waveform. The + measurement uses the closest respective waveform edges that fall within the range + limits.This measurement is made across the entire record. + - ``DDRSETUPDIFF`` (setup difference) is the elapsed time between the specified edge of a + single-ended clock waveform and when the specified edge of a differential data waveform + crosses a specified level. The measurement uses the closest respective waveform edges that + fall within the range limits. This measurement is made across the entire record. + - ``DDRTCHABS`` (absolute high pulse width) is the absolute value of the high pulse width as + measured from one rising edge to the next falling edge. + - ``DDRTCHAVERAGE`` (average high pulse width) is the average value of the high pulse width + as measured from one rising edge to the next falling edge, across 200 consecutive + cycles.This measurement is made across the entire record. + - ``DDRTCKAVERAGE`` (average clock period) is the average clock period calculated from + rising edge to rising edge, across 200 consecutive cycles.This measurement is made across + the entire record. + - ``DDRTCLABS`` (absolute low pulse width) is the absolute value of the low pulse width as + measured from a falling edge to the next rising edge. This measurement is made across the + entire record. + - ``DDRTCLAVERAGE`` (average low pulse width) is the average value of the low pulse width as + measured from one falling edge to the next rising edge, across 200 consecutive cycles. + - ``DDRTERRMN`` (cumulative error) is the cumulative error across multiple consecutive + defined cycles from tCK(avg). + - ``DDRTERRN`` (cumulative error) is the cumulative error across specified consecutive + cycles from tCK(avg). In other words, this measures the time difference between the sum of + the clock period from a 200 cycle window and n times tCK(avg). + - ``DDRTJITCC`` (cycle to cycle jitter period) is the absolute difference in clock period + between two consecutive clock cycles. This measurement is made across the entire record. + - ``DDRTJITDUTY`` (half period jitter) is the largest elapsed time between tCH and tCH(avg), + and tCL and tCL(avg), over 200 consecutive cycles. + - ``DDRTJITPER`` (clock period jitter) is the largest deviation of any tCK signal from + tCK(avg). This measurement is made across the entire record. + - ``DDRTPST`` (read/write burst postamble) is the width of the Read or Write burst + postamble, measured from the last falling edge of the mid reference level to the start of + an undriven state. This measurement is made across the entire record. + - ``DDRTRPRE`` (read burst preamble) is the width of the Read burst preamble, measured from + exiting tristate levels to the first driving edge of the differential strobe. This + measurement is made across the entire record. + - ``DDRTWPRE`` is the width of the Write burst preamble, measured from exiting tristate + levels to the first driving edge of the differential strobe. This measurement is made + across the entire record. + - ``DDRVIXAC`` is the differential input cross-point voltage measured from the true state + transition (and it's compliment) to a specified reference level, measured on a + single-ended signal. + - ``DDRTDQSCK`` is the strobe output access time, measured between the rising edge of the + clock and before or after the differential strobe Read preamble time. Signal edges are + determined by the mid-ref threshold level settings. + - ``DELay`` is the time between the specified Mid reference level (RM) crossing on one + source to a specified Mid reference level (RM) crossing on a second source. This + measurement is made on the first occurrence in the record. + - ``DJ`` (deterministic jitter) is the peak-to-peak amplitude of all timing errors that + exhibit deterministic behavior. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``DJDIRAC`` (dual-dirac deterministic jitter) is deterministic jitter based on a + simplifying assumption that the histogram of all deterministic jitter can be modeled as a + pair of equal-magnitude Dirac functions. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``DPMOVERSHOOT`` is the difference between Maximum and Top, divided by the amplitude. This + measurement can be made across the entire record or on each cycle in the record at the + specified reference voltage. + - ``DPMUNDERSHOOT`` is the difference between Minimum and Base, divided by the amplitude. + This measurement can be made across the entire record or on each cycle in the record at + the specified reference voltage. + - ``DPMRIPPLE`` is the RMS and peak-to-peak values of the output signal on the DC Rail. + - ``DPMTURNOFFTIME`` is the time delay between load current going low to other rail outputs + going low during power down. + - ``DPMTURNONTIME`` is the time delay between load current going high to other rail outputs + going high during power on. + - ``EYEHIGH`` (Eye High) is the amplitude of a high (1) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each high bit in + the record. This measurement requires the DJA option and is not available on a 4 Series + MSO instrument. + - ``EYELOW`` (Eye Low) is the amplitude of a low (0) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each low bit in + the record. This measurement requires the DJA option and is not available on a 4 Series + MSO instrument. + - ``FALLSLEWRATE`` (Falling Slew Rate) is the rate of change in voltage as an edge + transitions from the Top reference level (RT) to the Bottom reference level (RB). This + measurement is made on each cycle in the record. + - ``FALLTIME`` (Fall Time) is the time required for an edge to fall from the Top reference + level (RT) to the Base reference level (RB). This measurement is made on each cycle in the + record. + - ``FREQuency`` is the reciprocal of Period. This measurement is made on each cycle in the + record. + - ``F2`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 2. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``F4`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 4. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``F8`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 8. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``HIGH`` (Eye High) is the amplitude of a high (1) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each high bit in + the record. + - ``HEIGHT`` (Eye Height) is the minimum vertical eye opening at the center of the recovered + unit interval. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``HEIGHTBER`` (Eye Height@BER) is the predicted vertical eye opening that will be violated + with a probability equal to the bit error rate. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``HIGHTIME`` (High Time) is the time the signal remains above the Top reference level + (RT). This measurement is made on each cycle in the record. + - ``HOLD`` (Hold Time) is the time between the specified Mid reference level crossing (RM) + on the Clock source to the closest specified Mid reference level (RM) crossing on the Data + source. This measurement is made on each specified Clock edge in the record. + - ``IMDAPOWERQUALITY`` (Power Quality) measures the Frequency and RMS values of the voltage + and current, Crest Factors of the voltage and current, True Power (PTRUE), Reactive Power + (PRE), Apparent Power (PAPP), Power Factor, and Phase Angle (θ) of the AC signal. + - ``IMDAHARMONICS`` (Harmonics) plots the signal amplitude at the fundamental line frequency + and its harmonics and measures the RMS amplitude and Total Harmonic Distortion of the + signal. + - ``IMDAINPUTVOLTAGE`` (Input Voltage) measures the RMS value of the Input Voltages. The + number of voltages can vary with wiring configuration. + - ``IMDAINPUTCURRENT`` (Input Current) measures the RMS value of the Input Currents. The + number of currents can vary with wiring configuration. + - ``IMDAINPUTPOWER`` (Input Power) measures the RMS value of the Input Power. The power + waveforms are shown as derived MATH waveforms, which are respective pairs of Input Voltage + \\* Current waveforms. + - ``IMDAPHASORDIAGRAM`` (Phasor Diagram) represents magnitudes and phase angles between + voltage(s) and current(s) per winding pair. + - ``IMDAEFFICIENCY`` (Efficiency) measures the ratio of sum of output power(s) to input + power for respective input and output Voltage and Current pairs. Note: the current release + cannot support 3V and 3I pairs, since this requires 12 channels. We restrict to 2V and 2I + which needs 8 scope channels. + - ``IMDALINERIPPLE`` (Line Ripple) provides the RMS and peak-to-peak measurements of the + line frequency portion of the respective AC Voltage or Current signals. + - ``IMDASWITCHINGRIPPLE`` (Switching Ripple) provides the RMS and peak-to-peak measurements + of the respective Voltage or Current signals. + - ``IMDADQ0`` measures the DQ0 values of the phasor plot. This measurement requires options + IMDA and IMDA-DQ0. + - ``JITTERSUMMARY`` (Jitter Summary) is a group consisting of the following measurements: + TIE, TJ@BER, Eye Width@BER, Eye Height@BER, RJ-δδ, DJ-δδ, PJ, DDJ, DcD, F/2, F/4, F/8. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``J2`` is the total jitter at a bit error rate of 2.5e-3 (TJ@2.5e-3). This measurement is + made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``J9`` is the total jitter at a bit error rate of 2.5e-10 (TJ@2.5e-10). This measurement + is made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``LOW`` (Eye Low) is the amplitude of a low (0) bit measured at a user specified location + within the recovered unit interval. This measurement is made on each low bit in the + record. + - ``LOWTIME`` (Low Time) is the time the signal remains below the Base reference level (RB). + This measurement is made on each cycle in the record. + - ``MAXimum`` is the maximum data point. This measurement can be made across the entire + record, or on each cycle in the record. + - ``MEAN`` is the arithmetic mean of the data points. This measurement can be made across + the entire record, or on each cycle in the record. + - ``MINImum`` is the minimum data point. This measurement can be made across the entire + record, or on each cycle in the record. + - ``NDUty`` (Negative Duty Cycle) is the ratio of the Negative Pulse Width to the Period. + This measurement is made on each cycle in the record. + - ``Negative Duty Cycle = (Negative Width) / Period × 100%`` + - ``NPERIOD`` (Duration N-Periods) is the time required to complete N cycles. A cycle is the + time between two adjacent (same direction) crossings of the Mid reference level (RM). This + measurement is made on each cycle in the record. + - ``NPJ`` (non-periodic jitter) is the portion of the BUJ (bounded uncorrelated jitter) that + is random. BUJ excludes DDJ, DCD and RJ. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``NOVershoot`` (Negative Overshoot) is the difference between Minimum and Base, divided by + the Amplitude. This measurement can be made across the entire record, or on each cycle in + the record. + - ``Negative Overshoot = (Base - Minimum) / Amplitude × 100%)`` + - ``NWIdth`` (Negative Pulse Width) is the time the signal remains below the Mid reference + level (RM). This measurement is made on each cycle in the record. + - ``PDUTY`` (Positive Duty Cycle) is the ratio of the Positive Pulse Width to the Period. + This measurement is made on each cycle in the record. + - ``Positive Duty Cycle = (Positive Width)/Period × 100%`` + - ``PERIOD`` is the time required to complete a cycle. A cycle is the time between two + adjacent (same direction) crossings of the Mid reference level (RM). This measurement is + made on each cycle in the record. + - ``PHASE`` is the ratio of the Skew between two sources to the Period of the first source. + This measurement is made on each cycle in the record. + - ``PHASENOISE`` (Phase Noise) is the RMS magnitude of all integrated jitter falling within + a user specified offset range of the fundamental clock frequency. This measurement is made + across the entire record. This measurement is not available on a 4 Series MSO instrument. + - ``PJ`` (periodic jitter) is the peak-to-peak amplitude of the uncorrelated sinusoidal + components of the deterministic jitter. This measurement is made across the entire record. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``PK2Pk`` (Peak-to-peak) is the difference between Maximum and Minimum. This measurement + can be made across the entire record, or on each cycle in the record. + - ``POVERSHOOT`` (Positive Overshoot) is the difference between Maximum and Top, divided by + the Amplitude. This measurement can be made across the entire record, or on each cycle in + the record. + - ``Positive Overshoot = (Maximum - Top) / Amplitude ×100%`` + - ``PWIDTH`` (Positive Pulse Width) is the time the signal remains above the Mid reference + level (RM). This measurement is made on each cycle in the record. + - ``QFACTOR`` (Q-Factor) is the ratio of the vertical eye opening to RMS vertical noise + measured at a user specified location within the recovered unit interval. This measurement + is made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``RISESLEWRATE`` (Rising Slew Rate) is the rate of change in voltage as an edge + transitions from the Base reference level (RB) to the Top reference level (RT). This + measurement is made on each cycle in the record. + - ``RISETIME`` Rise Time is the time required for an edge to rise from the Base reference + level (RB) to the Top reference level (RT). This measurement is made on each cycle in the + record. + - ``RJ`` (random jitter) is the RMS magnitude of all random timing errors following a + Gaussian distribution. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``RJDIRAC`` (dual-dirac random jitter) is random jitter based on a simplifying assumption + that the histogram of all deterministic jitter can be modeled as a pair of equal-magnitude + Dirac functions. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``RMS`` is the true Root Mean Square of the data points. This measurement can be made + across the entire record, or on each cycle in the record. + - ``SRJ`` (sub-rate jitter) is the composite jitter due to periodic components at 1/2, 1/4 + and 1/8 of the data rate. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``SSCFREQDEV`` (SSC Frequency Deviation) is the spread spectrum clock frequency deviation. + This measurement enables a time trend plot of the spread spectrum clock modulation + profile. This measurement is made on each cycle in the record. This measurement requires + the DJA option and is not available on a 4 Series MSO instrument. + - ``SSCMODRATE`` (SSC Modulation Rate) is the modulating frequency of a spread spectrum + clock. This measurement is made on each cycle in the record. This measurement requires the + DJA option and is not available on a 4 Series MSO instrument. + - ``SETUP`` (Setup Time) is the time between the specified Mid reference level (RM) crossing + on the Data source to the closest specified Mid reference level (RM) crossing on the Clock + source. This measurement is made on each specified Clock edge in the record. + - ``SKEW`` Skew is the time between the specified Mid reference level (RM) crossing on one + source to the following specified Mid reference level (RM) crossing on a second source. + This measurement is made on each cycle in the record. + - ``TIE`` (time interval error) is the difference, in time, between an edge in the source + waveform and the corresponding edge in a recovered reference clock. This measurement is + made on each edge in the waveform. This measurement is not available on a 4 Series MSO + instrument. + - ``TIMEOUTSIDELEVEL`` Time Outside Level is the time the signal remains above the Top + reference level (RT) and/or below the Base reference level (RB). This measurement is made + on each occurrence in the record. + - ``TJBER`` (total jitter at a specified bit error rate) is the predicted peak-to-peak + amplitude of jitter that will only be exceeded with a probability equal to the bit error + rate. This measurement is made across the entire record. This measurement requires the DJA + option and is not available on a 4 Series MSO instrument. + - ``TNTRATIO`` T/nT Ratio is the ratio of a non-transition bit voltage (2nd and subsequent + bit voltage after a transition) to its nearest preceding transition bit voltage (1st bit + voltage after the transition). Bit voltages are measured at the interpolated midpoint of + the recovered unit interval. This measurement is made on each non-transition bit in the + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``TOP`` is the most common data value above the midpoint of the waveform. This measurement + can be made across the entire record, or on each cycle in the record. + - ``UNITINTERVAL`` (Unit Interval) is the time difference between two successive bits. This + measurement is made on each bit in the record. + - ``VDIFFXOVR`` (Differential Crossover) is the voltage level of a differential signal pair + at the crossover points. This measurement is made at each crossover point in the record. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``WIDTH`` (Eye Width) is the minimum horizontal eye opening at the user specified + reference level. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``WIDTHBER`` (Eye Width@BER) is the predicted horizontal eye opening that will be violated + with a probability equal to the bit error rate. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + """ # noqa: E501 + + +class MeasurementMeasItemTransition(SCPICmdWrite): + """The ``MEASUrement:MEAS:TRANSition`` command. + + Description: + - This command sets or queries the transition edges flag for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TRANSition value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TRANSition {ON|OFF|} + ``` + + Info: + - ```` = 1, the measurement is computed on rising (if measurement type is rise time) or + falling edges (if measurement type is fall time) following a double transition only. If it + is set to 0, the measurement is computed on all rising (if measurement type is rise time) + or falling (if measurement type is fall time) edges. + - ``OFF`` computes the measurement on all rising (if measurement type is rise time) or + falling (if measurement type is fall time) edges. + - ``ON`` computes the measurement on rising (if measurement type is rise time) or falling + edges (if measurement type is fall time) following a double transition only. + """ + + +class MeasurementMeasItemTosymbolMeasureat(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TOSYmbol:MEASUREAT`` command. + + Description: + - This command sets or queries the DDR digital measurement ToSymbol MeasureAT value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOSYmbol:MEASUREAT?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:MEASUREAT?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:MEASUREAT value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:MEASUREAT {Start|Stop|ClockEdge} + - MEASUrement:MEAS:TOSYmbol:MEASUREAT? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``Start`` sets the ToSymbol MeasureAT to Start. + - ``Stop`` sets the ToSymbol MeasureAT to Stop. + - ``ClockEdge`` sets the sets the ToSymbol MeasureAT to ClockEdge. + """ + + +class MeasurementMeasItemTosymbolLogic5source(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 4 source To Symbol. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 4 To Symbol to H (High). + - ``L`` sets the logic source 4 To Symbol to L (Low). + - ``X`` sets the logic source 4 To Symbol to X (Don't care). + """ + + +class MeasurementMeasItemTosymbolLogic4source(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 3 source To Symbol. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 3 To Symbol to H (High). + - ``L`` sets the logic source 3 To Symbol to L (Low). + - ``X`` sets the logic source 3 To Symbol to X (Don't care). + """ + + +class MeasurementMeasItemTosymbolLogic3source(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 2 source To Symbol. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 2 To Symbol to H (High). + - ``L`` sets the logic source 2 To Symbol to L (Low). + - ``X`` sets the logic source 2 To Symbol to X (Don't care). + """ + + +class MeasurementMeasItemTosymbolLogic2source(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 1 source To Symbol. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 1 To Symbol to H (High). + - ``L`` sets the logic source 1 To Symbol to L (Low). + - ``X`` sets the logic source 1 To Symbol to X (Don't care). + """ + + +class MeasurementMeasItemTosymbol(SCPICmdRead): + """The ``MEASUrement:MEAS:TOSYmbol`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOSYmbol?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TOSYmbol?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.logic2source``: The ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce`` command. + - ``.logic3source``: The ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce`` command. + - ``.logic4source``: The ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce`` command. + - ``.logic5source``: The ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce`` command. + - ``.measureat``: The ``MEASUrement:MEAS:TOSYmbol:MEASUREAT`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._logic2source = MeasurementMeasItemTosymbolLogic2source( + device, f"{self._cmd_syntax}:LOGIC2SOUrce" + ) + self._logic3source = MeasurementMeasItemTosymbolLogic3source( + device, f"{self._cmd_syntax}:LOGIC3SOUrce" + ) + self._logic4source = MeasurementMeasItemTosymbolLogic4source( + device, f"{self._cmd_syntax}:LOGIC4SOUrce" + ) + self._logic5source = MeasurementMeasItemTosymbolLogic5source( + device, f"{self._cmd_syntax}:LOGIC5SOUrce" + ) + self._measureat = MeasurementMeasItemTosymbolMeasureat( + device, f"{self._cmd_syntax}:MEASUREAT" + ) + + @property + def logic2source(self) -> MeasurementMeasItemTosymbolLogic2source: + """Return the ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 1 source To Symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 1 To Symbol to H (High). + - ``L`` sets the logic source 1 To Symbol to L (Low). + - ``X`` sets the logic source 1 To Symbol to X (Don't care). + """ + return self._logic2source + + @property + def logic3source(self) -> MeasurementMeasItemTosymbolLogic3source: + """Return the ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 2 source To Symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 2 To Symbol to H (High). + - ``L`` sets the logic source 2 To Symbol to L (Low). + - ``X`` sets the logic source 2 To Symbol to X (Don't care). + """ + return self._logic3source + + @property + def logic4source(self) -> MeasurementMeasItemTosymbolLogic4source: + """Return the ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 3 source To Symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 3 To Symbol to H (High). + - ``L`` sets the logic source 3 To Symbol to L (Low). + - ``X`` sets the logic source 3 To Symbol to X (Don't care). + """ + return self._logic4source + + @property + def logic5source(self) -> MeasurementMeasItemTosymbolLogic5source: + """Return the ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 4 source To Symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce {H|L|X} + - MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 4 To Symbol to H (High). + - ``L`` sets the logic source 4 To Symbol to L (Low). + - ``X`` sets the logic source 4 To Symbol to X (Don't care). + """ + return self._logic5source + + @property + def measureat(self) -> MeasurementMeasItemTosymbolMeasureat: + """Return the ``MEASUrement:MEAS:TOSYmbol:MEASUREAT`` command. + + Description: + - This command sets or queries the DDR digital measurement ToSymbol MeasureAT value. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:TOSYmbol:MEASUREAT?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:MEASUREAT?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOSYmbol:MEASUREAT value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOSYmbol:MEASUREAT {Start|Stop|ClockEdge} + - MEASUrement:MEAS:TOSYmbol:MEASUREAT? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``Start`` sets the ToSymbol MeasureAT to Start. + - ``Stop`` sets the ToSymbol MeasureAT to Stop. + - ``ClockEdge`` sets the sets the ToSymbol MeasureAT to ClockEdge. + """ + return self._measureat + + +class MeasurementMeasItemToedge(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TOEdge`` command. + + Description: + - This command sets or queries the 'to edge' type for the measurement. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOEdge?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TOEdge?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TOEdge value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOEdge {SAMEas|OPPositeas|RISe|FALL|BOTH} + - MEASUrement:MEAS:TOEdge? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FALL`` specifies the falling edge of the waveform. + - ``RISE`` specifies the rising edge of the waveform. + - ``BOTH`` specifies both a rising and falling edge of the waveform. + - ``SAMEas`` specifies that both edges of the waveform are the same. + - ``OPPositeas`` specifies that the edges of the waveform are not the same. + """ + + +class MeasurementMeasItemToedgesearchdirect(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TOEDGESEARCHDIRect`` command. + + Description: + - This command sets or queries the to edge search direction for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOEDGESEARCHDIRect?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOEDGESEARCHDIRect?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOEDGESEARCHDIRect value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOEDGESEARCHDIRect {FORWard|BACKWard} + - MEASUrement:MEAS:TOEDGESEARCHDIRect? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FORWard`` specifies a forward search to the edge. + - ``BACKWard`` specifies a backward search to the edge. + """ + + +class MeasurementMeasItemTmethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TMEThod`` command. + + Description: + - This command sets or queries the measurement torque method. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TMEThod?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TMEThod?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TMEThod value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TMEThod {SENSOR|CURRENT} + - MEASUrement:MEAS:TMEThod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``SENSOR`` specifies the Torque Method as SENSOR. + - ``CURRENT`` specifies the Torque Method as CURRENT. + """ + + +class MeasurementMeasItemTimingmode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TIMINGMode`` command. + + Description: + - This command sets or queries the Timing mode for the specified DDR measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TIMINGMode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TIMINGMode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TIMINGMode value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TIMINGMode {EACHCLOCKCYCLE|TWOCLOCKCYCLES} + - MEASUrement:MEAS:TIMINGMode? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``EACHCLOCKCYCLE`` sets the DDR Timing Mode to use each clock cycle at a time. + - ``TWOCLOCKCYCLES`` sets the DDR Timing Mode to use two cycles at a time. + """ + + +class MeasurementMeasItemTconstant(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TCONstant`` command. + + Description: + - This command sets or queries the measurement Torque Constant. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TCONstant?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TCONstant?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TCONstant value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TCONstant + - MEASUrement:MEAS:TCONstant? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NR1`` specifies the current multiplier value of the measurement in the range of 0 to + 100. + """ + + +class MeasurementMeasItemTckavg(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:TCKAVG`` command. + + Description: + - This command sets or queries the average clock period value used in DDR measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TCKAVG?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TCKAVG?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TCKAVG value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TCKAVG + - MEASUrement:MEAS:TCKAVG? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NR3`` is a floating point number that represents the DDR average clock period in + seconds. + """ + + +class MeasurementMeasItemSunits(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SUNits`` command. + + Description: + - This command sets or queries the speed units for the specific measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SUNits?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SUNits?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SUNits value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SUNits {RPM|HZ} + - MEASUrement:MEAS:SUNits? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``RPM`` defines the speed measurement units as RPM. + - ``HZ`` defines the speed measurement units as HZ. + """ + + +class MeasurementMeasItemStype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:STYPe`` command. + + Description: + - This command sets or queries the source type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:STYPe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STYPe {VOLTage|CURRent} + - MEASUrement:MEAS:STYPe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``VOLTage`` sets source type as Voltage. + - ``CURRent`` sets source type as Current. + """ + + +class MeasurementMeasItemStltype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:STLTYpe`` command. + + Description: + - This command sets or returns the stop level source type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STLTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STLTYpe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:STLTYpe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STLTYpe {VDS|ID|VGE|VCE|IC} + - MEASUrement:MEAS:STLTYpe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``VDS`` specifies the stop level source type as VDS. + - ``ID`` specifies the stop level source type as ID. + - ``VGE`` specifies the stop level source type as VGE. + - ``VCE`` specifies the stop level source type as VCE. + - ``IC`` specifies the stop level source type as IC. + """ + + +class MeasurementMeasItemStlpct(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:STLPct`` command. + + Description: + - This command sets or returns the value for the stop level in percentage. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STLPct?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STLPct?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:STLPct value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STLPct + - MEASUrement:MEAS:STLPct? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the stop level in percentage. + """ + + +class MeasurementMeasItemStlabs(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:STLABs`` command. + + Description: + - This command sets or returns the value for the stop level in absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STLABs?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STLABs?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:STLABs value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STLABs + - MEASUrement:MEAS:STLABs? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the stop level in absolute. + """ + + +class MeasurementMeasItemStatus(SCPICmdRead): + """The ``MEASUrement:MEAS:STATUS`` command. + + Description: + - This command returns the pass fail status, if applicable, for the selected measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STATUS?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STATUS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STATUS? + ``` + + Info: + - ``PASS`` specifies that the user specified measurement limit has not been violated. + - ``FAIL`` specifies that the user specified measurement limit has been violated. + """ + + +class MeasurementMeasItemSscNominalfreqSelectiontype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype`` command. + + Description: + - This command sets or queries the frequency detection type for the measurement when the + measurement type is SSC. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype {AUTO|MANual} + - MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` automatically sets the detection type. + - ``MANual`` specifies the manual detection type. + """ + + +class MeasurementMeasItemSscNominalfreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SSC:NOMinalfreq`` command. + + Description: + - This command sets or queries the user-defined frequency for the measurement when the + measurement type is SSC. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SSC:NOMinalfreq?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SSC:NOMinalfreq?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SSC:NOMinalfreq value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SSC:NOMinalfreq + - MEASUrement:MEAS:SSC:NOMinalfreq? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the user-defined nominal frequency type for SSC configurations. + + Properties: + - ``.selectiontype``: The ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._selectiontype = MeasurementMeasItemSscNominalfreqSelectiontype( + device, f"{self._cmd_syntax}:SELECTIONtype" + ) + + @property + def selectiontype(self) -> MeasurementMeasItemSscNominalfreqSelectiontype: + """Return the ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype`` command. + + Description: + - This command sets or queries the frequency detection type for the measurement when the + measurement type is SSC. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype {AUTO|MANual} + - MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` automatically sets the detection type. + - ``MANual`` specifies the manual detection type. + """ + return self._selectiontype + + +class MeasurementMeasItemSsc(SCPICmdRead): + """The ``MEASUrement:MEAS:SSC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SSC?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SSC?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.nominalfreq``: The ``MEASUrement:MEAS:SSC:NOMinalfreq`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._nominalfreq = MeasurementMeasItemSscNominalfreq( + device, f"{self._cmd_syntax}:NOMinalfreq" + ) + + @property + def nominalfreq(self) -> MeasurementMeasItemSscNominalfreq: + """Return the ``MEASUrement:MEAS:SSC:NOMinalfreq`` command. + + Description: + - This command sets or queries the user-defined frequency for the measurement when the + measurement type is SSC. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SSC:NOMinalfreq?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:SSC:NOMinalfreq?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SSC:NOMinalfreq value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SSC:NOMinalfreq + - MEASUrement:MEAS:SSC:NOMinalfreq? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the user-defined nominal frequency type for SSC configurations. + + Sub-properties: + - ``.selectiontype``: The ``MEASUrement:MEAS:SSC:NOMinalfreq:SELECTIONtype`` command. + """ + return self._nominalfreq + + +class MeasurementMeasItemSource1(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SOUrce1`` command. + + Description: + - This command sets or queries the measurement source. The measurement number and source are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SOUrce1?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SOUrce1?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SOUrce1 value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SOUrce1 {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:SOUrce1? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` specifies the source number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MeasurementMeasItemSource(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SOURCE`` command. + + Description: + - This command sets or queries local input source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SOURCE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SOURCE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SOURCE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SOURCE {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:SOURCE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MeasurementMeasItemSmoothingfilter(SCPICmdWrite): + """The ``MEASUrement:MEAS:SMOOTHINGFILTER`` command. + + Description: + - This command sets or queries the status of smoothing filter. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SMOOTHINGFILTER value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SMOOTHINGFILTER + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` sets the value to 1 or 0. 1 enables smoothing filter and 0 disables it. + """ + + +class MeasurementMeasItemSltype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SLTYpe`` command. + + Description: + - This command sets or returns the start level source type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SLTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SLTYpe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SLTYpe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SLTYpe {VDS|ID|VGE|VCE|IC} + - MEASUrement:MEAS:SLTYpe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``VDS`` specifies the start level source type as VDS. + - ``ID`` specifies the start level source type as ID. + - ``VGE`` specifies the start level source type as VGE. + - ``VCE`` specifies the start level source type as VCE. + - ``IC`` specifies the start level source type as IC. + """ + + +class MeasurementMeasItemSlpct(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SLPCt`` command. + + Description: + - This command sets or returns the value for the start level in percentage. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SLPCt?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SLPCt?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SLPCt value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SLPCt + - MEASUrement:MEAS:SLPCt? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the start level in percentage. + """ + + +class MeasurementMeasItemSlabs(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SLABs`` command. + + Description: + - This command sets or returns the value for the start level in absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SLABs?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SLABs?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SLABs value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SLABs + - MEASUrement:MEAS:SLABs? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the start level in absolute. + """ + + +class MeasurementMeasItemSignaltype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SIGNALType`` command. + + Description: + - This command sets or queries the signal type of source 1 for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SIGNALType?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SIGNALType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SIGNALType value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SIGNALType {CLOCK|DATA|AUTO} + - MEASUrement:MEAS:SIGNALType? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``CLOCK`` specifies a clock signal type. + - ``DATA`` specifies a data signal type. + - ``AUTO`` automatically selects the signal type. + """ + + +class MeasurementMeasItemSignalfrequency(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SIGNALFREQUEncy`` command. + + Description: + - This command sets or queries line frequency for Harmonics and Ripple line frequency. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SIGNALFREQUEncy?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SIGNALFREQUEncy?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SIGNALFREQUEncy value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SIGNALFREQUEncy {AUTO|FIFTYHZ|SIXTYHZ|FOURHUNDREDHZ|CUSTOM} + - MEASUrement:MEAS:SIGNALFREQUEncy? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` specifies the line frequency as auto. Only available for Harmonics line + frequency. + - ``FIFTYHZ`` specifies the line frequency as 50 Hz. + - ``SIXTYHZ`` specifies the line frequency as 60 Hz. + - ``FOURHUNDREDHZ`` specifies the line frequency as 400 Hz. . + - ``CUSTOM`` specifies the line frequency as custom. + """ + + +class MeasurementMeasItemSequence(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:SEQuence`` command. + + Description: + - This command sets or queries the sequence of hall edges. The measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SEQuence?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SEQuence?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SEQuence value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SEQuence {ABC|ACB} + - MEASUrement:MEAS:SEQuence? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ABC`` specifies the motor Hall edges sequence as ABC. + - ``ACB`` specifies the motor Hall edges sequence as ACB. + """ + + +class MeasurementMeasItemRipplefreqvalItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:RIPPLEFREQVal`` command. + + Description: + - Sets or queries the ripple frequency per specified rail for Ripple measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RIPPLEFREQVal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RIPPLEFREQVal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:RIPPLEFREQVal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RIPPLEFREQVal + - MEASUrement:MEAS:RIPPLEFREQVal? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the rail number. + - ```` is the frequency, in the range of 1 Hz to 4 GHz. + """ + + +class MeasurementMeasItemResultsHistoryStddev(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:HISTory:STDDev`` command. + + Description: + - This query-only command returns the standard deviation value for the specified measurement + for each acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:STDDev?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:STDDev? + ``` + """ + + +class MeasurementMeasItemResultsHistoryPopulation(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:HISTory:POPUlation`` command. + + Description: + - This query-only command returns the population value for the specified measurement for + each acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:POPUlation?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:POPUlation? + ``` + """ + + +class MeasurementMeasItemResultsHistoryPk2pk(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:HISTory:PK2PK`` command. + + Description: + - This query-only command returns the peak-to-peak value for the specified measurement for + each acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts:HISTory:PK2PK?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:PK2PK?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:PK2PK? + ``` + """ + + +class MeasurementMeasItemResultsHistoryMinimum(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:HISTory:MINimum`` command. + + Description: + - This query-only command returns the minimum value for the specified measurement for each + acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MINimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:MINimum? + ``` + """ + + +class MeasurementMeasItemResultsHistoryMean(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:HISTory:MEAN`` command. + + Description: + - This query-only command returns the mean value for the specified measurement for each + acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts:HISTory:MEAN?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MEAN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:MEAN? + ``` + """ + + +class MeasurementMeasItemResultsHistoryMaximum(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:HISTory:MAXimum`` command. + + Description: + - This query-only command returns the maximum value for the specified measurement for each + acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MAXimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:MAXimum? + ``` + """ + + +class MeasurementMeasItemResultsHistory(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:HISTory`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts:HISTory?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:RESUlts:HISTory?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.maximum``: The ``MEASUrement:MEAS:RESUlts:HISTory:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:RESUlts:HISTory:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:RESUlts:HISTory:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:RESUlts:HISTory:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:RESUlts:HISTory:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:RESUlts:HISTory:STDDev`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = MeasurementMeasItemResultsHistoryMaximum( + device, f"{self._cmd_syntax}:MAXimum" + ) + self._mean = MeasurementMeasItemResultsHistoryMean(device, f"{self._cmd_syntax}:MEAN") + self._minimum = MeasurementMeasItemResultsHistoryMinimum( + device, f"{self._cmd_syntax}:MINimum" + ) + self._pk2pk = MeasurementMeasItemResultsHistoryPk2pk(device, f"{self._cmd_syntax}:PK2PK") + self._population = MeasurementMeasItemResultsHistoryPopulation( + device, f"{self._cmd_syntax}:POPUlation" + ) + self._stddev = MeasurementMeasItemResultsHistoryStddev(device, f"{self._cmd_syntax}:STDDev") + + @property + def maximum(self) -> MeasurementMeasItemResultsHistoryMaximum: + """Return the ``MEASUrement:MEAS:RESUlts:HISTory:MAXimum`` command. + + Description: + - This query-only command returns the maximum value for the specified measurement for + each acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MAXimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:MAXimum? + ``` + """ + return self._maximum + + @property + def mean(self) -> MeasurementMeasItemResultsHistoryMean: + """Return the ``MEASUrement:MEAS:RESUlts:HISTory:MEAN`` command. + + Description: + - This query-only command returns the mean value for the specified measurement for each + acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MEAN?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MEAN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:MEAN? + ``` + """ + return self._mean + + @property + def minimum(self) -> MeasurementMeasItemResultsHistoryMinimum: + """Return the ``MEASUrement:MEAS:RESUlts:HISTory:MINimum`` command. + + Description: + - This query-only command returns the minimum value for the specified measurement for + each acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:MINimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:MINimum? + ``` + """ + return self._minimum + + @property + def pk2pk(self) -> MeasurementMeasItemResultsHistoryPk2pk: + """Return the ``MEASUrement:MEAS:RESUlts:HISTory:PK2PK`` command. + + Description: + - This query-only command returns the peak-to-peak value for the specified measurement + for each acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:PK2PK?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:PK2PK?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:PK2PK? + ``` + """ + return self._pk2pk + + @property + def population(self) -> MeasurementMeasItemResultsHistoryPopulation: + """Return the ``MEASUrement:MEAS:RESUlts:HISTory:POPUlation`` command. + + Description: + - This query-only command returns the population value for the specified measurement for + each acquisition in the history. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:POPUlation?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:POPUlation? + ``` + """ + return self._population + + @property + def stddev(self) -> MeasurementMeasItemResultsHistoryStddev: + """Return the ``MEASUrement:MEAS:RESUlts:HISTory:STDDev`` command. + + Description: + - This query-only command returns the standard deviation value for the specified + measurement for each acquisition in the history. The measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory:STDDev?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:HISTory:STDDev? + ``` + """ + return self._stddev + + +class MeasurementMeasItemResultsCurrentacqStddev(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:CURRentacq:STDDev`` command. + + Description: + - This query-only command returns the standard deviation for the specified measurement for + all acquisitions accumulated since statistics were last reset. The measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:STDDev?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:STDDev? + ``` + """ + + +class MeasurementMeasItemResultsCurrentacqPopulation(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation`` command. + + Description: + - This query-only command returns the population for the specified measurement for the + current acquisition. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation? + ``` + """ + + +class MeasurementMeasItemResultsCurrentacqPk2pk(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK`` command. + + Description: + - This query-only command returns the peak-to-peak value for the specified measurement for + the current acquisition. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK? + ``` + """ + + +class MeasurementMeasItemResultsCurrentacqMinimum(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:CURRentacq:MINimum`` command. + + Description: + - This query-only command returns the minimum value found for the specified measurement + since the last statistical reset. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MINimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:MINimum? + ``` + """ + + +class MeasurementMeasItemResultsCurrentacqMean(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:CURRentacq:MEAN`` command. + + Description: + - This query-only command returns the mean value for the measurement for the current + acquisition. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MEAN?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MEAN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:MEAN? + ``` + """ + + +class MeasurementMeasItemResultsCurrentacqMaximum(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum`` command. + + Description: + - This query-only command returns the maximum value found for the specified measurement + since the last statistical reset. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum? + ``` + """ + + +class MeasurementMeasItemResultsCurrentacq(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:CURRentacq`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts:CURRentacq?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.maximum``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:STDDev`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = MeasurementMeasItemResultsCurrentacqMaximum( + device, f"{self._cmd_syntax}:MAXimum" + ) + self._mean = MeasurementMeasItemResultsCurrentacqMean(device, f"{self._cmd_syntax}:MEAN") + self._minimum = MeasurementMeasItemResultsCurrentacqMinimum( + device, f"{self._cmd_syntax}:MINimum" + ) + self._pk2pk = MeasurementMeasItemResultsCurrentacqPk2pk(device, f"{self._cmd_syntax}:PK2PK") + self._population = MeasurementMeasItemResultsCurrentacqPopulation( + device, f"{self._cmd_syntax}:POPUlation" + ) + self._stddev = MeasurementMeasItemResultsCurrentacqStddev( + device, f"{self._cmd_syntax}:STDDev" + ) + + @property + def maximum(self) -> MeasurementMeasItemResultsCurrentacqMaximum: + """Return the ``MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum`` command. + + Description: + - This query-only command returns the maximum value found for the specified measurement + since the last statistical reset. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum? + ``` + """ + return self._maximum + + @property + def mean(self) -> MeasurementMeasItemResultsCurrentacqMean: + """Return the ``MEASUrement:MEAS:RESUlts:CURRentacq:MEAN`` command. + + Description: + - This query-only command returns the mean value for the measurement for the current + acquisition. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MEAN?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MEAN?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:MEAN? + ``` + """ + return self._mean + + @property + def minimum(self) -> MeasurementMeasItemResultsCurrentacqMinimum: + """Return the ``MEASUrement:MEAS:RESUlts:CURRentacq:MINimum`` command. + + Description: + - This query-only command returns the minimum value found for the specified measurement + since the last statistical reset. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:MINimum?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:MINimum? + ``` + """ + return self._minimum + + @property + def pk2pk(self) -> MeasurementMeasItemResultsCurrentacqPk2pk: + """Return the ``MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK`` command. + + Description: + - This query-only command returns the peak-to-peak value for the specified measurement + for the current acquisition. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK? + ``` + """ + return self._pk2pk + + @property + def population(self) -> MeasurementMeasItemResultsCurrentacqPopulation: + """Return the ``MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation`` command. + + Description: + - This query-only command returns the population for the specified measurement for the + current acquisition. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation? + ``` + """ + return self._population + + @property + def stddev(self) -> MeasurementMeasItemResultsCurrentacqStddev: + """Return the ``MEASUrement:MEAS:RESUlts:CURRentacq:STDDev`` command. + + Description: + - This query-only command returns the standard deviation for the specified measurement + for all acquisitions accumulated since statistics were last reset. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq:STDDev?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:CURRentacq:STDDev? + ``` + """ + return self._stddev + + +class MeasurementMeasItemResultsAllacqsStddev(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev`` command. + + Description: + - This query-only command returns the standard deviation for all accumulated measurement + acquisitions for measurement . + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev? + ``` + """ + + +class MeasurementMeasItemResultsAllacqsPopulation(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation`` command. + + Description: + - This query-only command returns the population measurement value for measurement . + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation? + ``` + """ + + +class MeasurementMeasItemResultsAllacqsPk2pk(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK`` command. + + Description: + - This query-only command returns the peak-to-peak value for all accumulated measurement + acquisitions for measurement . + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK? + ``` + """ + + +class MeasurementMeasItemResultsAllacqsMinimum(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum`` command. + + Description: + - This query-only command returns the minimum value for all accumulated measurement + acquisitions for measurement . + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum? + ``` + """ + + +class MeasurementMeasItemResultsAllacqsMean(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN`` command. + + Description: + - This query-only command returns the mean value for all accumulated measurement + acquisitions for measurement . + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN? + ``` + """ + + +class MeasurementMeasItemResultsAllacqsMaximum(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum`` command. + + Description: + - This query-only command returns the maximum value for all accumulated measurement + acquisitions of the specified measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum? + ``` + """ + + +class MeasurementMeasItemResultsAllacqs(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts:ALLAcqs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts:ALLAcqs?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:RESUlts:ALLAcqs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.maximum``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = MeasurementMeasItemResultsAllacqsMaximum( + device, f"{self._cmd_syntax}:MAXimum" + ) + self._mean = MeasurementMeasItemResultsAllacqsMean(device, f"{self._cmd_syntax}:MEAN") + self._minimum = MeasurementMeasItemResultsAllacqsMinimum( + device, f"{self._cmd_syntax}:MINimum" + ) + self._pk2pk = MeasurementMeasItemResultsAllacqsPk2pk(device, f"{self._cmd_syntax}:PK2PK") + self._population = MeasurementMeasItemResultsAllacqsPopulation( + device, f"{self._cmd_syntax}:POPUlation" + ) + self._stddev = MeasurementMeasItemResultsAllacqsStddev(device, f"{self._cmd_syntax}:STDDev") + + @property + def maximum(self) -> MeasurementMeasItemResultsAllacqsMaximum: + """Return the ``MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum`` command. + + Description: + - This query-only command returns the maximum value for all accumulated measurement + acquisitions of the specified measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum? + ``` + """ + return self._maximum + + @property + def mean(self) -> MeasurementMeasItemResultsAllacqsMean: + """Return the ``MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN`` command. + + Description: + - This query-only command returns the mean value for all accumulated measurement + acquisitions for measurement . + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN? + ``` + """ + return self._mean + + @property + def minimum(self) -> MeasurementMeasItemResultsAllacqsMinimum: + """Return the ``MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum`` command. + + Description: + - This query-only command returns the minimum value for all accumulated measurement + acquisitions for measurement . + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum? + ``` + """ + return self._minimum + + @property + def pk2pk(self) -> MeasurementMeasItemResultsAllacqsPk2pk: + """Return the ``MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK`` command. + + Description: + - This query-only command returns the peak-to-peak value for all accumulated measurement + acquisitions for measurement . + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK? + ``` + """ + return self._pk2pk + + @property + def population(self) -> MeasurementMeasItemResultsAllacqsPopulation: + """Return the ``MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation`` command. + + Description: + - This query-only command returns the population measurement value for measurement . + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation? + ``` + """ + return self._population + + @property + def stddev(self) -> MeasurementMeasItemResultsAllacqsStddev: + """Return the ``MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev`` command. + + Description: + - This query-only command returns the standard deviation for all accumulated measurement + acquisitions for measurement . + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev? + ``` + """ + return self._stddev + + +class MeasurementMeasItemResults(SCPICmdRead): + """The ``MEASUrement:MEAS:RESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:RESUlts?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.allacqs``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs`` command tree. + - ``.currentacq``: The ``MEASUrement:MEAS:RESUlts:CURRentacq`` command tree. + - ``.history``: The ``MEASUrement:MEAS:RESUlts:HISTory`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._allacqs = MeasurementMeasItemResultsAllacqs(device, f"{self._cmd_syntax}:ALLAcqs") + self._currentacq = MeasurementMeasItemResultsCurrentacq( + device, f"{self._cmd_syntax}:CURRentacq" + ) + self._history = MeasurementMeasItemResultsHistory(device, f"{self._cmd_syntax}:HISTory") + + @property + def allacqs(self) -> MeasurementMeasItemResultsAllacqs: + """Return the ``MEASUrement:MEAS:RESUlts:ALLAcqs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts:ALLAcqs?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:ALLAcqs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.maximum``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs:STDDev`` command. + """ + return self._allacqs + + @property + def currentacq(self) -> MeasurementMeasItemResultsCurrentacq: + """Return the ``MEASUrement:MEAS:RESUlts:CURRentacq`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:CURRentacq?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.maximum``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:RESUlts:CURRentacq:STDDev`` command. + """ + return self._currentacq + + @property + def history(self) -> MeasurementMeasItemResultsHistory: + """Return the ``MEASUrement:MEAS:RESUlts:HISTory`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts:HISTory?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RESUlts:HISTory?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.maximum``: The ``MEASUrement:MEAS:RESUlts:HISTory:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:RESUlts:HISTory:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:RESUlts:HISTory:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:RESUlts:HISTory:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:RESUlts:HISTory:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:RESUlts:HISTory:STDDev`` command. + """ + return self._history + + +class MeasurementMeasItemRefvoltage(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFVoltage`` command. + + Description: + - This command sets or queries the reference voltage value for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFVoltage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REFVoltage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:REFVoltage value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFVoltage + - MEASUrement:MEAS:REFVoltage? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the reference voltage value for the selected configuration. + """ + + +class MeasurementMeasItemRefvoltagevalItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFVOLTAGEVal`` command. + + Description: + - Sets or queries the reference voltage per rail of Overshoot and Undershoot measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFVOLTAGEVal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFVOLTAGEVal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFVOLTAGEVal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFVOLTAGEVal + - MEASUrement:MEAS:REFVOLTAGEVal? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the rail number. + - ```` is the reference voltage, in the range of -500 V to +500 V. + """ + + +class MeasurementMeasItemRefmode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFMode`` command. + + Description: + - This command sets or queries the reference level mode for the measurement. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFMode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REFMode?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:REFMode value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFMode {AUTO|MANual} + - MEASUrement:MEAS:REFMode? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` sets the reference level for the measurement automatically. + - ``MANual`` allows the user to set the reference level for the measurement. + """ + + +class MeasurementMeasItemReflevelsAbsoluteFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the measurement's ref level method is set to absolute. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh + - MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the high reference level in volts. The default is 0.0 V. + """ + + +class MeasurementMeasItemReflevelsAbsolute(SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels:ABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.fallhigh``: The ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementMeasItemReflevelsAbsoluteFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + + @property + def fallhigh(self) -> MeasurementMeasItemReflevelsAbsoluteFallhigh: + """Return the ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the measurement's ref level method is set to absolute. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh + - MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the high reference level in volts. The default is 0.0 V. + """ + return self._fallhigh + + +class MeasurementMeasItemReflevels1PercentType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE`` command. + + Description: + - This command specifies or queries the reference level percent type for the measurement. + The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:MEAS:REFLevels1:PERCent:TYPE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``TENNinety`` sets the values for Low, Mid and High Ref to 10%, 50% and 90% respectively. + - ``TWENtyeighty`` sets the values for Low, Mid and High Ref are set to 20%, 50% and 80% + respectively. + - ``CUSTom`` allows setting other reference level percents. + """ + + +class MeasurementMeasItemReflevels1PercentRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the rising edge when the measurement's + ref level method is set to percent. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:RISEMid + - MEASUrement:MEAS:REFLevels1:PERCent:RISEMid? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` the percentage (where 50% is equal to MID) used to calculate the mid reference + level when the measurement Ref level method is set to Percent. + """ + + +class MeasurementMeasItemReflevels1PercentRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the low reference level of the rising edge when the measurement's + ref level method is set to percent. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:RISELow + - MEASUrement:MEAS:REFLevels1:PERCent:RISELow? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 99% is equal to TOP) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + + +class MeasurementMeasItemReflevels1PercentRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the rising edge when the measurement's + ref level method is set to percent. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh + - MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 99% is equal to TOP) used to calculate the high + reference level when the measurement's Ref level method is set to Percent. + """ + + +class MeasurementMeasItemReflevels1PercentHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to MAX and 1% is equal to + MIN) used to calculate the hysteresis of the reference level when the measurement's ref + level method is set to percent. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis + - MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the hysteresis value used for the autoset. + """ + + +class MeasurementMeasItemReflevels1PercentFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the falling edge when the measurement's + ref level method is set to percent. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:FALLMid + - MEASUrement:MEAS:REFLevels1:PERCent:FALLMid? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level. + """ + + +class MeasurementMeasItemReflevels1PercentFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the low reference level of the falling edge when the measurement's + ref level method is set to percent. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:FALLLow + - MEASUrement:MEAS:REFLevels1:PERCent:FALLLow? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 100% is equal to HIGH) used to calculate the mid + reference level. + """ + + +class MeasurementMeasItemReflevels1PercentFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the falling edge when the + measurement's ref level method is set to percent. The measurement number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh + - MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 100% is equal to HIGH) used to calculate the high + reference level. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementMeasItemReflevels1Percent(SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels1:PERCent?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.fallhigh``: The ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementMeasItemReflevels1PercentFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = MeasurementMeasItemReflevels1PercentFalllow( + device, f"{self._cmd_syntax}:FALLLow" + ) + self._fallmid = MeasurementMeasItemReflevels1PercentFallmid( + device, f"{self._cmd_syntax}:FALLMid" + ) + self._hysteresis = MeasurementMeasItemReflevels1PercentHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementMeasItemReflevels1PercentRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = MeasurementMeasItemReflevels1PercentRiselow( + device, f"{self._cmd_syntax}:RISELow" + ) + self._risemid = MeasurementMeasItemReflevels1PercentRisemid( + device, f"{self._cmd_syntax}:RISEMid" + ) + self._type = MeasurementMeasItemReflevels1PercentType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> MeasurementMeasItemReflevels1PercentFallhigh: + """Return the ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the falling edge when the + measurement's ref level method is set to percent. The measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh + - MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 100% is equal to HIGH) used to calculate the high + reference level. + """ + return self._fallhigh + + @property + def falllow(self) -> MeasurementMeasItemReflevels1PercentFalllow: + """Return the ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the low reference level of the falling edge when the + measurement's ref level method is set to percent. The measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:FALLLow + - MEASUrement:MEAS:REFLevels1:PERCent:FALLLow? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 100% is equal to HIGH) used to calculate the mid + reference level. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementMeasItemReflevels1PercentFallmid: + """Return the ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the falling edge when the + measurement's ref level method is set to percent. The measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:FALLMid + - MEASUrement:MEAS:REFLevels1:PERCent:FALLMid? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementMeasItemReflevels1PercentHysteresis: + """Return the ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to MAX and 1% is equal + to MIN) used to calculate the hysteresis of the reference level when the measurement's + ref level method is set to percent. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis + - MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the hysteresis value used for the autoset. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementMeasItemReflevels1PercentRisehigh: + """Return the ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the rising edge when the + measurement's ref level method is set to percent. The measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh + - MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 99% is equal to TOP) used to calculate the high + reference level when the measurement's Ref level method is set to Percent. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementMeasItemReflevels1PercentRiselow: + """Return the ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the low reference level of the rising edge when the + measurement's ref level method is set to percent. The measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:RISELow + - MEASUrement:MEAS:REFLevels1:PERCent:RISELow? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the percentage (where 99% is equal to TOP) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementMeasItemReflevels1PercentRisemid: + """Return the ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the rising edge when the + measurement's ref level method is set to percent. The measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:RISEMid + - MEASUrement:MEAS:REFLevels1:PERCent:RISEMid? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` the percentage (where 50% is equal to MID) used to calculate the mid + reference level when the measurement Ref level method is set to Percent. + """ + return self._risemid + + @property + def type(self) -> MeasurementMeasItemReflevels1PercentType: + """Return the ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE`` command. + + Description: + - This command specifies or queries the reference level percent type for the + measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:MEAS:REFLevels1:PERCent:TYPE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``TENNinety`` sets the values for Low, Mid and High Ref to 10%, 50% and 90% + respectively. + - ``TWENtyeighty`` sets the values for Low, Mid and High Ref are set to 20%, 50% and 80% + respectively. + - ``CUSTom`` allows setting other reference level percents. + """ + return self._type + + +class MeasurementMeasItemReflevels1Method(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels1:METHod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:METHod {PERCent|ABSolute} + - MEASUrement:MEAS:REFLevels1:METHod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``PERCent`` specifies that the reference levels are calculated as a percent relative to + HIGH and LOW. The percentages are defined using the + ``MEASUrement:MEAS:REFLevel:PERCent`` commands. + - ``ABSolute`` specifies that the reference levels are set explicitly using the + ``MEASUrement:MEAS:REFLevel:ABSolute`` commands. This method is useful when precise + values are required. + """ + + +class MeasurementMeasItemReflevels1Basetop(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE used to + calculate reference levels for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels1:BASETop?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:BASETop?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:BASETop value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:MEAS:REFLevels1:BASETop? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` automatically chooses a reference level method. + - ``MINMax`` specifies that reference levels are relative to the measurement MIN and MAX. + - ``MEANhistogram`` specifies that reference levels are relative to the histogram mean BASE + and TOP. + - ``MODEhistogram`` specifies that reference levels are relative to the histogram mode BASE + and TOP. + - ``EYEhistogram`` specifies that reverence levels are relative to the eye histogram BASE + and TOP. + """ # noqa: E501 + + +class MeasurementMeasItemReflevels1AbsoluteType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the measurement. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:MEAS:REFLevels1:ABSolute:TYPE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``SAME`` specifies that the absolute levels are set the same. + - ``UNIQue`` specifies that the absolute levels can be set independently. + """ + + +class MeasurementMeasItemReflevels1AbsoluteRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising edge + when the measurement's ref level method is set to absolute. The measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the mid reference level (where 50% is equal to MID) used to calculate the mid + reference level when the measurement's Ref level method is set to Absolute. + """ + + +class MeasurementMeasItemReflevels1AbsoluteRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising edge + when the measurement's ref level method is set to absolute. The measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:RISELow + - MEASUrement:MEAS:REFLevels1:ABSolute:RISELow? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the low reference level, and is the zero percent level when the measurement's + Ref level method is set to Absolute. + """ + + +class MeasurementMeasItemReflevels1AbsoluteRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising edge + when the measurement's ref level method is set to absolute. The measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the high reference level, and is the zero percent level when the + measurement's Ref level method is set to Absolute. + """ + + +class MeasurementMeasItemReflevels1AbsoluteHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when the + measurement's ref level method is set to absolute. The measurement number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis + - MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the hysteresis value used for autoset. + """ + + +class MeasurementMeasItemReflevels1AbsoluteFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling edge + when the measurement's ref level method is set to absolute. Measurements are specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the mid reference level in volts. The default is 0.0 V. + """ + + +class MeasurementMeasItemReflevels1AbsoluteFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling edge + when the measurement's ref level method is set to absolute. Measurements are specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the low reference level in volts. The default is 0.0 V. + """ + + +class MeasurementMeasItemReflevels1Absolute(SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels1:ABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.falllow``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._falllow = MeasurementMeasItemReflevels1AbsoluteFalllow( + device, f"{self._cmd_syntax}:FALLLow" + ) + self._fallmid = MeasurementMeasItemReflevels1AbsoluteFallmid( + device, f"{self._cmd_syntax}:FALLMid" + ) + self._hysteresis = MeasurementMeasItemReflevels1AbsoluteHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementMeasItemReflevels1AbsoluteRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = MeasurementMeasItemReflevels1AbsoluteRiselow( + device, f"{self._cmd_syntax}:RISELow" + ) + self._risemid = MeasurementMeasItemReflevels1AbsoluteRisemid( + device, f"{self._cmd_syntax}:RISEMid" + ) + self._type = MeasurementMeasItemReflevels1AbsoluteType(device, f"{self._cmd_syntax}:TYPE") + + @property + def falllow(self) -> MeasurementMeasItemReflevels1AbsoluteFalllow: + """Return the ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling + edge when the measurement's ref level method is set to absolute. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the low reference level in volts. The default is 0.0 V. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementMeasItemReflevels1AbsoluteFallmid: + """Return the ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling + edge when the measurement's ref level method is set to absolute. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid + - MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the mid reference level in volts. The default is 0.0 V. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementMeasItemReflevels1AbsoluteHysteresis: + """Return the ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when + the measurement's ref level method is set to absolute. The measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis + - MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the hysteresis value used for autoset. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementMeasItemReflevels1AbsoluteRisehigh: + """Return the ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising + edge when the measurement's ref level method is set to absolute. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the high reference level, and is the zero percent level when the + measurement's Ref level method is set to Absolute. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementMeasItemReflevels1AbsoluteRiselow: + """Return the ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising + edge when the measurement's ref level method is set to absolute. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:RISELow + - MEASUrement:MEAS:REFLevels1:ABSolute:RISELow? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the low reference level, and is the zero percent level when the + measurement's Ref level method is set to Absolute. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementMeasItemReflevels1AbsoluteRisemid: + """Return the ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising + edge when the measurement's ref level method is set to absolute. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid + - MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the mid reference level (where 50% is equal to MID) used to calculate the + mid reference level when the measurement's Ref level method is set to Absolute. + """ + return self._risemid + + @property + def type(self) -> MeasurementMeasItemReflevels1AbsoluteType: + """Return the ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:MEAS:REFLevels1:ABSolute:TYPE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``SAME`` specifies that the absolute levels are set the same. + - ``UNIQue`` specifies that the absolute levels can be set independently. + """ + return self._type + + +class MeasurementMeasItemReflevels1(SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels1?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REFLevels1?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.absolute``: The ``MEASUrement:MEAS:REFLevels1:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:MEAS:REFLevels1:BASETop`` command. + - ``.method``: The ``MEASUrement:MEAS:REFLevels1:METHod`` command. + - ``.percent``: The ``MEASUrement:MEAS:REFLevels1:PERCent`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._absolute = MeasurementMeasItemReflevels1Absolute( + device, f"{self._cmd_syntax}:ABSolute" + ) + self._basetop = MeasurementMeasItemReflevels1Basetop(device, f"{self._cmd_syntax}:BASETop") + self._method = MeasurementMeasItemReflevels1Method(device, f"{self._cmd_syntax}:METHod") + self._percent = MeasurementMeasItemReflevels1Percent(device, f"{self._cmd_syntax}:PERCent") + + @property + def absolute(self) -> MeasurementMeasItemReflevels1Absolute: + """Return the ``MEASUrement:MEAS:REFLevels1:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.falllow``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:MEAS:REFLevels1:ABSolute:TYPE`` command. + """ + return self._absolute + + @property + def basetop(self) -> MeasurementMeasItemReflevels1Basetop: + """Return the ``MEASUrement:MEAS:REFLevels1:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE used to + calculate reference levels for the measurement. The measurement number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:BASETop?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:BASETop?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:BASETop value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:MEAS:REFLevels1:BASETop? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` automatically chooses a reference level method. + - ``MINMax`` specifies that reference levels are relative to the measurement MIN and + MAX. + - ``MEANhistogram`` specifies that reference levels are relative to the histogram mean + BASE and TOP. + - ``MODEhistogram`` specifies that reference levels are relative to the histogram mode + BASE and TOP. + - ``EYEhistogram`` specifies that reverence levels are relative to the eye histogram + BASE and TOP. + """ # noqa: E501 + return self._basetop + + @property + def method(self) -> MeasurementMeasItemReflevels1Method: + """Return the ``MEASUrement:MEAS:REFLevels1:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels1:METHod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFLevels1:METHod {PERCent|ABSolute} + - MEASUrement:MEAS:REFLevels1:METHod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``PERCent`` specifies that the reference levels are calculated as a percent relative + to HIGH and LOW. The percentages are defined using the + ``MEASUrement:MEAS:REFLevel:PERCent`` commands. + - ``ABSolute`` specifies that the reference levels are set explicitly using the + ``MEASUrement:MEAS:REFLevel:ABSolute`` commands. This method is useful when precise + values are required. + """ + return self._method + + @property + def percent(self) -> MeasurementMeasItemReflevels1Percent: + """Return the ``MEASUrement:MEAS:REFLevels1:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels1:PERCent?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:MEAS:REFLevels1:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:MEAS:REFLevels1:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:MEAS:REFLevels1:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:MEAS:REFLevels1:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:MEAS:REFLevels1:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:MEAS:REFLevels1:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:MEAS:REFLevels1:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:MEAS:REFLevels1:PERCent:TYPE`` command. + """ + return self._percent + + +class MeasurementMeasItemReflevels(SCPICmdRead): + """The ``MEASUrement:MEAS:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REFLevels?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.absolute``: The ``MEASUrement:MEAS:REFLevels:ABSolute`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._absolute = MeasurementMeasItemReflevelsAbsolute( + device, f"{self._cmd_syntax}:ABSolute" + ) + + @property + def absolute(self) -> MeasurementMeasItemReflevelsAbsolute: + """Return the ``MEASUrement:MEAS:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:REFLevels:ABSolute?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFLevels:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:MEAS:REFLevels:ABSolute:FALLHigh`` command. + """ + return self._absolute + + +class MeasurementMeasItemRedge(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:REDGe`` command. + + Description: + - This command turns on or off the Refine edge on qualifier. Measurements are specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REDGe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REDGe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:REDGe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REDGe {ON|OFF} + - MEASUrement:MEAS:REDGe? + ``` + + Info: + - ``ON`` specifies the Refine edge settings has been turned on. + - ``OFF`` specifies the Refine edge settings has been turned off. + """ + + +class MeasurementMeasItemPwidth(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PWIDth`` command. + + Description: + - This command sets or returns pulse width. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PWIDth?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PWIDth?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:PWIDth value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PWIDth + - MEASUrement:MEAS:PWIDth? + ``` + + Info: + - ```` specifies the pulse width. + """ + + +class MeasurementMeasItemPregion(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PREGion`` command. + + Description: + - This command sets or returns pulse region for a measurement. Measurements are specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PREGion?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PREGion?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:PREGion value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PREGion {FPULse|SPULse|MPULse} + - MEASUrement:MEAS:PREGion? + ``` + + Info: + - ``FPULse`` is the pulse region as Fpulse. + - ``SPULse`` is the pulse region as Spulse. + - ``MPULse`` is the pulse region as Mpulse. + """ + + +class MeasurementMeasItemPowerfactor(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:POWERFACtor`` command. + + Description: + - This command sets or queries the power factor value for IEC-Class C type harmonics + standard. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POWERFACtor?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:POWERFACtor?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:POWERFACtor value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POWERFACtor + - MEASUrement:MEAS:POWERFACtor? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the power factor value for class C harmonics standard. + """ + + +class MeasurementMeasItemPopulationLimitValue(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:POPUlation:LIMIT:VALue`` command. + + Description: + - This command sets or queries the population limit value for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:VALue?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:VALue value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POPUlation:LIMIT:VALue + - MEASUrement:MEAS:POPUlation:LIMIT:VALue? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` the current limit value. + """ + + +class MeasurementMeasItemPopulationLimitState(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:POPUlation:LIMIT:STATE`` command. + + Description: + - This command sets or queries the population limit state for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:STATE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POPUlation:LIMIT:STATE {OFF|ON|0|1} + - MEASUrement:MEAS:POPUlation:LIMIT:STATE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` turns off the population limit. + - ``ON`` turns on the population limit. + - ``0`` turns off the population limit. + - ``1`` turns on the population limit. + """ + + +class MeasurementMeasItemPopulationLimit(SCPICmdRead): + """The ``MEASUrement:MEAS:POPUlation:LIMIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POPUlation:LIMIT?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.state``: The ``MEASUrement:MEAS:POPUlation:LIMIT:STATE`` command. + - ``.value``: The ``MEASUrement:MEAS:POPUlation:LIMIT:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = MeasurementMeasItemPopulationLimitState(device, f"{self._cmd_syntax}:STATE") + self._value = MeasurementMeasItemPopulationLimitValue(device, f"{self._cmd_syntax}:VALue") + + @property + def state(self) -> MeasurementMeasItemPopulationLimitState: + """Return the ``MEASUrement:MEAS:POPUlation:LIMIT:STATE`` command. + + Description: + - This command sets or queries the population limit state for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:STATE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:STATE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POPUlation:LIMIT:STATE {OFF|ON|0|1} + - MEASUrement:MEAS:POPUlation:LIMIT:STATE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` turns off the population limit. + - ``ON`` turns on the population limit. + - ``0`` turns off the population limit. + - ``1`` turns on the population limit. + """ + return self._state + + @property + def value(self) -> MeasurementMeasItemPopulationLimitValue: + """Return the ``MEASUrement:MEAS:POPUlation:LIMIT:VALue`` command. + + Description: + - This command sets or queries the population limit value for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:VALue?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT:VALue value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POPUlation:LIMIT:VALue + - MEASUrement:MEAS:POPUlation:LIMIT:VALue? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` the current limit value. + """ + return self._value + + +class MeasurementMeasItemPopulationGlobal(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:POPUlation:GLOBal`` command. + + Description: + - This command sets or queries the population settings global flag. The measurement number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POPUlation:GLOBal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:GLOBal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POPUlation:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:POPUlation:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` specifies that population settings can be changed independently for each + individual measurement. + - ``ON`` applies the global population settings to all the measurements' population + settings. + - ``0`` specifies that population settings can be changed independently for each individual + measurement. + - ``1`` applies the global population settings to all the measurements' population settings. + """ + + +class MeasurementMeasItemPopulation(SCPICmdRead): + """The ``MEASUrement:MEAS:POPUlation`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:POPUlation?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.global``: The ``MEASUrement:MEAS:POPUlation:GLOBal`` command. + - ``.limit``: The ``MEASUrement:MEAS:POPUlation:LIMIT`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._global = MeasurementMeasItemPopulationGlobal(device, f"{self._cmd_syntax}:GLOBal") + self._limit = MeasurementMeasItemPopulationLimit(device, f"{self._cmd_syntax}:LIMIT") + + @property + def global_(self) -> MeasurementMeasItemPopulationGlobal: + """Return the ``MEASUrement:MEAS:POPUlation:GLOBal`` command. + + Description: + - This command sets or queries the population settings global flag. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POPUlation:GLOBal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:GLOBal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POPUlation:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:POPUlation:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` specifies that population settings can be changed independently for each + individual measurement. + - ``ON`` applies the global population settings to all the measurements' population + settings. + - ``0`` specifies that population settings can be changed independently for each + individual measurement. + - ``1`` applies the global population settings to all the measurements' population + settings. + """ + return self._global + + @property + def limit(self) -> MeasurementMeasItemPopulationLimit: + """Return the ``MEASUrement:MEAS:POPUlation:LIMIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POPUlation:LIMIT?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:POPUlation:LIMIT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.state``: The ``MEASUrement:MEAS:POPUlation:LIMIT:STATE`` command. + - ``.value``: The ``MEASUrement:MEAS:POPUlation:LIMIT:VALue`` command. + """ + return self._limit + + +class MeasurementMeasItemPolarity(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:POLarity`` command. + + Description: + - This command sets or queries the polarity for the measurement when the measurement type is + burst width. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:POLarity value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POLarity {NORMal|INVerted} + - MEASUrement:MEAS:POLarity? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NORMal`` specifies normal polarity. + - ``INVerted`` specifies inverted polarity. + """ + + +class MeasurementMeasItemPerfreqEdge(SCPICmdWrite): + """The ``MEASUrement:MEAS:PERFREQ:EDGE`` command. + + Description: + - This command sets or queries the edge type of a Period/Frequency measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PERFREQ:EDGE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PERFREQ:EDGE {FIRST|RISE|FALL} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FIRST`` computes the measurement between Rising edges if the first edge is Rising. + Computes the measurement between Falling edges if the first edge is Falling. + - ``RISE`` computes the measurement between Rising edges. + - ``FALL`` computes the measurement between Falling edges. + """ + + +class MeasurementMeasItemPerfreq(SCPICmdRead): + """The ``MEASUrement:MEAS:PERFREQ`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PERFREQ?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PERFREQ?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.edge``: The ``MEASUrement:MEAS:PERFREQ:EDGE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edge = MeasurementMeasItemPerfreqEdge(device, f"{self._cmd_syntax}:EDGE") + + @property + def edge(self) -> MeasurementMeasItemPerfreqEdge: + """Return the ``MEASUrement:MEAS:PERFREQ:EDGE`` command. + + Description: + - This command sets or queries the edge type of a Period/Frequency measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PERFREQ:EDGE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PERFREQ:EDGE {FIRST|RISE|FALL} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FIRST`` computes the measurement between Rising edges if the first edge is Rising. + Computes the measurement between Falling edges if the first edge is Falling. + - ``RISE`` computes the measurement between Rising edges. + - ``FALL`` computes the measurement between Falling edges. + """ + return self._edge + + +class MeasurementMeasItemPcount(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PCOUNt`` command. + + Description: + - This command sets or returns number of pulses. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PCOUNt?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PCOUNt?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:PCOUNt value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PCOUNt + - MEASUrement:MEAS:PCOUNt? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the number of pulses. + """ + + +class MeasurementMeasItemPatterntype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PATTERNTYPe`` command. + + Description: + - This command sets or queries the pattern type for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PATTERNTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PATTERNTYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:PATTERNTYPe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PATTERNTYPe {REPeating|ARBitrary} + - MEASUrement:MEAS:PATTERNTYPe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``REPeating`` specifies a repeating pattern. + - ``ARBitrary`` specifies an arbitrary pattern. + """ + + +class MeasurementMeasItemPatternlength(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PATTERNLENgth`` command. + + Description: + - This command sets or queries the pattern length for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PATTERNLENgth?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PATTERNLENgth?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PATTERNLENgth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PATTERNLENgth + - MEASUrement:MEAS:PATTERNLENgth? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the pattern length. + """ + + +class MeasurementMeasItemPatterndetection(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PATTERNDETECTION`` command. + + Description: + - This command sets or queries the pattern detection type for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PATTERNDETECTION?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PATTERNDETECTION?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PATTERNDETECTION value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PATTERNDETECTION {AUTO|MANUAL} + - MEASUrement:MEAS:PATTERNDETECTION? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` automatically detects the pattern. + - ``MANUAL`` requires manually detecting the pattern. + """ + + +class MeasurementMeasItemPassfailwhen(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PASSFAILWHEN`` command. + + Description: + - This command sets or returns the condition on which a measurement test fails. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILWHEN?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PASSFAILWHEN?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILWHEN value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILWHEN {LESSthan|GREATERthan|Equals|NOTEQuals|INSIDErange|OUTSIDErange} + - MEASUrement:MEAS:PASSFAILWHEN? + ``` + + Info: + - ``LESSthan`` sets the condition for measurement test failure as less than the given limit. + This is the default value. + - ``GREATERthan`` sets the condition for measurement test failure as greater than the given + limit. + - ``Equals`` sets the condition for measurement test failure as equals the given limit. + - ``NOTEQuals`` sets the condition for measurement test failure as not equal to the given + limit. + - ``INSIDErange`` sets the condition for measurement test failure as inside the limit range. + - ``OUTSIDErange`` sets the condition for measurement test failure as outside the limit + range. + """ # noqa: E501 + + +class MeasurementMeasItemPassfailmargin(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PASSFAILMARgin`` command. + + Description: + - This command returns or sets the allowed margin for limit comparisons for all pass/fail + checks. This is given as a percentage with a default value of 0.05 representing 5%. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILMARgin?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PASSFAILMARgin?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILMARgin value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILMARgin + - MEASUrement:MEAS:PASSFAILMARgin? + ``` + + Info: + - ```` sets the allowed margin for limit comparisons for all pass/fail checks. The + margin as a percentage of the limit. + """ + + +class MeasurementMeasItemPassfaillowlimit(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PASSFAILLOWlimit`` command. + + Description: + - This command returns or sets the low limit for a measurement test. Used as the test value + when the 'fail when' criteria is set to 'less than' or 'greater than'. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILLOWlimit?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILLOWlimit?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILLOWlimit value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILLOWlimit + - MEASUrement:MEAS:PASSFAILLOWlimit? + ``` + + Info: + - ```` sets the low limit for a measurement test. The limit is a number which a + measurement result will be tested against. + """ + + +class MeasurementMeasItemPassfaillimit(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PASSFAILLIMit`` command. + + Description: + - This command returns or sets the limit for a measurement test. Used as the test value when + the 'fail when' criteria is set to 'less than' or 'greater than'. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILLIMit?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PASSFAILLIMit?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILLIMit value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILLIMit + - MEASUrement:MEAS:PASSFAILLIMit? + ``` + + Info: + - ```` sets the limit for a measurement test. The limit is a number which a measurement + result will be tested against. + """ + + +class MeasurementMeasItemPassfailhighlimit(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PASSFAILHIGHlimit`` command. + + Description: + - This command returns or sets the high limit for a measurement test. Used as the test value + when the 'fail when' criteria is set to 'less than' or 'greater than'. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILHIGHlimit?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILHIGHlimit?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILHIGHlimit value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILHIGHlimit + - MEASUrement:MEAS:PASSFAILHIGHlimit? + ``` + + Info: + - ```` sets the high limit for a measurement test. The high limit is a number which a + measurement result will be tested against. + """ + + +class MeasurementMeasItemPassfailenabled(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:PASSFAILENabled`` command. + + Description: + - This command returns or sets the pass/fail test enable status. If enabled, this will turn + on pass fail testing for the specified measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILENabled?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PASSFAILENabled?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILENabled value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILENabled + - MEASUrement:MEAS:PASSFAILENabled? + ``` + + Info: + - ```` enables or disables pass fail testing for the specified measurement. A value of + 1 enables and a value of 0 disables. + """ + + +class MeasurementMeasItemOutputvoltageItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:OUTPUTVOLTage`` command. + + Description: + - Sets or queries the voltage level for the specified output voltage source n. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OUTPUTVOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTPUTVOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OUTPUTVOLTage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OUTPUTVOLTage + - MEASUrement:MEAS:OUTPUTVOLTage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the output voltage for source n, in the range of -61 V to +61 V. + """ + + +class MeasurementMeasItemOutfiltersLowpassSpec(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC`` command. + + Description: + - This command sets or queries the measurement output low pass filter specification filter + order on the scope. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies the filter order none. + - ``FIRST`` specifies the filter order first. + - ``SECOND`` specifies the filter order second. + - ``THIRD`` specifies the filter order third. + """ + + +class MeasurementMeasItemOutfiltersLowpassFreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ`` command. + + Description: + - This command sets or queries the measurement output low pass filter frequency cutoff + frequency on the scope. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ + - MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the values for the output filter cutoff frequency. The argument range + is 20 Hz to 10e6 Hz. + """ + + +class MeasurementMeasItemOutfiltersLowpass(SCPICmdRead): + """The ``MEASUrement:MEAS:OUTFILTers:LOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OUTFILTers:LOWPass?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.freq``: The ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._freq = MeasurementMeasItemOutfiltersLowpassFreq(device, f"{self._cmd_syntax}:FREQ") + self._spec = MeasurementMeasItemOutfiltersLowpassSpec(device, f"{self._cmd_syntax}:SPEC") + + @property + def freq(self) -> MeasurementMeasItemOutfiltersLowpassFreq: + """Return the ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ`` command. + + Description: + - This command sets or queries the measurement output low pass filter frequency cutoff + frequency on the scope. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ + - MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the values for the output filter cutoff frequency. The argument + range is 20 Hz to 10e6 Hz. + """ + return self._freq + + @property + def spec(self) -> MeasurementMeasItemOutfiltersLowpassSpec: + """Return the ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC`` command. + + Description: + - This command sets or queries the measurement output low pass filter specification + filter order on the scope. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies the filter order none. + - ``FIRST`` specifies the filter order first. + - ``SECOND`` specifies the filter order second. + - ``THIRD`` specifies the filter order third. + """ + return self._spec + + +class MeasurementMeasItemOutfilters(SCPICmdRead): + """The ``MEASUrement:MEAS:OUTFILTers`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OUTFILTers?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:OUTFILTers?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.lowpass``: The ``MEASUrement:MEAS:OUTFILTers:LOWPass`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._lowpass = MeasurementMeasItemOutfiltersLowpass(device, f"{self._cmd_syntax}:LOWPass") + + @property + def lowpass(self) -> MeasurementMeasItemOutfiltersLowpass: + """Return the ``MEASUrement:MEAS:OUTFILTers:LOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTFILTers:LOWPass?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.freq``: The ``MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC`` command. + """ + return self._lowpass + + +class MeasurementMeasItemOutedgequalifier(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:OUTEDGEQUALifier`` command. + + Description: + - This command sets or queries local output edge qualifier source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OUTEDGEQUALifier?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTEDGEQUALifier?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OUTEDGEQUALifier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OUTEDGEQUALifier {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:OUTEDGEQUALifier? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MeasurementMeasItemOsangle(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:OSANgle`` command. + + Description: + - This command sets or queries the specified measurement Offset angle. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OSANgle?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:OSANgle?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:OSANgle value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OSANgle + - MEASUrement:MEAS:OSANgle? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the offset angle of the measurement in the range or -360 to 360. + """ + + +class MeasurementMeasItemOfiltersLowpassSpec(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:OFILters:LOWPass:SPEC`` command. + + Description: + - This command sets or returns low pass filter specification for a measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OFILters:LOWPass:SPEC?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OFILters:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:OFILters:LOWPass:SPEC? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies the low pass filter specification as none. + - ``FIRST`` specifies the low pass filter specification set to 1st Order for the + measurement. + - ``SECOND`` specifies the low pass filter specification set to 2nd Order for the + measurement. + - ``THIRD`` specifies the low pass filter specification set to 3rd Order for the + measurement. + """ + + +class MeasurementMeasItemOfiltersLowpassFreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:OFILters:LOWPass:FREQ`` command. + + Description: + - This command sets or returns the cut-off frequency value for a measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OFILters:LOWPass:FREQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OFILters:LOWPass:FREQ + - MEASUrement:MEAS:OFILters:LOWPass:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the cut-off frequency value for a measurement. + """ + + +class MeasurementMeasItemOfiltersLowpass(SCPICmdRead): + """The ``MEASUrement:MEAS:OFILters:LOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OFILters:LOWPass?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.freq``: The ``MEASUrement:MEAS:OFILters:LOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:MEAS:OFILters:LOWPass:SPEC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._freq = MeasurementMeasItemOfiltersLowpassFreq(device, f"{self._cmd_syntax}:FREQ") + self._spec = MeasurementMeasItemOfiltersLowpassSpec(device, f"{self._cmd_syntax}:SPEC") + + @property + def freq(self) -> MeasurementMeasItemOfiltersLowpassFreq: + """Return the ``MEASUrement:MEAS:OFILters:LOWPass:FREQ`` command. + + Description: + - This command sets or returns the cut-off frequency value for a measurement. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:FREQ?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:FREQ?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OFILters:LOWPass:FREQ + - MEASUrement:MEAS:OFILters:LOWPass:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the cut-off frequency value for a measurement. + """ + return self._freq + + @property + def spec(self) -> MeasurementMeasItemOfiltersLowpassSpec: + """Return the ``MEASUrement:MEAS:OFILters:LOWPass:SPEC`` command. + + Description: + - This command sets or returns low pass filter specification for a measurement. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:SPEC?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:SPEC?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OFILters:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:OFILters:LOWPass:SPEC? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies the low pass filter specification as none. + - ``FIRST`` specifies the low pass filter specification set to 1st Order for the + measurement. + - ``SECOND`` specifies the low pass filter specification set to 2nd Order for the + measurement. + - ``THIRD`` specifies the low pass filter specification set to 3rd Order for the + measurement. + """ + return self._spec + + +class MeasurementMeasItemOfilters(SCPICmdRead): + """The ``MEASUrement:MEAS:OFILters`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OFILters?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:OFILters?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.lowpass``: The ``MEASUrement:MEAS:OFILters:LOWPass`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._lowpass = MeasurementMeasItemOfiltersLowpass(device, f"{self._cmd_syntax}:LOWPass") + + @property + def lowpass(self) -> MeasurementMeasItemOfiltersLowpass: + """Return the ``MEASUrement:MEAS:OFILters:LOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OFILters:LOWPass?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OFILters:LOWPass?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.freq``: The ``MEASUrement:MEAS:OFILters:LOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:MEAS:OFILters:LOWPass:SPEC`` command. + """ + return self._lowpass + + +class MeasurementMeasItemOddeven(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:ODDEVen`` command. + + Description: + - This command sets or queries harmonics oddeven. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:ODDEVen?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:ODDEVen?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:ODDEVen value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:ODDEVen {ALL|EVEN|ODD} + - MEASUrement:MEAS:ODDEVen? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ALL`` displays all the results. + - ``EVEN`` displays the even results. + - ``ODD`` displays the odd results. + """ + + +class MeasurementMeasItemMincycle(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MINCycle`` command. + + Description: + - This command sets or queries the minimum cycle value for the DDRTERRN and DDRTERRMN + measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MINCycle?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MINCycle?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:MINCycle value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MINCycle + - MEASUrement:MEAS:MINCycle? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the minimum cycle range limit value in the range or 2 to 50. + """ + + +class MeasurementMeasItemMechStype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MECH:STYPe`` command. + + Description: + - This command sets or queries the local measurement sensor type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:STYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:STYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:MECH:STYPe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:STYPe {HSENSOR|QEI} + - MEASUrement:MEAS:MECH:STYPe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``HSENSOR`` specifies the sensor type as HSENSOR. + - ``QEI`` specifies the sensor type as QEI. + """ + + +class MeasurementMeasItemMechPprotation(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MECH:PPRotation`` command. + + Description: + - This command sets or queries the specified pulses per rotation of the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:PPRotation?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:PPRotation?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MECH:PPRotation value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:PPRotation + - MEASUrement:MEAS:MECH:PPRotation? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` defines the pulses per rotation of the measurement in the range of 1 to 10000. + """ + + +class MeasurementMeasItemMechPpairs(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MECH:PPAirs`` command. + + Description: + - This command sets or queries the number of pole pairs for the specific measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:PPAirs?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:PPAirs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:MECH:PPAirs value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:PPAirs + - MEASUrement:MEAS:MECH:PPAirs? + ``` + + Info: + - ```` defines the number of pole pairs for the specified measurement. The minimum to + maximum range is 1 to 20. + """ + + +class MeasurementMeasItemMechMunits(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MECH:MUNits`` command. + + Description: + - This command sets or queries the specified mechanical measurement results units. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:MUNits?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:MUNits?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:MECH:MUNits value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:MUNits {NM|OZINCH|FTLB|INCHLB|DEGREES|RADIANS} + - MEASUrement:MEAS:MECH:MUNits? + ``` + + Info: + - ``NM`` defines the results units of the measurement as NM. + - ``OZINCH`` defines the results units of the measurement as OZINCH. + - ``FTLB`` defines the results units of the measurement as FTLB. + - ``INCHLB`` defines the results units of the measurement as INCHLB. + - ``DEGREES`` defines the results units of the measurement as DEGREES. + - ``RADIANS`` defines the results units of the measurement as RADIANS. + """ + + +class MeasurementMeasItemMechGratio(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MECH:GRATio`` command. + + Description: + - This command sets or queries the gear ratio for the specific measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:GRATio?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:GRATio?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:MECH:GRATio value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:GRATio + - MEASUrement:MEAS:MECH:GRATio? + ``` + + Info: + - ```` defines the gear ratio value for specified measurement. The minimum to maximum + range is 0.001-1000. + """ + + +class MeasurementMeasItemMechEindexz(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MECH:EINDexz`` command. + + Description: + - This command sets or queries the specified mechanical Index Z source. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:EINDexz?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:EINDexz?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MECH:EINDexz value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:EINDexz {ON|OFF|1|0} + - MEASUrement:MEAS:MECH:EINDexz? + ``` + + Info: + - ``ON`` specifies the Index Z check box state as enabled. + - ``OFF`` specifies the Index Z check box state as disabled. + - ``1`` specifies the Index Z check box state as enabled. + - ``0`` specifies the Index Z check box state as disabled. + """ + + +class MeasurementMeasItemMech(SCPICmdRead): + """The ``MEASUrement:MEAS:MECH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.eindexz``: The ``MEASUrement:MEAS:MECH:EINDexz`` command. + - ``.gratio``: The ``MEASUrement:MEAS:MECH:GRATio`` command. + - ``.munits``: The ``MEASUrement:MEAS:MECH:MUNits`` command. + - ``.ppairs``: The ``MEASUrement:MEAS:MECH:PPAirs`` command. + - ``.pprotation``: The ``MEASUrement:MEAS:MECH:PPRotation`` command. + - ``.stype``: The ``MEASUrement:MEAS:MECH:STYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._eindexz = MeasurementMeasItemMechEindexz(device, f"{self._cmd_syntax}:EINDexz") + self._gratio = MeasurementMeasItemMechGratio(device, f"{self._cmd_syntax}:GRATio") + self._munits = MeasurementMeasItemMechMunits(device, f"{self._cmd_syntax}:MUNits") + self._ppairs = MeasurementMeasItemMechPpairs(device, f"{self._cmd_syntax}:PPAirs") + self._pprotation = MeasurementMeasItemMechPprotation( + device, f"{self._cmd_syntax}:PPRotation" + ) + self._stype = MeasurementMeasItemMechStype(device, f"{self._cmd_syntax}:STYPe") + + @property + def eindexz(self) -> MeasurementMeasItemMechEindexz: + """Return the ``MEASUrement:MEAS:MECH:EINDexz`` command. + + Description: + - This command sets or queries the specified mechanical Index Z source. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:EINDexz?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:MECH:EINDexz?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MECH:EINDexz value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:EINDexz {ON|OFF|1|0} + - MEASUrement:MEAS:MECH:EINDexz? + ``` + + Info: + - ``ON`` specifies the Index Z check box state as enabled. + - ``OFF`` specifies the Index Z check box state as disabled. + - ``1`` specifies the Index Z check box state as enabled. + - ``0`` specifies the Index Z check box state as disabled. + """ + return self._eindexz + + @property + def gratio(self) -> MeasurementMeasItemMechGratio: + """Return the ``MEASUrement:MEAS:MECH:GRATio`` command. + + Description: + - This command sets or queries the gear ratio for the specific measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:GRATio?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:GRATio?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MECH:GRATio value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:GRATio + - MEASUrement:MEAS:MECH:GRATio? + ``` + + Info: + - ```` defines the gear ratio value for specified measurement. The minimum to + maximum range is 0.001-1000. + """ + return self._gratio + + @property + def munits(self) -> MeasurementMeasItemMechMunits: + """Return the ``MEASUrement:MEAS:MECH:MUNits`` command. + + Description: + - This command sets or queries the specified mechanical measurement results units. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:MUNits?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:MUNits?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MECH:MUNits value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:MUNits {NM|OZINCH|FTLB|INCHLB|DEGREES|RADIANS} + - MEASUrement:MEAS:MECH:MUNits? + ``` + + Info: + - ``NM`` defines the results units of the measurement as NM. + - ``OZINCH`` defines the results units of the measurement as OZINCH. + - ``FTLB`` defines the results units of the measurement as FTLB. + - ``INCHLB`` defines the results units of the measurement as INCHLB. + - ``DEGREES`` defines the results units of the measurement as DEGREES. + - ``RADIANS`` defines the results units of the measurement as RADIANS. + """ + return self._munits + + @property + def ppairs(self) -> MeasurementMeasItemMechPpairs: + """Return the ``MEASUrement:MEAS:MECH:PPAirs`` command. + + Description: + - This command sets or queries the number of pole pairs for the specific measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:PPAirs?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:PPAirs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MECH:PPAirs value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:PPAirs + - MEASUrement:MEAS:MECH:PPAirs? + ``` + + Info: + - ```` defines the number of pole pairs for the specified measurement. The minimum + to maximum range is 1 to 20. + """ + return self._ppairs + + @property + def pprotation(self) -> MeasurementMeasItemMechPprotation: + """Return the ``MEASUrement:MEAS:MECH:PPRotation`` command. + + Description: + - This command sets or queries the specified pulses per rotation of the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:PPRotation?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:MECH:PPRotation?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MECH:PPRotation value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:PPRotation + - MEASUrement:MEAS:MECH:PPRotation? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` defines the pulses per rotation of the measurement in the range of 1 to + 10000. + """ + return self._pprotation + + @property + def stype(self) -> MeasurementMeasItemMechStype: + """Return the ``MEASUrement:MEAS:MECH:STYPe`` command. + + Description: + - This command sets or queries the local measurement sensor type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH:STYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH:STYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MECH:STYPe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MECH:STYPe {HSENSOR|QEI} + - MEASUrement:MEAS:MECH:STYPe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``HSENSOR`` specifies the sensor type as HSENSOR. + - ``QEI`` specifies the sensor type as QEI. + """ + return self._stype + + +class MeasurementMeasItemMeasrangeState(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MEASRange:STATE`` command. + + Description: + - This command sets or queries the range state for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange:STATE?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MEASRange:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:STATE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MEASRange:STATE {OFF|ON|0|1} + - MEASUrement:MEAS:MEASRange:STATE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` turns off the measurement range limits. + - ``ON`` turns on the measurement range limits. + - ``0`` turns off the measurement range limits. + - ``1`` turns on the measurement range limits. + """ + + +class MeasurementMeasItemMeasrangeMin(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MEASRange:MIN`` command. + + Description: + - This command sets or queries the range minimum value for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange:MIN?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MEASRange:MIN?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:MIN value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MEASRange:MIN + - MEASUrement:MEAS:MEASRange:MIN? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the minimum measurement range limit value. + """ + + +class MeasurementMeasItemMeasrangeMax(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MEASRange:MAX`` command. + + Description: + - This command sets or queries the range maximum value for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange:MAX?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MEASRange:MAX?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:MAX value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MEASRange:MAX + - MEASUrement:MEAS:MEASRange:MAX? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the maximum measurement range limit value. + """ + + +class MeasurementMeasItemMeasrangeGlobal(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MEASRange:GLOBal`` command. + + Description: + - This command sets or queries the range settings global flag for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange:GLOBal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:GLOBal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MEASRange:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:MEASRange:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` specifies that range settings can be set independently for each individual + measurement. + - ``ON`` applies global measurement range settings to all the measurements' range settings. + - ``0`` specifies that range settings can be set independently for each individual + measurement. + - ``1`` applies global measurement range settings to all the measurements' range settings. + """ + + +class MeasurementMeasItemMeasrange(SCPICmdRead): + """The ``MEASUrement:MEAS:MEASRange`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MEASRange?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.global``: The ``MEASUrement:MEAS:MEASRange:GLOBal`` command. + - ``.max``: The ``MEASUrement:MEAS:MEASRange:MAX`` command. + - ``.min``: The ``MEASUrement:MEAS:MEASRange:MIN`` command. + - ``.state``: The ``MEASUrement:MEAS:MEASRange:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._global = MeasurementMeasItemMeasrangeGlobal(device, f"{self._cmd_syntax}:GLOBal") + self._max = MeasurementMeasItemMeasrangeMax(device, f"{self._cmd_syntax}:MAX") + self._min = MeasurementMeasItemMeasrangeMin(device, f"{self._cmd_syntax}:MIN") + self._state = MeasurementMeasItemMeasrangeState(device, f"{self._cmd_syntax}:STATE") + + @property + def global_(self) -> MeasurementMeasItemMeasrangeGlobal: + """Return the ``MEASUrement:MEAS:MEASRange:GLOBal`` command. + + Description: + - This command sets or queries the range settings global flag for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange:GLOBal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:GLOBal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MEASRange:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:MEASRange:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` specifies that range settings can be set independently for each individual + measurement. + - ``ON`` applies global measurement range settings to all the measurements' range + settings. + - ``0`` specifies that range settings can be set independently for each individual + measurement. + - ``1`` applies global measurement range settings to all the measurements' range + settings. + """ + return self._global + + @property + def max(self) -> MeasurementMeasItemMeasrangeMax: + """Return the ``MEASUrement:MEAS:MEASRange:MAX`` command. + + Description: + - This command sets or queries the range maximum value for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange:MAX?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:MAX?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:MAX value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MEASRange:MAX + - MEASUrement:MEAS:MEASRange:MAX? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the maximum measurement range limit value. + """ + return self._max + + @property + def min(self) -> MeasurementMeasItemMeasrangeMin: + """Return the ``MEASUrement:MEAS:MEASRange:MIN`` command. + + Description: + - This command sets or queries the range minimum value for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange:MIN?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:MIN?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:MIN value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MEASRange:MIN + - MEASUrement:MEAS:MEASRange:MIN? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the minimum measurement range limit value. + """ + return self._min + + @property + def state(self) -> MeasurementMeasItemMeasrangeState: + """Return the ``MEASUrement:MEAS:MEASRange:STATE`` command. + + Description: + - This command sets or queries the range state for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MEASRange:STATE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MEASRange:STATE {OFF|ON|0|1} + - MEASUrement:MEAS:MEASRange:STATE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` turns off the measurement range limits. + - ``ON`` turns on the measurement range limits. + - ``0`` turns off the measurement range limits. + - ``1`` turns on the measurement range limits. + """ + return self._state + + +class MeasurementMeasItemMaxvoltage(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MAXVoltage`` command. + + Description: + - Sets or queries the maximum input voltage. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MAXVoltage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MAXVoltage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:MAXVoltage value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MAXVoltage + - MEASUrement:MEAS:MAXVoltage? + ``` + + Info: + - ```` is the maximum input voltage, in the range of -61 V to +61 V. + """ + + +class MeasurementMeasItemMaxgvoltage(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MAXGVoltage`` command. + + Description: + - This command sets or returns the maximum gate voltage. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MAXGVoltage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MAXGVoltage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:MAXGVoltage value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MAXGVoltage + - MEASUrement:MEAS:MAXGVoltage? + ``` + + Info: + - ```` specifies the maximum gate voltage. + """ + + +class MeasurementMeasItemMaxcycle(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MAXCycle`` command. + + Description: + - This command sets or queries the maximum cycle value for the DDRTERRN and DDRTERRMN + measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MAXCycle?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MAXCycle?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:MAXCycle value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MAXCycle + - MEASUrement:MEAS:MAXCycle? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the maximum cycle range limit value in the range or 2 to 50. + """ + + +class MeasurementMeasItemMaxcurrent(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:MAXCUrrent`` command. + + Description: + - This command sets or returns the maximum current. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MAXCUrrent?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MAXCUrrent?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:MAXCUrrent value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MAXCUrrent + - MEASUrement:MEAS:MAXCUrrent? + ``` + + Info: + - ```` specifies the maximum current. + """ + + +class MeasurementMeasItemLvoltage(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:LVOLtage`` command. + + Description: + - This command sets or queries the measurement Torque Low Voltage value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LVOLtage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LVOLtage?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:LVOLtage value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LVOLtage + - MEASUrement:MEAS:LVOLtage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the Low Voltage value of the measurement in the range of -100 to 100. + """ + + +class MeasurementMeasItemLunits(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:LUNITs`` command. + + Description: + - This command sets or returns the value for the level units as percentage or absolute. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LUNITs?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LUNITs?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:LUNITs value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LUNITs {PERCent|ABSolute} + - MEASUrement:MEAS:LUNITs? + ``` + + Info: + - ``PERCent`` specifies the value for the level units as percent. + - ``ABSolute`` specifies the value for the level units as absolute. + """ + + +class MeasurementMeasItemLtype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:LTYPe`` command. + + Description: + - This command sets or returns the value for the level type as auto or custom. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LTYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:LTYPe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LTYPe {AUTO|CUSTom} + - MEASUrement:MEAS:LTYPe? + ``` + + Info: + - ``AUTO`` specifies the value for the level type as auto. + - ``CUSTom`` specifies the value for the level type as custom. + """ + + +class MeasurementMeasItemLtorque(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:LTORque`` command. + + Description: + - This command sets or queries the measurement Low Torque value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LTORque?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LTORque?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:LTORque value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LTORque + - MEASUrement:MEAS:LTORque? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the Low Torque value of the measurement in the range of 0 to 10000000. + """ + + +class MeasurementMeasItemLowrefvoltage(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:LOWREFVoltage`` command. + + Description: + - This command sets or queries the low reference voltage value for the 'time outside level' + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LOWREFVoltage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LOWREFVoltage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:LOWREFVoltage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LOWREFVoltage + - MEASUrement:MEAS:LOWREFVoltage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the low reference voltage value for the selected configuration. + """ + + +class MeasurementMeasItemLineselected(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:LINESelected`` command. + + Description: + - This command sets or queries selected lines for the measurement. The measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LINESelected?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LINESelected?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:LINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LINESelected {ABCB|ACBC|BACA|XYZY|XZYZ|YXZX} + - MEASUrement:MEAS:LINESelected? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ + + +class MeasurementMeasItemLabel(SCPICmdWrite): + """The ``MEASUrement:MEAS:LABel`` command. + + Description: + - This command sets or queries the label for the measurement. As the label can contain non + 7-bit ASCII text, it is stored in Percent Encoding format. The measurement number is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:LABel value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LABel + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the measurement label. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MeasurementMeasItemJittersummaryTjber(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary:TJBER`` command. + + Description: + - This command sets or queries whether TJ@BER is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:TJBER?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:TJBER?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:TJBER value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:TJBER {0|1} + - MEASUrement:MEAS:JITTERSummary:TJBER? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the TJ@BER measurement as part of jitter summary. + - ``0`` do not add the TJ@BER measurement as part of jitter summary. + """ + + +class MeasurementMeasItemJittersummaryTie(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary:TIE`` command. + + Description: + - This command sets or queries whether TIE is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:TIE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:TIE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:TIE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:TIE {0|1} + - MEASUrement:MEAS:JITTERSummary:TIE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the TIE measurement as part of jitter summary. + - ``0`` do not add the TIE measurement as part of jitter summary. + """ + + +class MeasurementMeasItemJittersummaryRjdd(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary:RJDD`` command. + + Description: + - This command sets or queries whether RJ-dd is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:RJDD?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:RJDD?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:RJDD value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:RJDD {0|1} + - MEASUrement:MEAS:JITTERSummary:RJDD? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the RJ-dd measurement as part of jitter summary. + - ``0`` do not add the RJ-dd measurement as part of jitter summary. + """ + + +class MeasurementMeasItemJittersummaryPj(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary:PJ`` command. + + Description: + - This command sets or queries whether PJ is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:PJ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:PJ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:PJ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:PJ {0|1} + - MEASUrement:MEAS:JITTERSummary:PJ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the PJ measurement as part of jitter summary. + - ``0`` do not add the PJ measurement as part of jitter summary. + """ + + +class MeasurementMeasItemJittersummaryNpj(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary:NPJ`` command. + + Description: + - This command sets or queries whether NPJ is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:NPJ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:NPJ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:NPJ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:NPJ {0|1} + - MEASUrement:MEAS:JITTERSummary:NPJ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the NPJ measurement as part of jitter summary. + - ``0`` do not add the NPJ measurement as part of jitter summary. + """ + + +class MeasurementMeasItemJittersummaryEyewidthber(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER`` command. + + Description: + - This command sets or queries whether EyeWidth@BER is included in the jitter summary for + the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER {0|1} + - MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the EyeWidth@BER measurement as part of jitter summary. + - ``0`` do not add the EyeWidth@BER measurement as part of jitter summary. + """ + + +class MeasurementMeasItemJittersummaryDjdd(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary:DJDD`` command. + + Description: + - This command sets or queries whether DJ-dd is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:DJDD?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DJDD?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DJDD value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:DJDD {0|1} + - MEASUrement:MEAS:JITTERSummary:DJDD? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the DJDD measurement as part of jitter summary. + - ``0`` do not add the DJDD measurement as part of jitter summary. + """ + + +class MeasurementMeasItemJittersummaryDdj(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary:DDJ`` command. + + Description: + - This command sets or queries whether DDJ is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:DDJ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DDJ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DDJ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:DDJ {0|1} + - MEASUrement:MEAS:JITTERSummary:DDJ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` adds the DDJ measurement as part of jitter summary. + - ``0`` do not add the DDJ measurement as part of jitter summary. + """ + + +class MeasurementMeasItemJittersummaryDcd(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary:DCD`` command. + + Description: + - This command sets or queries whether DCD is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:DCD?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DCD?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DCD value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:DCD {0|1} + - MEASUrement:MEAS:JITTERSummary:DCD? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` adds the DCD measurement as part of jitter summary. + - ``0`` do not add the DCD measurement as part of jitter summary. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementMeasItemJittersummary(SCPICmdRead): + """The ``MEASUrement:MEAS:JITTERSummary`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:JITTERSummary?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.dcd``: The ``MEASUrement:MEAS:JITTERSummary:DCD`` command. + - ``.ddj``: The ``MEASUrement:MEAS:JITTERSummary:DDJ`` command. + - ``.djdd``: The ``MEASUrement:MEAS:JITTERSummary:DJDD`` command. + - ``.eyewidthber``: The ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER`` command. + - ``.npj``: The ``MEASUrement:MEAS:JITTERSummary:NPJ`` command. + - ``.pj``: The ``MEASUrement:MEAS:JITTERSummary:PJ`` command. + - ``.rjdd``: The ``MEASUrement:MEAS:JITTERSummary:RJDD`` command. + - ``.tie``: The ``MEASUrement:MEAS:JITTERSummary:TIE`` command. + - ``.tjber``: The ``MEASUrement:MEAS:JITTERSummary:TJBER`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dcd = MeasurementMeasItemJittersummaryDcd(device, f"{self._cmd_syntax}:DCD") + self._ddj = MeasurementMeasItemJittersummaryDdj(device, f"{self._cmd_syntax}:DDJ") + self._djdd = MeasurementMeasItemJittersummaryDjdd(device, f"{self._cmd_syntax}:DJDD") + self._eyewidthber = MeasurementMeasItemJittersummaryEyewidthber( + device, f"{self._cmd_syntax}:EYEWIDTHBER" + ) + self._npj = MeasurementMeasItemJittersummaryNpj(device, f"{self._cmd_syntax}:NPJ") + self._pj = MeasurementMeasItemJittersummaryPj(device, f"{self._cmd_syntax}:PJ") + self._rjdd = MeasurementMeasItemJittersummaryRjdd(device, f"{self._cmd_syntax}:RJDD") + self._tie = MeasurementMeasItemJittersummaryTie(device, f"{self._cmd_syntax}:TIE") + self._tjber = MeasurementMeasItemJittersummaryTjber(device, f"{self._cmd_syntax}:TJBER") + + @property + def dcd(self) -> MeasurementMeasItemJittersummaryDcd: + """Return the ``MEASUrement:MEAS:JITTERSummary:DCD`` command. + + Description: + - This command sets or queries whether DCD is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:DCD?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DCD?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DCD value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:DCD {0|1} + - MEASUrement:MEAS:JITTERSummary:DCD? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` adds the DCD measurement as part of jitter summary. + - ``0`` do not add the DCD measurement as part of jitter summary. + """ + return self._dcd + + @property + def ddj(self) -> MeasurementMeasItemJittersummaryDdj: + """Return the ``MEASUrement:MEAS:JITTERSummary:DDJ`` command. + + Description: + - This command sets or queries whether DDJ is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:DDJ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DDJ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DDJ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:DDJ {0|1} + - MEASUrement:MEAS:JITTERSummary:DDJ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` adds the DDJ measurement as part of jitter summary. + - ``0`` do not add the DDJ measurement as part of jitter summary. + """ + return self._ddj + + @property + def djdd(self) -> MeasurementMeasItemJittersummaryDjdd: + """Return the ``MEASUrement:MEAS:JITTERSummary:DJDD`` command. + + Description: + - This command sets or queries whether DJ-dd is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DJDD?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DJDD?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:DJDD value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:DJDD {0|1} + - MEASUrement:MEAS:JITTERSummary:DJDD? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the DJDD measurement as part of jitter summary. + - ``0`` do not add the DJDD measurement as part of jitter summary. + """ + return self._djdd + + @property + def eyewidthber(self) -> MeasurementMeasItemJittersummaryEyewidthber: + """Return the ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER`` command. + + Description: + - This command sets or queries whether EyeWidth@BER is included in the jitter summary + for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER {0|1} + - MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the EyeWidth@BER measurement as part of jitter summary. + - ``0`` do not add the EyeWidth@BER measurement as part of jitter summary. + """ + return self._eyewidthber + + @property + def npj(self) -> MeasurementMeasItemJittersummaryNpj: + """Return the ``MEASUrement:MEAS:JITTERSummary:NPJ`` command. + + Description: + - This command sets or queries whether NPJ is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:NPJ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:NPJ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:NPJ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:NPJ {0|1} + - MEASUrement:MEAS:JITTERSummary:NPJ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the NPJ measurement as part of jitter summary. + - ``0`` do not add the NPJ measurement as part of jitter summary. + """ + return self._npj + + @property + def pj(self) -> MeasurementMeasItemJittersummaryPj: + """Return the ``MEASUrement:MEAS:JITTERSummary:PJ`` command. + + Description: + - This command sets or queries whether PJ is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:PJ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:PJ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:PJ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:PJ {0|1} + - MEASUrement:MEAS:JITTERSummary:PJ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the PJ measurement as part of jitter summary. + - ``0`` do not add the PJ measurement as part of jitter summary. + """ + return self._pj + + @property + def rjdd(self) -> MeasurementMeasItemJittersummaryRjdd: + """Return the ``MEASUrement:MEAS:JITTERSummary:RJDD`` command. + + Description: + - This command sets or queries whether RJ-dd is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:JITTERSummary:RJDD?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:RJDD?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:RJDD value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:RJDD {0|1} + - MEASUrement:MEAS:JITTERSummary:RJDD? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the RJ-dd measurement as part of jitter summary. + - ``0`` do not add the RJ-dd measurement as part of jitter summary. + """ + return self._rjdd + + @property + def tie(self) -> MeasurementMeasItemJittersummaryTie: + """Return the ``MEASUrement:MEAS:JITTERSummary:TIE`` command. + + Description: + - This command sets or queries whether TIE is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary:TIE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:TIE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:TIE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:TIE {0|1} + - MEASUrement:MEAS:JITTERSummary:TIE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the TIE measurement as part of jitter summary. + - ``0`` do not add the TIE measurement as part of jitter summary. + """ + return self._tie + + @property + def tjber(self) -> MeasurementMeasItemJittersummaryTjber: + """Return the ``MEASUrement:MEAS:JITTERSummary:TJBER`` command. + + Description: + - This command sets or queries whether TJ@BER is included in the jitter summary for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:JITTERSummary:TJBER?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:TJBER?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary:TJBER value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:JITTERSummary:TJBER {0|1} + - MEASUrement:MEAS:JITTERSummary:TJBER? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` add the TJ@BER measurement as part of jitter summary. + - ``0`` do not add the TJ@BER measurement as part of jitter summary. + """ + return self._tjber + + +class MeasurementMeasItemInputpower(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:INPUTPOwer`` command. + + Description: + - This command sets or queries the input power value for IEC-Class C and Class D harmonics + standard . + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:INPUTPOwer?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:INPUTPOwer?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:INPUTPOwer value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:INPUTPOwer + - MEASUrement:MEAS:INPUTPOwer? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` specifies the input power value for class C harmonics standard. + """ + + +class MeasurementMeasItemInputlevel(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:INPUTLEVel`` command. + + Description: + - Sets or queries the input trigger voltage level. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:INPUTLEVel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:INPUTLEVel?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:INPUTLEVel value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:INPUTLEVel + - MEASUrement:MEAS:INPUTLEVel? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the trigger voltage, in the range of -500 V to +500 V. + """ + + +class MeasurementMeasItemIdletime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:IDLETime`` command. + + Description: + - This command sets or queries the idle time for the measurement when the measurement type + is burst width. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:IDLETime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:IDLETime?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:IDLETime value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:IDLETime + - MEASUrement:MEAS:IDLETime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the idle time. + """ + + +class MeasurementMeasItemHvoltage(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HVOLtage`` command. + + Description: + - This command sets or queries the measurement Torque High Voltage value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HVOLtage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HVOLtage?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:HVOLtage value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HVOLtage + - MEASUrement:MEAS:HVOLtage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the High Voltage value of the measurement in the range of 1 to 100. + """ + + +class MeasurementMeasItemHtorque(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HTORque`` command. + + Description: + - This command sets or queries the measurement High Torque value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HTORque?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HTORque?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:HTORque value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HTORque + - MEASUrement:MEAS:HTORque? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the High Torque value of the measurement in the range of 11 to + 10000000. + """ + + +class MeasurementMeasItemHlevelOutputUglobal(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal`` command. + + Description: + - This command turns on or off output global settings for measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HLEVel:OUTPut:UGLobal {ON|OFF} + - MEASUrement:MEAS:HLEVel:OUTPut:UGLobal? + ``` + + Info: + - ``ON`` sets the output global settings for measurement to on. + - ``OFF`` sets the output global settings for measurement to off. + """ + + +class MeasurementMeasItemHlevelOutput(SCPICmdRead): + """The ``MEASUrement:MEAS:HLEVel:OUTPut`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HLEVel:OUTPut?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HLEVel:OUTPut?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.uglobal``: The ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._uglobal = MeasurementMeasItemHlevelOutputUglobal( + device, f"{self._cmd_syntax}:UGLobal" + ) + + @property + def uglobal(self) -> MeasurementMeasItemHlevelOutputUglobal: + """Return the ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal`` command. + + Description: + - This command turns on or off output global settings for measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HLEVel:OUTPut:UGLobal {ON|OFF} + - MEASUrement:MEAS:HLEVel:OUTPut:UGLobal? + ``` + + Info: + - ``ON`` sets the output global settings for measurement to on. + - ``OFF`` sets the output global settings for measurement to off. + """ + return self._uglobal + + +class MeasurementMeasItemHlevel(SCPICmdRead): + """The ``MEASUrement:MEAS:HLEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HLEVel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HLEVel?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.output``: The ``MEASUrement:MEAS:HLEVel:OUTPut`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._output = MeasurementMeasItemHlevelOutput(device, f"{self._cmd_syntax}:OUTPut") + + @property + def output(self) -> MeasurementMeasItemHlevelOutput: + """Return the ``MEASUrement:MEAS:HLEVel:OUTPut`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HLEVel:OUTPut?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HLEVel:OUTPut?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.uglobal``: The ``MEASUrement:MEAS:HLEVel:OUTPut:UGLobal`` command. + """ + return self._output + + +class MeasurementMeasItemHighrefvoltage(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHREFVoltage`` command. + + Description: + - This command sets or queries the high reference voltage value for the 'time outside level' + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHREFVoltage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HIGHREFVoltage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHREFVoltage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHREFVoltage + - MEASUrement:MEAS:HIGHREFVoltage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the high reference voltage value for the selected configuration. + """ + + +class MeasurementMeasItemHighlevelWiring(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHLEVel:WIRing`` command. + + Description: + - This command sets or queries the local Input wiring. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHLEVel:WIRing?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:WIRing?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:WIRing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:WIRing {P1W2V1I1|P1W3V2I2|P3W3V2I2|P3W3V3I3|P3W3|DCP1W2} + - MEASUrement:MEAS:HIGHLEVel:WIRing? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``P1W2V1I1`` specifies P1W2V1I1 as the local input wiring. + - ``P1W3V2I2`` specifies P1W3V2I2 as the local input wiring. + - ``P3W3V2I2`` specifies P3W3V2I2 as the local input wiring. + - ``P3W3V3I3`` specifies P3W3V3I3 as the local input wiring. + - ``P3W3`` specifies P3W3 as the local input wiring. + - ``DCP1W2`` specifies DCP1W2 as the local input wiring. + """ + + +class MeasurementMeasItemHighlevelUseglobal(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL`` command. + + Description: + - This command sets or queries the IMDA source settings as global or local. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:USEGLOBAL {1|0|ON|OFF} + - MEASUrement:MEAS:HIGHLEVel:USEGLOBAL? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` specifies the source settings as global. + - ``0`` specifies the source settings as local. + - ``ON`` specifies the source settings as global. + - ``OFF`` specifies the source settings as local. + """ + + +class MeasurementMeasItemHighlevelOutwiring(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing`` command. + + Description: + - This command sets or queries the local output wiring. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:OUTWIRing {P1W2V1I1|P1W3V2I2|P3W3V3I3|P3W4|DCP1W2} + - MEASUrement:MEAS:HIGHLEVel:OUTWIRing? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``P1W2V1I1`` specifies P1W2V1I1 as the local output wiring. + - ``P3W3V2I2`` specifies P3W3V2I2 as the local output wiring. + - ``P3W3V3I3`` specifies P3W3V3I3 as the local output wiring. + - ``P3W4`` specifies P3W4 as the local output wiring. + - ``DCP1W2`` specifies DCP1W2 as the local output wiring. + """ + + +class MeasurementMeasItemHighlevelOutlineselected(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected`` command. + + Description: + - This command sets or queries local output select lines. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:OUTLINESelected {XYZY|XZYZ|YXZX|XN|YN|ZN} + - MEASUrement:MEAS:HIGHLEVel:OUTLINESelected? + ``` + + Info: + - ``XYZY`` specifies the local output select lines as XYZY. + - ``XZYZ`` specifies the local output select lines as XZYZ. + - ``YXZX`` specifies the local output select lines as YXZX. + - ``XN`` specifies the local output select lines as XN. + - ``YN`` specifies the local output select lines as YN. + - ``ZN`` specifies the local output select lines as ZN. + """ + + +class MeasurementMeasItemHighlevelOutl2ltol2n(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N`` command. + + Description: + - This command sets or queries local output Line-to-Line to Line-to-Neutral Conversion . + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N {0|1} + - MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N? + ``` + """ + + +class MeasurementMeasItemHighlevelLineselected(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHLEVel:LINESelected`` command. + + Description: + - This command sets or queries local input select lines. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:LINESelected?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:LINESelected?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:LINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:LINESelected {ABCB|ACBC|BACA|AN|BN|CN} + - MEASUrement:MEAS:HIGHLEVel:LINESelected? + ``` + + Info: + - ``ABCB`` specifies the local input select lines as ABCB. + - ``ACBC`` specifies the local input select lines as ACBC. + - ``BACA`` specifies the local input select lines as BACA. + - ``AN`` specifies the local input select lines as AN. + - ``BN`` specifies the local input select lines as BN. + - ``CN`` specifies the local input select lines as CN. + """ + + +class MeasurementMeasItemHighlevelL2ltol2n(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N`` command. + + Description: + - This command sets or queries local input Line-to-Line to Line-to-Neutral Conversion. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:L2LTOL2N {0|1} + - MEASUrement:MEAS:HIGHLEVel:L2LTOL2N? + ``` + """ + + +class MeasurementMeasItemHighlevelConfiguration(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration`` command. + + Description: + - This command sets or queries the local input and output configuration. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:CONFIGuration {INPUT|OUTPUT} + - MEASUrement:MEAS:HIGHLEVel:CONFIGuration? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``INPUT`` specifies the local Input or Output source settings as input. + - ``OUTPUT`` specifies the local Input or Output source settings as output. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementMeasItemHighlevel(SCPICmdRead): + """The ``MEASUrement:MEAS:HIGHLEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHLEVel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HIGHLEVel?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.configuration``: The ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration`` command. + - ``.l2ltol2n``: The ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N`` command. + - ``.lineselected``: The ``MEASUrement:MEAS:HIGHLEVel:LINESelected`` command. + - ``.outl2ltol2n``: The ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N`` command. + - ``.outlineselected``: The ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected`` command. + - ``.outwiring``: The ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing`` command. + - ``.useglobal``: The ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL`` command. + - ``.wiring``: The ``MEASUrement:MEAS:HIGHLEVel:WIRing`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._configuration = MeasurementMeasItemHighlevelConfiguration( + device, f"{self._cmd_syntax}:CONFIGuration" + ) + self._l2ltol2n = MeasurementMeasItemHighlevelL2ltol2n( + device, f"{self._cmd_syntax}:L2LTOL2N" + ) + self._lineselected = MeasurementMeasItemHighlevelLineselected( + device, f"{self._cmd_syntax}:LINESelected" + ) + self._outl2ltol2n = MeasurementMeasItemHighlevelOutl2ltol2n( + device, f"{self._cmd_syntax}:OUTL2LTOL2N" + ) + self._outlineselected = MeasurementMeasItemHighlevelOutlineselected( + device, f"{self._cmd_syntax}:OUTLINESelected" + ) + self._outwiring = MeasurementMeasItemHighlevelOutwiring( + device, f"{self._cmd_syntax}:OUTWIRing" + ) + self._useglobal = MeasurementMeasItemHighlevelUseglobal( + device, f"{self._cmd_syntax}:USEGLOBAL" + ) + self._wiring = MeasurementMeasItemHighlevelWiring(device, f"{self._cmd_syntax}:WIRing") + + @property + def configuration(self) -> MeasurementMeasItemHighlevelConfiguration: + """Return the ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration`` command. + + Description: + - This command sets or queries the local input and output configuration. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:CONFIGuration {INPUT|OUTPUT} + - MEASUrement:MEAS:HIGHLEVel:CONFIGuration? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``INPUT`` specifies the local Input or Output source settings as input. + - ``OUTPUT`` specifies the local Input or Output source settings as output. + """ + return self._configuration + + @property + def l2ltol2n(self) -> MeasurementMeasItemHighlevelL2ltol2n: + """Return the ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N`` command. + + Description: + - This command sets or queries local input Line-to-Line to Line-to-Neutral Conversion. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:L2LTOL2N {0|1} + - MEASUrement:MEAS:HIGHLEVel:L2LTOL2N? + ``` + """ + return self._l2ltol2n + + @property + def lineselected(self) -> MeasurementMeasItemHighlevelLineselected: + """Return the ``MEASUrement:MEAS:HIGHLEVel:LINESelected`` command. + + Description: + - This command sets or queries local input select lines. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:LINESelected?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:LINESelected?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:LINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:LINESelected {ABCB|ACBC|BACA|AN|BN|CN} + - MEASUrement:MEAS:HIGHLEVel:LINESelected? + ``` + + Info: + - ``ABCB`` specifies the local input select lines as ABCB. + - ``ACBC`` specifies the local input select lines as ACBC. + - ``BACA`` specifies the local input select lines as BACA. + - ``AN`` specifies the local input select lines as AN. + - ``BN`` specifies the local input select lines as BN. + - ``CN`` specifies the local input select lines as CN. + """ + return self._lineselected + + @property + def outl2ltol2n(self) -> MeasurementMeasItemHighlevelOutl2ltol2n: + """Return the ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N`` command. + + Description: + - This command sets or queries local output Line-to-Line to Line-to-Neutral Conversion . + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N {0|1} + - MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N? + ``` + """ + return self._outl2ltol2n + + @property + def outlineselected(self) -> MeasurementMeasItemHighlevelOutlineselected: + """Return the ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected`` command. + + Description: + - This command sets or queries local output select lines. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:OUTLINESelected {XYZY|XZYZ|YXZX|XN|YN|ZN} + - MEASUrement:MEAS:HIGHLEVel:OUTLINESelected? + ``` + + Info: + - ``XYZY`` specifies the local output select lines as XYZY. + - ``XZYZ`` specifies the local output select lines as XZYZ. + - ``YXZX`` specifies the local output select lines as YXZX. + - ``XN`` specifies the local output select lines as XN. + - ``YN`` specifies the local output select lines as YN. + - ``ZN`` specifies the local output select lines as ZN. + """ + return self._outlineselected + + @property + def outwiring(self) -> MeasurementMeasItemHighlevelOutwiring: + """Return the ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing`` command. + + Description: + - This command sets or queries the local output wiring. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:OUTWIRing {P1W2V1I1|P1W3V2I2|P3W3V3I3|P3W4|DCP1W2} + - MEASUrement:MEAS:HIGHLEVel:OUTWIRing? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``P1W2V1I1`` specifies P1W2V1I1 as the local output wiring. + - ``P3W3V2I2`` specifies P3W3V2I2 as the local output wiring. + - ``P3W3V3I3`` specifies P3W3V3I3 as the local output wiring. + - ``P3W4`` specifies P3W4 as the local output wiring. + - ``DCP1W2`` specifies DCP1W2 as the local output wiring. + """ + return self._outwiring + + @property + def useglobal(self) -> MeasurementMeasItemHighlevelUseglobal: + """Return the ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL`` command. + + Description: + - This command sets or queries the IMDA source settings as global or local. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:USEGLOBAL {1|0|ON|OFF} + - MEASUrement:MEAS:HIGHLEVel:USEGLOBAL? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` specifies the source settings as global. + - ``0`` specifies the source settings as local. + - ``ON`` specifies the source settings as global. + - ``OFF`` specifies the source settings as local. + """ + return self._useglobal + + @property + def wiring(self) -> MeasurementMeasItemHighlevelWiring: + """Return the ``MEASUrement:MEAS:HIGHLEVel:WIRing`` command. + + Description: + - This command sets or queries the local Input wiring. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHLEVel:WIRing?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:WIRing?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHLEVel:WIRing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHLEVel:WIRing {P1W2V1I1|P1W3V2I2|P3W3V2I2|P3W3V3I3|P3W3|DCP1W2} + - MEASUrement:MEAS:HIGHLEVel:WIRing? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``P1W2V1I1`` specifies P1W2V1I1 as the local input wiring. + - ``P1W3V2I2`` specifies P1W3V2I2 as the local input wiring. + - ``P3W3V2I2`` specifies P3W3V2I2 as the local input wiring. + - ``P3W3V3I3`` specifies P3W3V3I3 as the local input wiring. + - ``P3W3`` specifies P3W3 as the local input wiring. + - ``DCP1W2`` specifies DCP1W2 as the local input wiring. + """ + return self._wiring + + +class MeasurementMeasItemHarmonicsunits(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HARMONICSUNits`` command. + + Description: + - This command sets or queries harmonics units. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HARMONICSUNits?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HARMONICSUNits?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSUNits value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HARMONICSUNits {LOGARITHM|LINEAR} + - MEASUrement:MEAS:HARMONICSUNits? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``LOGARITHM`` specifies logarithmic as the harmonics units. + - ``LINEAR`` specifies linear as the harmonics units. + """ + + +class MeasurementMeasItemHarmonicsstd(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HARMONICSStd`` command. + + Description: + - This command sets or queries harmonics standard. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HARMONICSStd?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HARMONICSStd?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSStd value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HARMONICSStd {NONE|IEC|IEEE519|CUSTOM} + - MEASUrement:MEAS:HARMONICSStd? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies none as the harmonics test standard. + - ``IEC`` specifies IEC as the harmonics test standard. + - ``IEEE519`` specifies IEEE519 as the harmonics test standard. + - ``CUSTOM`` specifies that there is a custom harmonics test standard. + """ + + +class MeasurementMeasItemHarmonicssource(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HARMONICSSOURce`` command. + + Description: + - This command sets or queries harmonics source. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HARMONICSSOURce?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HARMONICSSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSSOURce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HARMONICSSOURce {CURRENT|VOLTAGE} + - MEASUrement:MEAS:HARMONICSSOURce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``CURRENT`` specifies current as the harmonics source. + - ``VOLTAGE`` specifies voltage as the harmonics source. + """ + + +class MeasurementMeasItemHarmonicsclass(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:HARMONICSCLass`` command. + + Description: + - This command sets or queries the class type for the harmonics measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HARMONICSCLass?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HARMONICSCLass?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSCLass value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HARMONICSCLass {CLASSA|CLASSB|CLASSC|CLASSD} + - MEASUrement:MEAS:HARMONICSCLass? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``CLASSA`` specifies the class type to A. + - ``CLASSB`` specifies the class type to B. + - ``CLASSC`` specifies the class type to C. + - ``CLASSD`` specifies the class type to D. + """ + + +class MeasurementMeasItemGlobalref(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:GLOBalref`` command. + + Description: + - This command sets or queries the reference levels global flag for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GLOBalref?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:GLOBalref?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:GLOBalref value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GLOBalref {OFF|ON|0|1} + - MEASUrement:MEAS:GLOBalref? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` allows ref levels to be set separately for each measurement. + - ``ON`` applies the same ref levels to all measurements. + - ``0`` allows ref levels to be set separately for each measurement. + - ``1`` applies the same ref levels to all measurements. + """ + + +class MeasurementMeasItemGatingStarttime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:GATing:STARTtime`` command. + + Description: + - Sets or queries the start gate time for the measurement when using Local gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:STARTtime?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:GATing:STARTtime?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:STARTtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:STARTtime + - MEASUrement:MEAS:GATing:STARTtime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the time gating start gate time in seconds. The valid range is -10000 s to + 10000 s. + """ + + +class MeasurementMeasItemGatingSearchsource(SCPICmdWrite): + """The ``MEASUrement:MEAS:GATing:SEARCHSource`` command. + + Description: + - This command sets or queries the gating search source when the gating type is search. The + measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:SEARCHSource value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:SEARCHSource SEARCH1 + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``SEARCH1`` is the gating source for search gating. + """ + + +class MeasurementMeasItemGatingMidref(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:GATing:MIDRef`` command. + + Description: + - This command sets or queries the gating mid ref value when the gating type is logic. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:MIDRef?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:GATing:MIDRef?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:MIDRef value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:MIDRef + - MEASUrement:MEAS:GATing:MIDRef? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the mid ref value for gating. + """ + + +class MeasurementMeasItemGatingLogicsource(SCPICmdWrite): + """The ``MEASUrement:MEAS:GATing:LOGICSource`` command. + + Description: + - This command sets or queries the gating data source when the gating type is logic. The + measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:LOGICSource value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:LOGICSource {S_Ch|CH|MATH|REF} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MeasurementMeasItemGatingHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:GATing:HYSTeresis`` command. + + Description: + - This command sets or queries the gating hysteresis value when the gating type is logic. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:HYSTeresis?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:GATing:HYSTeresis?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:HYSTeresis + - MEASUrement:MEAS:GATing:HYSTeresis? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the gating hysteresis. + """ + + +class MeasurementMeasItemGatingGlobal(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:GATing:GLOBal`` command. + + Description: + - This command sets or queries the gating settings global flag. Measurements are specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:GLOBal?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:GATing:GLOBal?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:GATing:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` specifies gate settings can be changed independently for each individual + measurement. + - ``ON`` applies global gate settings to all the measurements' gate settings. + - ``0`` specifies gate settings can be changed independently for each individual + measurement. + - ``1`` applies global gate settings to all the measurements' gate settings. + """ + + +class MeasurementMeasItemGatingEndtime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:GATing:ENDtime`` command. + + Description: + - Sets or queries the end gate time for the measurement when using Local gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:ENDtime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:GATing:ENDtime?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:ENDtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:ENDtime + - MEASUrement:MEAS:GATing:ENDtime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the time gating end gate time in seconds. The valid range is -10000 s to + 10000 s. + """ + + +class MeasurementMeasItemGatingActive(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:GATing:ACTive`` command. + + Description: + - This command sets or queries the gating active level when the gating type is logic. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:ACTive?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:GATing:ACTive?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:ACTive value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:ACTive {HIGH|LOW} + - MEASUrement:MEAS:GATing:ACTive? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``HIGH`` takes a measurement when logic gating is High. + - ``LOW`` takes a measurement when logic gating Low. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementMeasItemGating(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:GATing`` command. + + Description: + - This command sets or queries the gating type for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:GATing?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:GATing value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing {NONE|SCREEN|CURSor|LOGic|SEARch|TIMe} + - MEASUrement:MEAS:GATing? + ``` + + Info: + - ``MEAS`` is the measurement number for which to return a value. + - ``NONE`` specifies measurements are taken across the entire record. + - ``SCREEN`` turns on gating, using the left and right edges of the screen. + - ``CURSor`` limits measurements to the portion of the waveform between the vertical bar + cursors, even if they are off screen. + - ``LOGic`` specifies that measurements are taken only when the logical state of other + waveforms is true. + - ``SEARch`` specifies that measurements are taken only where the results of a user + specified search are found. + - ``TIMe`` limits measurements to the portion of the waveform between the Start and End gate + times. + + Properties: + - ``.active``: The ``MEASUrement:MEAS:GATing:ACTive`` command. + - ``.endtime``: The ``MEASUrement:MEAS:GATing:ENDtime`` command. + - ``.global``: The ``MEASUrement:MEAS:GATing:GLOBal`` command. + - ``.hysteresis``: The ``MEASUrement:MEAS:GATing:HYSTeresis`` command. + - ``.logicsource``: The ``MEASUrement:MEAS:GATing:LOGICSource`` command. + - ``.midref``: The ``MEASUrement:MEAS:GATing:MIDRef`` command. + - ``.searchsource``: The ``MEASUrement:MEAS:GATing:SEARCHSource`` command. + - ``.starttime``: The ``MEASUrement:MEAS:GATing:STARTtime`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._active = MeasurementMeasItemGatingActive(device, f"{self._cmd_syntax}:ACTive") + self._endtime = MeasurementMeasItemGatingEndtime(device, f"{self._cmd_syntax}:ENDtime") + self._global = MeasurementMeasItemGatingGlobal(device, f"{self._cmd_syntax}:GLOBal") + self._hysteresis = MeasurementMeasItemGatingHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._logicsource = MeasurementMeasItemGatingLogicsource( + device, f"{self._cmd_syntax}:LOGICSource" + ) + self._midref = MeasurementMeasItemGatingMidref(device, f"{self._cmd_syntax}:MIDRef") + self._searchsource = MeasurementMeasItemGatingSearchsource( + device, f"{self._cmd_syntax}:SEARCHSource" + ) + self._starttime = MeasurementMeasItemGatingStarttime( + device, f"{self._cmd_syntax}:STARTtime" + ) + + @property + def active(self) -> MeasurementMeasItemGatingActive: + """Return the ``MEASUrement:MEAS:GATing:ACTive`` command. + + Description: + - This command sets or queries the gating active level when the gating type is logic. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:ACTive?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:GATing:ACTive?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:ACTive value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:ACTive {HIGH|LOW} + - MEASUrement:MEAS:GATing:ACTive? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``HIGH`` takes a measurement when logic gating is High. + - ``LOW`` takes a measurement when logic gating Low. + """ + return self._active + + @property + def endtime(self) -> MeasurementMeasItemGatingEndtime: + """Return the ``MEASUrement:MEAS:GATing:ENDtime`` command. + + Description: + - Sets or queries the end gate time for the measurement when using Local gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:ENDtime?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:GATing:ENDtime?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:ENDtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:ENDtime + - MEASUrement:MEAS:GATing:ENDtime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the time gating end gate time in seconds. The valid range is -10000 s to + 10000 s. + """ + return self._endtime + + @property + def global_(self) -> MeasurementMeasItemGatingGlobal: + """Return the ``MEASUrement:MEAS:GATing:GLOBal`` command. + + Description: + - This command sets or queries the gating settings global flag. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:GLOBal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:GATing:GLOBal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:GATing:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` specifies gate settings can be changed independently for each individual + measurement. + - ``ON`` applies global gate settings to all the measurements' gate settings. + - ``0`` specifies gate settings can be changed independently for each individual + measurement. + - ``1`` applies global gate settings to all the measurements' gate settings. + """ + return self._global + + @property + def hysteresis(self) -> MeasurementMeasItemGatingHysteresis: + """Return the ``MEASUrement:MEAS:GATing:HYSTeresis`` command. + + Description: + - This command sets or queries the gating hysteresis value when the gating type is + logic. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:HYSTeresis?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:GATing:HYSTeresis?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:HYSTeresis + - MEASUrement:MEAS:GATing:HYSTeresis? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the gating hysteresis. + """ + return self._hysteresis + + @property + def logicsource(self) -> MeasurementMeasItemGatingLogicsource: + """Return the ``MEASUrement:MEAS:GATing:LOGICSource`` command. + + Description: + - This command sets or queries the gating data source when the gating type is logic. The + measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:LOGICSource value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:LOGICSource {S_Ch|CH|MATH|REF} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._logicsource + + @property + def midref(self) -> MeasurementMeasItemGatingMidref: + """Return the ``MEASUrement:MEAS:GATing:MIDRef`` command. + + Description: + - This command sets or queries the gating mid ref value when the gating type is logic. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:MIDRef?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:GATing:MIDRef?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:MIDRef value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:MIDRef + - MEASUrement:MEAS:GATing:MIDRef? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the mid ref value for gating. + """ + return self._midref + + @property + def searchsource(self) -> MeasurementMeasItemGatingSearchsource: + """Return the ``MEASUrement:MEAS:GATing:SEARCHSource`` command. + + Description: + - This command sets or queries the gating search source when the gating type is search. + The measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:SEARCHSource value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:SEARCHSource SEARCH1 + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``SEARCH1`` is the gating source for search gating. + """ + return self._searchsource + + @property + def starttime(self) -> MeasurementMeasItemGatingStarttime: + """Return the ``MEASUrement:MEAS:GATing:STARTtime`` command. + + Description: + - Sets or queries the start gate time for the measurement when using Local gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing:STARTtime?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:GATing:STARTtime?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GATing:STARTtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing:STARTtime + - MEASUrement:MEAS:GATing:STARTtime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the time gating start gate time in seconds. The valid range is -10000 s + to 10000 s. + """ + return self._starttime + + +class MeasurementMeasItemFundcurrent(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FUNDCURRent`` command. + + Description: + - This command sets or queries the fundamental current value for IEC-Class C type harmonics + standard. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FUNDCURRent?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FUNDCURRent?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:FUNDCURRent value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FUNDCURRent + - MEASUrement:MEAS:FUNDCURRent? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the fundamental current for class C harmonics standard. + """ + + +class MeasurementMeasItemFromedge(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FROMedge`` command. + + Description: + - This command sets or queries the from edge type for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FROMedge?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FROMedge?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:FROMedge value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMedge {RISe|FALL|BOTH} + - MEASUrement:MEAS:FROMedge? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FALL`` specifies the falling edge of the waveform. + - ``RISE`` specifies the rising edge of the waveform. + - ``BOTH`` specifies both the rising and falling edges of the waveform. + """ + + +class MeasurementMeasItemFromsymbolMeasureat(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FROMSymbol:MEASUREAT`` command. + + Description: + - This command sets or queries the DDR digital measurement From Symbol MeasureAT value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FROMSymbol:MEASUREAT?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:MEASUREAT?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:MEASUREAT value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:MEASUREAT {Start|Stop|ClockEdge} + - MEASUrement:MEAS:FROMSymbol:MEASUREAT? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``Start`` sets the FromSymbol MeasureAT to Start. + - ``Stop`` sets the FromSymbol MeasureAT to Stop. + - ``ClockEdge`` sets the FromSymbol MeasureAT to ClockEdge. + """ + + +class MeasurementMeasItemFromsymbolLogic5source(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 4 source From symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 4 From Symbol to H (High). + - ``L`` sets the logic source 4 From Symbol to L (Low). + - ``X`` sets the logic source 4 From Symbol to X (Don't care). + """ + + +class MeasurementMeasItemFromsymbolLogic4source(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 3 source From symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 3 From Symbol to H (High). + - ``L`` sets the logic source 3 From Symbol to L (Low). + - ``X`` sets the logic source 3 From Symbol to X (Don't care). + """ + + +class MeasurementMeasItemFromsymbolLogic3source(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 2 source From symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 2 From Symbol to H (High). + - ``L`` sets the logic source 2 From Symbol to L (Low). + - ``X`` sets the logic source 2 From Symbol to X (Don't care). + """ + + +class MeasurementMeasItemFromsymbolLogic2source(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 1 source From symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 1 From Symbol to H (High). + - ``L`` sets the logic source 1 From Symbol to L (Low). + - ``X`` sets the logic source 1 From Symbol to X (Don't care). + """ + + +class MeasurementMeasItemFromsymbol(SCPICmdRead): + """The ``MEASUrement:MEAS:FROMSymbol`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FROMSymbol?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FROMSymbol?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.logic2source``: The ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce`` command. + - ``.logic3source``: The ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce`` command. + - ``.logic4source``: The ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce`` command. + - ``.logic5source``: The ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce`` command. + - ``.measureat``: The ``MEASUrement:MEAS:FROMSymbol:MEASUREAT`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._logic2source = MeasurementMeasItemFromsymbolLogic2source( + device, f"{self._cmd_syntax}:LOGIC2SOUrce" + ) + self._logic3source = MeasurementMeasItemFromsymbolLogic3source( + device, f"{self._cmd_syntax}:LOGIC3SOUrce" + ) + self._logic4source = MeasurementMeasItemFromsymbolLogic4source( + device, f"{self._cmd_syntax}:LOGIC4SOUrce" + ) + self._logic5source = MeasurementMeasItemFromsymbolLogic5source( + device, f"{self._cmd_syntax}:LOGIC5SOUrce" + ) + self._measureat = MeasurementMeasItemFromsymbolMeasureat( + device, f"{self._cmd_syntax}:MEASUREAT" + ) + + @property + def logic2source(self) -> MeasurementMeasItemFromsymbolLogic2source: + """Return the ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 1 source From symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 1 From Symbol to H (High). + - ``L`` sets the logic source 1 From Symbol to L (Low). + - ``X`` sets the logic source 1 From Symbol to X (Don't care). + """ + return self._logic2source + + @property + def logic3source(self) -> MeasurementMeasItemFromsymbolLogic3source: + """Return the ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 2 source From symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 2 From Symbol to H (High). + - ``L`` sets the logic source 2 From Symbol to L (Low). + - ``X`` sets the logic source 2 From Symbol to X (Don't care). + """ + return self._logic3source + + @property + def logic4source(self) -> MeasurementMeasItemFromsymbolLogic4source: + """Return the ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 3 source From symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 3 From Symbol to H (High). + - ``L`` sets the logic source 3 From Symbol to L (Low). + - ``X`` sets the logic source 3 From Symbol to X (Don't care). + """ + return self._logic4source + + @property + def logic5source(self) -> MeasurementMeasItemFromsymbolLogic5source: + """Return the ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce`` command. + + Description: + - This command sets or queries the DDR digital measurement logic 4 source From symbol. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce {H|L|X} + - MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``H`` sets the logic source 4 From Symbol to H (High). + - ``L`` sets the logic source 4 From Symbol to L (Low). + - ``X`` sets the logic source 4 From Symbol to X (Don't care). + """ + return self._logic5source + + @property + def measureat(self) -> MeasurementMeasItemFromsymbolMeasureat: + """Return the ``MEASUrement:MEAS:FROMSymbol:MEASUREAT`` command. + + Description: + - This command sets or queries the DDR digital measurement From Symbol MeasureAT value. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMSymbol:MEASUREAT?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:MEASUREAT?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMSymbol:MEASUREAT value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMSymbol:MEASUREAT {Start|Stop|ClockEdge} + - MEASUrement:MEAS:FROMSymbol:MEASUREAT? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``Start`` sets the FromSymbol MeasureAT to Start. + - ``Stop`` sets the FromSymbol MeasureAT to Stop. + - ``ClockEdge`` sets the FromSymbol MeasureAT to ClockEdge. + """ + return self._measureat + + +class MeasurementMeasItemFromedgesearchdirect(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FROMEDGESEARCHDIRect`` command. + + Description: + - This command sets or queries the from edge search direction for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FROMEDGESEARCHDIRect?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMEDGESEARCHDIRect?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMEDGESEARCHDIRect value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMEDGESEARCHDIRect {FORWard|BACKWard} + - MEASUrement:MEAS:FROMEDGESEARCHDIRect? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FORWard`` specifies a forward search from the edge. + - ``BACKWard`` specifies a backward search from the edge. + """ + + +class MeasurementMeasItemFreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FREQ`` command. + + Description: + - This command sets or queries switching frequency for Switching Ripple measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FREQ?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FREQ?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:FREQ value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FREQ + - MEASUrement:MEAS:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the switching frequency. The default is 100k Hz, The minimum is 50 Hz, + and the maximum is 1 GHz. + """ + + +class MeasurementMeasItemFiltersRamptime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers:RAMPtime`` command. + + Description: + - This command sets or queries the filter ramp time for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:RAMPtime?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:RAMPtime?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:RAMPtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:RAMPtime + - MEASUrement:MEAS:FILTers:RAMPtime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the current filter ramp time. + """ + + +class MeasurementMeasItemFiltersLowpassSpec(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers:LOWPass:SPEC`` command. + + Description: + - This command sets or queries the low pass filter order for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:LOWPass:SPEC?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:FILTers:LOWPass:SPEC? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies no filter. + - ``FIRST`` specifies a first-order filter. + - ``SECOND`` specifies a second-order filter. + - ``THIRD`` specifies a third-order filter. + """ + + +class MeasurementMeasItemFiltersLowpassFreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers:LOWPass:FREQ`` command. + + Description: + - This command sets or queries the low pass filter cutoff frequency for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:LOWPass:FREQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:LOWPass:FREQ + - MEASUrement:MEAS:FILTers:LOWPass:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the current low pass filter frequency. The argument range is 20 Hz to 10e6 + Hz. + """ + + +class MeasurementMeasItemFiltersLowpass(SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers:LOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:LOWPass?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FILTers:LOWPass?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.freq``: The ``MEASUrement:MEAS:FILTers:LOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:MEAS:FILTers:LOWPass:SPEC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._freq = MeasurementMeasItemFiltersLowpassFreq(device, f"{self._cmd_syntax}:FREQ") + self._spec = MeasurementMeasItemFiltersLowpassSpec(device, f"{self._cmd_syntax}:SPEC") + + @property + def freq(self) -> MeasurementMeasItemFiltersLowpassFreq: + """Return the ``MEASUrement:MEAS:FILTers:LOWPass:FREQ`` command. + + Description: + - This command sets or queries the low pass filter cutoff frequency for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:FREQ?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:LOWPass:FREQ + - MEASUrement:MEAS:FILTers:LOWPass:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the current low pass filter frequency. The argument range is 20 Hz to + 10e6 Hz. + """ + return self._freq + + @property + def spec(self) -> MeasurementMeasItemFiltersLowpassSpec: + """Return the ``MEASUrement:MEAS:FILTers:LOWPass:SPEC`` command. + + Description: + - This command sets or queries the low pass filter order for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:SPEC?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:FILTers:LOWPass:SPEC? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies no filter. + - ``FIRST`` specifies a first-order filter. + - ``SECOND`` specifies a second-order filter. + - ``THIRD`` specifies a third-order filter. + """ + return self._spec + + +class MeasurementMeasItemFiltersHighpassSpec(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC`` command. + + Description: + - This command sets or queries the high pass filter order for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:HIGHPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:FILTers:HIGHPass:SPEC? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies no filter. + - ``FIRST`` specifies a first-order filter. + - ``SECOND`` specifies a second-order filter. + - ``THIRD`` specifies a third-order filter. + """ + + +class MeasurementMeasItemFiltersHighpassFreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ`` command. + + Description: + - This command sets or queries the high pass filter frequency for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:HIGHPass:FREQ + - MEASUrement:MEAS:FILTers:HIGHPass:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the current high pass filter frequency. + """ + + +class MeasurementMeasItemFiltersHighpass(SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers:HIGHPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:HIGHPass?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.freq``: The ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._freq = MeasurementMeasItemFiltersHighpassFreq(device, f"{self._cmd_syntax}:FREQ") + self._spec = MeasurementMeasItemFiltersHighpassSpec(device, f"{self._cmd_syntax}:SPEC") + + @property + def freq(self) -> MeasurementMeasItemFiltersHighpassFreq: + """Return the ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ`` command. + + Description: + - This command sets or queries the high pass filter frequency for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:HIGHPass:FREQ + - MEASUrement:MEAS:FILTers:HIGHPass:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the current high pass filter frequency. + """ + return self._freq + + @property + def spec(self) -> MeasurementMeasItemFiltersHighpassSpec: + """Return the ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC`` command. + + Description: + - This command sets or queries the high pass filter order for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:HIGHPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:MEAS:FILTers:HIGHPass:SPEC? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies no filter. + - ``FIRST`` specifies a first-order filter. + - ``SECOND`` specifies a second-order filter. + - ``THIRD`` specifies a third-order filter. + """ + return self._spec + + +class MeasurementMeasItemFiltersGlobal(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers:GLOBal`` command. + + Description: + - This command sets or queries the global flag for filter settings for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:GLOBal?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FILTers:GLOBal?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:FILTers:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` causes filter settings to be changed independently for each individual + measurement. + - ``ON`` applies global filter settings to all the measurements' filter settings. + - ``0`` causes filter settings to be changed independently for each individual measurement. + - ``1`` applies global filter settings to all the measurements' filter settings. + """ + + +class MeasurementMeasItemFiltersBlankingtime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers:BLANKingtime`` command. + + Description: + - This command sets or queries the filter blanking time for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:BLANKingtime?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:BLANKingtime?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:BLANKingtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:BLANKingtime + - MEASUrement:MEAS:FILTers:BLANKingtime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the current filter blanking time. + """ + + +class MeasurementMeasItemFilters(SCPICmdRead): + """The ``MEASUrement:MEAS:FILTers`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FILTers?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.blankingtime``: The ``MEASUrement:MEAS:FILTers:BLANKingtime`` command. + - ``.global``: The ``MEASUrement:MEAS:FILTers:GLOBal`` command. + - ``.highpass``: The ``MEASUrement:MEAS:FILTers:HIGHPass`` command tree. + - ``.lowpass``: The ``MEASUrement:MEAS:FILTers:LOWPass`` command tree. + - ``.ramptime``: The ``MEASUrement:MEAS:FILTers:RAMPtime`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._blankingtime = MeasurementMeasItemFiltersBlankingtime( + device, f"{self._cmd_syntax}:BLANKingtime" + ) + self._global = MeasurementMeasItemFiltersGlobal(device, f"{self._cmd_syntax}:GLOBal") + self._highpass = MeasurementMeasItemFiltersHighpass(device, f"{self._cmd_syntax}:HIGHPass") + self._lowpass = MeasurementMeasItemFiltersLowpass(device, f"{self._cmd_syntax}:LOWPass") + self._ramptime = MeasurementMeasItemFiltersRamptime(device, f"{self._cmd_syntax}:RAMPtime") + + @property + def blankingtime(self) -> MeasurementMeasItemFiltersBlankingtime: + """Return the ``MEASUrement:MEAS:FILTers:BLANKingtime`` command. + + Description: + - This command sets or queries the filter blanking time for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FILTers:BLANKingtime?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:BLANKingtime?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:BLANKingtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:BLANKingtime + - MEASUrement:MEAS:FILTers:BLANKingtime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the current filter blanking time. + """ + return self._blankingtime + + @property + def global_(self) -> MeasurementMeasItemFiltersGlobal: + """Return the ``MEASUrement:MEAS:FILTers:GLOBal`` command. + + Description: + - This command sets or queries the global flag for filter settings for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:GLOBal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:GLOBal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:FILTers:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` causes filter settings to be changed independently for each individual + measurement. + - ``ON`` applies global filter settings to all the measurements' filter settings. + - ``0`` causes filter settings to be changed independently for each individual + measurement. + - ``1`` applies global filter settings to all the measurements' filter settings. + """ + return self._global + + @property + def highpass(self) -> MeasurementMeasItemFiltersHighpass: + """Return the ``MEASUrement:MEAS:FILTers:HIGHPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:HIGHPass?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:HIGHPass?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.freq``: The ``MEASUrement:MEAS:FILTers:HIGHPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:MEAS:FILTers:HIGHPass:SPEC`` command. + """ + return self._highpass + + @property + def lowpass(self) -> MeasurementMeasItemFiltersLowpass: + """Return the ``MEASUrement:MEAS:FILTers:LOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:LOWPass?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:LOWPass?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.freq``: The ``MEASUrement:MEAS:FILTers:LOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:MEAS:FILTers:LOWPass:SPEC`` command. + """ + return self._lowpass + + @property + def ramptime(self) -> MeasurementMeasItemFiltersRamptime: + """Return the ``MEASUrement:MEAS:FILTers:RAMPtime`` command. + + Description: + - This command sets or queries the filter ramp time for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers:RAMPtime?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTers:RAMPtime?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTers:RAMPtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTers:RAMPtime + - MEASUrement:MEAS:FILTers:RAMPtime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the current filter ramp time. + """ + return self._ramptime + + +class MeasurementMeasItemFilterrangeto(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FILTERRANGETO`` command. + + Description: + - This command sets or queries harmonics filter to order. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTERRANGETO?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FILTERRANGETO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTERRANGETO value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTERRANGETO + - MEASUrement:MEAS:FILTERRANGETO? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the filter range to value. The default value is 50. + """ + + +class MeasurementMeasItemFilterrangefrom(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:FILTERRANGEFROM`` command. + + Description: + - This command sets or queries harmonics filter from order. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTERRANGEFROM?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FILTERRANGEFROM?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTERRANGEFROM value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTERRANGEFROM + - MEASUrement:MEAS:FILTERRANGEFROM? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the filter range from value. The default value is 1. + """ + + +class MeasurementMeasItemFailcount(SCPICmdRead): + """The ``MEASUrement:MEAS:FAILCount`` command. + + Description: + - This command returns the number of measurement failures, if applicable, for the selected + measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FAILCount?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FAILCount?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FAILCount? + ``` + """ + + +class MeasurementMeasItemEequal(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EEQUal`` command. + + Description: + - This command turns on or off the edge qualifier settings as input waveform to measurement. + The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EEQUal?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EEQUal?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EEQUal value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EEQUal {ON|OFF} + - MEASUrement:MEAS:EEQUal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ON`` specifies the edge qualifier settings has been turned on. + - ``OFF`` specifies the edge qualifier settings has been turned off. + """ + + +class MeasurementMeasItemEdgesUpperfrequency(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGES:UPPERFREQuency`` command. + + Description: + - This command sets or queries the upper frequency for the measurement when the measurement + type is phase noise. Higher frequencies are ignored. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:UPPERFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:EDGES:UPPERFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:UPPERFREQuency value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:UPPERFREQuency + - MEASUrement:MEAS:EDGES:UPPERFREQuency? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the upper frequency of the edge. + """ + + +class MeasurementMeasItemEdgesTolevel(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGES:TOLevel`` command. + + Description: + - This command sets or queries the 'to level' edge for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:TOLevel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGES:TOLevel?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:TOLevel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:TOLevel {HIGH|MID|LOW} + - MEASUrement:MEAS:EDGES:TOLevel? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``HIGH`` specifies the HIGH level. + - ``MID`` specifies the MID level. + - ``LOW`` specifies the LOW level. + """ + + +class MeasurementMeasItemEdgesSlewratemethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGES:SLEWRATEMethod`` command. + + Description: + - This command sets or queries the slew rate method for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:SLEWRATEMethod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:EDGES:SLEWRATEMethod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:SLEWRATEMethod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:SLEWRATEMethod {NOMinal|DDR} + - MEASUrement:MEAS:EDGES:SLEWRATEMethod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NOMinal`` specifies the nominal slew rate method. + - ``DDR`` specifies the DDR slew rate method. + """ + + +class MeasurementMeasItemEdgesN(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGES:N`` command. + + Description: + - The command sets or queries the number of accumulation cycles for the measurement when the + measurement type is nperiod. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:N?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGES:N?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EDGES:N value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:N + - MEASUrement:MEAS:EDGES:N? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the maximum number of edges used by the measurement. + """ + + +class MeasurementMeasItemEdgesLowerfrequency(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGES:LOWERFREQuency`` command. + + Description: + - This command sets or queries the lower frequency for the measurement when the measurement + type is phase noise. Lower frequencies are ignored. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:LOWERFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:EDGES:LOWERFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:LOWERFREQuency value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:LOWERFREQuency + - MEASUrement:MEAS:EDGES:LOWERFREQuency? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the lower frequency of the edge. + """ + + +class MeasurementMeasItemEdgesLevel(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGES:LEVel`` command. + + Description: + - This sets or queries the level type for the 'time outside level' measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:LEVel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGES:LEVel?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EDGES:LEVel value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:LEVel {HIGH|LOW|BOTH} + - MEASUrement:MEAS:EDGES:LEVel? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``HIGH`` specifies the HIGH level. + - ``LOW`` specifies the LOW level. + - ``BOTH`` specifies both the HIGH and LOW level. + """ + + +class MeasurementMeasItemEdgesFromlevel(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGES:FROMLevel`` command. + + Description: + - This command sets or queries the 'from level' edge for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:FROMLevel?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGES:FROMLevel?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:FROMLevel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:FROMLevel {MID|LOW|HIGH} + - MEASUrement:MEAS:EDGES:FROMLevel? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``MID`` specifies the MID level. + - ``HIGH`` specifies the HIGH level. + - ``LOW`` specifies the LOW level. + """ + + +class MeasurementMeasItemEdges(SCPICmdRead): + """The ``MEASUrement:MEAS:EDGES`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGES?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.fromlevel``: The ``MEASUrement:MEAS:EDGES:FROMLevel`` command. + - ``.level``: The ``MEASUrement:MEAS:EDGES:LEVel`` command. + - ``.lowerfrequency``: The ``MEASUrement:MEAS:EDGES:LOWERFREQuency`` command. + - ``.n``: The ``MEASUrement:MEAS:EDGES:N`` command. + - ``.slewratemethod``: The ``MEASUrement:MEAS:EDGES:SLEWRATEMethod`` command. + - ``.tolevel``: The ``MEASUrement:MEAS:EDGES:TOLevel`` command. + - ``.upperfrequency``: The ``MEASUrement:MEAS:EDGES:UPPERFREQuency`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fromlevel = MeasurementMeasItemEdgesFromlevel(device, f"{self._cmd_syntax}:FROMLevel") + self._level = MeasurementMeasItemEdgesLevel(device, f"{self._cmd_syntax}:LEVel") + self._lowerfrequency = MeasurementMeasItemEdgesLowerfrequency( + device, f"{self._cmd_syntax}:LOWERFREQuency" + ) + self._n = MeasurementMeasItemEdgesN(device, f"{self._cmd_syntax}:N") + self._slewratemethod = MeasurementMeasItemEdgesSlewratemethod( + device, f"{self._cmd_syntax}:SLEWRATEMethod" + ) + self._tolevel = MeasurementMeasItemEdgesTolevel(device, f"{self._cmd_syntax}:TOLevel") + self._upperfrequency = MeasurementMeasItemEdgesUpperfrequency( + device, f"{self._cmd_syntax}:UPPERFREQuency" + ) + + @property + def fromlevel(self) -> MeasurementMeasItemEdgesFromlevel: + """Return the ``MEASUrement:MEAS:EDGES:FROMLevel`` command. + + Description: + - This command sets or queries the 'from level' edge for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:FROMLevel?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:EDGES:FROMLevel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:FROMLevel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:FROMLevel {MID|LOW|HIGH} + - MEASUrement:MEAS:EDGES:FROMLevel? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``MID`` specifies the MID level. + - ``HIGH`` specifies the HIGH level. + - ``LOW`` specifies the LOW level. + """ + return self._fromlevel + + @property + def level(self) -> MeasurementMeasItemEdgesLevel: + """Return the ``MEASUrement:MEAS:EDGES:LEVel`` command. + + Description: + - This sets or queries the level type for the 'time outside level' measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:LEVel?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGES:LEVel?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:LEVel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:LEVel {HIGH|LOW|BOTH} + - MEASUrement:MEAS:EDGES:LEVel? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``HIGH`` specifies the HIGH level. + - ``LOW`` specifies the LOW level. + - ``BOTH`` specifies both the HIGH and LOW level. + """ + return self._level + + @property + def lowerfrequency(self) -> MeasurementMeasItemEdgesLowerfrequency: + """Return the ``MEASUrement:MEAS:EDGES:LOWERFREQuency`` command. + + Description: + - This command sets or queries the lower frequency for the measurement when the + measurement type is phase noise. Lower frequencies are ignored. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:EDGES:LOWERFREQuency?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:EDGES:LOWERFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:LOWERFREQuency value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:LOWERFREQuency + - MEASUrement:MEAS:EDGES:LOWERFREQuency? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the lower frequency of the edge. + """ + return self._lowerfrequency + + @property + def n(self) -> MeasurementMeasItemEdgesN: + """Return the ``MEASUrement:MEAS:EDGES:N`` command. + + Description: + - The command sets or queries the number of accumulation cycles for the measurement when + the measurement type is nperiod. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:N?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGES:N?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EDGES:N value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:N + - MEASUrement:MEAS:EDGES:N? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the maximum number of edges used by the measurement. + """ + return self._n + + @property + def slewratemethod(self) -> MeasurementMeasItemEdgesSlewratemethod: + """Return the ``MEASUrement:MEAS:EDGES:SLEWRATEMethod`` command. + + Description: + - This command sets or queries the slew rate method for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:EDGES:SLEWRATEMethod?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:EDGES:SLEWRATEMethod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:SLEWRATEMethod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:SLEWRATEMethod {NOMinal|DDR} + - MEASUrement:MEAS:EDGES:SLEWRATEMethod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NOMinal`` specifies the nominal slew rate method. + - ``DDR`` specifies the DDR slew rate method. + """ + return self._slewratemethod + + @property + def tolevel(self) -> MeasurementMeasItemEdgesTolevel: + """Return the ``MEASUrement:MEAS:EDGES:TOLevel`` command. + + Description: + - This command sets or queries the 'to level' edge for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES:TOLevel?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:EDGES:TOLevel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:TOLevel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:TOLevel {HIGH|MID|LOW} + - MEASUrement:MEAS:EDGES:TOLevel? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``HIGH`` specifies the HIGH level. + - ``MID`` specifies the MID level. + - ``LOW`` specifies the LOW level. + """ + return self._tolevel + + @property + def upperfrequency(self) -> MeasurementMeasItemEdgesUpperfrequency: + """Return the ``MEASUrement:MEAS:EDGES:UPPERFREQuency`` command. + + Description: + - This command sets or queries the upper frequency for the measurement when the + measurement type is phase noise. Higher frequencies are ignored. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:EDGES:UPPERFREQuency?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:EDGES:UPPERFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGES:UPPERFREQuency value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGES:UPPERFREQuency + - MEASUrement:MEAS:EDGES:UPPERFREQuency? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the upper frequency of the edge. + """ + return self._upperfrequency + + +class MeasurementMeasItemEdgequalifier(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGEQUALifier`` command. + + Description: + - This command sets or queries the edge qualifier source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGEQUALifier?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGEQUALifier?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGEQUALifier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGEQUALifier {CH|MATH|REF} + - MEASUrement:MEAS:EDGEQUALifier? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ``CH`` is the edge qualifier source channel. x has a minimum of 1 and a maximum of 8. + - ``MATH`` is the edge qualifier source math waveform; is ≥1. + - ``REF`` is the edge qualifier source reference waveform; is ≥1. + """ + + +class MeasurementMeasItemEdgequaltwo(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGEQUALTWO`` command. + + Description: + - This command sets or queries the measurement 1 output edge qualifier two source for + Efficiency measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGEQUALTWO?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGEQUALTWO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EDGEQUALTWO value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGEQUALTWO + - MEASUrement:MEAS:EDGEQUALTWO? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` specifies the edge qualifier source at output configuration. + """ + + +class MeasurementMeasItemEdgequalone(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGEQUALONE`` command. + + Description: + - This command set or queries the measurement 1 input edge qualifier one source for + Efficiency measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGEQUALONE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGEQUALONE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EDGEQUALONE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGEQUALONE + - MEASUrement:MEAS:EDGEQUALONE? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` specifies the edge qualifier source at input configuration. + """ + + +class MeasurementMeasItemEdgeincre(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:EDGEIncre`` command. + + Description: + - This command sets or queries the edge increment value for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGEIncre?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGEIncre?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EDGEIncre value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGEIncre + - MEASUrement:MEAS:EDGEIncre? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the measurements edge increment value. + """ + + +class MeasurementMeasItemEdgeItem(ValidatedDynamicNumberCmd, SCPICmdWrite): + """The ``MEASUrement:MEAS:EDGE`` command. + + Description: + - This command sets or queries the type of the specified edge, rise or fall, for the + measurement. The measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EDGE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGE {RISE|FALL|BOTH} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``RISE`` specifies the rising edge. + - ``FALL`` specifies the falling edge. + - ``BOTH`` specifies either the rising or falling edge. + """ + + +class MeasurementMeasItemDisplaystatEnable(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:DISPlaystat:ENABle`` command. + + Description: + - This command turns on and off display of statistics in measurement badges in the user + interface. This command affects only the display of statistics, basic-statistics are + computed regardless of the state of this command. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:DISPlaystat:ENABle?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:DISPlaystat:ENABle?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:DISPlaystat:ENABle value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:DISPlaystat:ENABle {ON|OFF|} + - MEASUrement:MEAS:DISPlaystat:ENABle? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` turns off the display of statistics in measurement badges. + - ``ON`` turns on the display of statistics in measurement badges. + - ```` = 0 turns off the display of statistics in the measurement badge, any other + value turns on the display of statistics. + """ + + +class MeasurementMeasItemDisplaystat(SCPICmdRead): + """The ``MEASUrement:MEAS:DISPlaystat`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:DISPlaystat?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:DISPlaystat?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.enable``: The ``MEASUrement:MEAS:DISPlaystat:ENABle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._enable = MeasurementMeasItemDisplaystatEnable(device, f"{self._cmd_syntax}:ENABle") + + @property + def enable(self) -> MeasurementMeasItemDisplaystatEnable: + """Return the ``MEASUrement:MEAS:DISPlaystat:ENABle`` command. + + Description: + - This command turns on and off display of statistics in measurement badges in the user + interface. This command affects only the display of statistics, basic-statistics are + computed regardless of the state of this command. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:DISPlaystat:ENABle?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:DISPlaystat:ENABle?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:DISPlaystat:ENABle value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:DISPlaystat:ENABle {ON|OFF|} + - MEASUrement:MEAS:DISPlaystat:ENABle? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` turns off the display of statistics in measurement badges. + - ``ON`` turns on the display of statistics in measurement badges. + - ```` = 0 turns off the display of statistics in the measurement badge, any other + value turns on the display of statistics. + """ + return self._enable + + +class MeasurementMeasItemDelayEdgeItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:DELay:EDGE`` command. + + Description: + - This command sets or queries the 'to edge' type when EDGE is EDGE1 and the 'from edge' + type when EDGE is EDG2, for the measurement when the measurement type is DELAY. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:DELay:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:DELay:EDGE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:DELay:EDGE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:DELay:EDGE {FALL|RISe|BOTH|SAMEas|OPPositeas} + - MEASUrement:MEAS:DELay:EDGE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FALL`` specifies the falling edge of the waveform. + - ``RISE`` specifies the rising edge of the waveform. + - ``BOTH`` specifies both a rising and falling edge of the waveform. + - ``SAMEas`` specifies that both edges of the waveform are the same. + - ``OPPositeas`` specifies that the edges of the waveform are not the same. + """ + + +class MeasurementMeasItemDelay(SCPICmdRead): + """The ``MEASUrement:MEAS:DELay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:DELay?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:DELay?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.edge``: The ``MEASUrement:MEAS:DELay:EDGE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edge: Dict[int, MeasurementMeasItemDelayEdgeItem] = DefaultDictPassKeyToFactory( + lambda x: MeasurementMeasItemDelayEdgeItem(device, f"{self._cmd_syntax}:EDGE{x}") + ) + + @property + def edge(self) -> Dict[int, MeasurementMeasItemDelayEdgeItem]: + """Return the ``MEASUrement:MEAS:DELay:EDGE`` command. + + Description: + - This command sets or queries the 'to edge' type when EDGE is EDGE1 and the 'from + edge' type when EDGE is EDG2, for the measurement when the measurement type is + DELAY. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:DELay:EDGE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:DELay:EDGE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:DELay:EDGE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:DELay:EDGE {FALL|RISe|BOTH|SAMEas|OPPositeas} + - MEASUrement:MEAS:DELay:EDGE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FALL`` specifies the falling edge of the waveform. + - ``RISE`` specifies the rising edge of the waveform. + - ``BOTH`` specifies both a rising and falling edge of the waveform. + - ``SAMEas`` specifies that both edges of the waveform are the same. + - ``OPPositeas`` specifies that the edges of the waveform are not the same. + """ + return self._edge + + +class MeasurementMeasItemCyclemode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CYCLemode`` command. + + Description: + - This command sets or queries the cycle mode for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CYCLemode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:CYCLemode?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:CYCLemode value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CYCLemode {RECORD|CYCLE} + - MEASUrement:MEAS:CYCLemode? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``RECORD`` specifies that the measurement is taken over the whole record. + - ``CYCLE`` specifies that measurements are taken on each cycle of the source. + """ + + +class MeasurementMeasItemCustomlimitsfile(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CUSTOMLIMITSFile`` command. + + Description: + - This command sets or queries the custom limits file path for custom harmonics standard. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CUSTOMLIMITSFile?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CUSTOMLIMITSFile?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CUSTOMLIMITSFile value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CUSTOMLIMITSFile + - MEASUrement:MEAS:CUSTOMLIMITSFile? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the location of limits file. + """ + + +class MeasurementMeasItemCover(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:COVer`` command. + + Description: + - This command sets or queries the Calculate Over for the Power Quality measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:COVer?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:COVer?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:COVer value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:COVer {FFREQuency|AFREQuencies} + - MEASUrement:MEAS:COVer? + ``` + + Info: + - ``FFREQuency`` sets Calculate Power Quality measurement. + - ``AFREQuencies`` sets Calculate Power Quality measurement for all frequencies. + """ + + +class MeasurementMeasItemCommonmodeSources(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:COMMONMode:SOURCEs`` command. + + Description: + - This command sets or queries the number of sources for the measurement when the + measurement type is AC common mode. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:COMMONMode:SOURCEs?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:SOURCEs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:SOURCEs value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:COMMONMode:SOURCEs {SINGLE|DOUBLE} + - MEASUrement:MEAS:COMMONMode:SOURCEs? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``SINGLE`` specifies a single source. + - ``DOUBLE`` specifies double sources. + """ + + +class MeasurementMeasItemCommonmodeFiltersState(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:COMMONMode:FILTers:STATE`` command. + + Description: + - This command sets or queries whether a filter is used for the measurement when the + measurement type is AC common mode. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:COMMONMode:FILTers:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:FILTers:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:FILTers:STATE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:COMMONMode:FILTers:STATE {OFF|ON|0|1} + - MEASUrement:MEAS:COMMONMode:FILTers:STATE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` turns the filter off. + - ``ON`` turns the filter on. + - ``0`` turns the filter off. + - ``1`` turns the filter on. + """ + + +class MeasurementMeasItemCommonmodeFilters(SCPICmdRead): + """The ``MEASUrement:MEAS:COMMONMode:FILTers`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:COMMONMode:FILTers?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:FILTers?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.state``: The ``MEASUrement:MEAS:COMMONMode:FILTers:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = MeasurementMeasItemCommonmodeFiltersState(device, f"{self._cmd_syntax}:STATE") + + @property + def state(self) -> MeasurementMeasItemCommonmodeFiltersState: + """Return the ``MEASUrement:MEAS:COMMONMode:FILTers:STATE`` command. + + Description: + - This command sets or queries whether a filter is used for the measurement when the + measurement type is AC common mode. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:COMMONMode:FILTers:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:FILTers:STATE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:FILTers:STATE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:COMMONMode:FILTers:STATE {OFF|ON|0|1} + - MEASUrement:MEAS:COMMONMode:FILTers:STATE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` turns the filter off. + - ``ON`` turns the filter on. + - ``0`` turns the filter off. + - ``1`` turns the filter on. + """ + return self._state + + +class MeasurementMeasItemCommonmode(SCPICmdRead): + """The ``MEASUrement:MEAS:COMMONMode`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:COMMONMode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:COMMONMode?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.filters``: The ``MEASUrement:MEAS:COMMONMode:FILTers`` command tree. + - ``.sources``: The ``MEASUrement:MEAS:COMMONMode:SOURCEs`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._filters = MeasurementMeasItemCommonmodeFilters(device, f"{self._cmd_syntax}:FILTers") + self._sources = MeasurementMeasItemCommonmodeSources(device, f"{self._cmd_syntax}:SOURCEs") + + @property + def filters(self) -> MeasurementMeasItemCommonmodeFilters: + """Return the ``MEASUrement:MEAS:COMMONMode:FILTers`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:COMMONMode:FILTers?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:FILTers?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.state``: The ``MEASUrement:MEAS:COMMONMode:FILTers:STATE`` command. + """ + return self._filters + + @property + def sources(self) -> MeasurementMeasItemCommonmodeSources: + """Return the ``MEASUrement:MEAS:COMMONMode:SOURCEs`` command. + + Description: + - This command sets or queries the number of sources for the measurement when the + measurement type is AC common mode. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:COMMONMode:SOURCEs?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:SOURCEs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:COMMONMode:SOURCEs value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:COMMONMode:SOURCEs {SINGLE|DOUBLE} + - MEASUrement:MEAS:COMMONMode:SOURCEs? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``SINGLE`` specifies a single source. + - ``DOUBLE`` specifies double sources. + """ + return self._sources + + +class MeasurementMeasItemClockrecoveryStandard(SCPICmdWrite): + """The ``MEASUrement:MEAS:CLOCKRecovery:STAndard`` command. + + Description: + - This command sets or queries the communications standard when PLL clock recovery is used + for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:STAndard value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:STAndard {CUSTom|ENET100|FW1394BS400B|FW1394BS800B|FW1394BS1600B|FBD1|FBD2|FBD3|FC133|FC266|FC531|FC1063|FC2125|FC4250|FC8500|ENET1000|IBA2500|IBA_GEN2|OC1|OC3|OC12|OC48|PCIE_GEN1|PCIE_GEN2|PCIE_GEN3|RIO125|RIO250|RIO3125|SAS15_NOSSC|SAS3_NOSSC|SAS6_NOSSC|SAS12_NOSSC|SAS15_SSC|SAS3_SSC|SAS6_SSC|SAS12_SSC|SATA_GEN1|SATA_GEN2|SATA_GEN3|USB3|XAUI|XAUI_GEN2} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ # noqa: E501 + + +class MeasurementMeasItemClockrecoveryNominaloffsetSelectiontype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype`` command. + + Description: + - This command sets or queries the offset type used when explicit clock recovery is used for + the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype {AUTO|MANUAL} + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` automatically calculates the offset. + - ``MANUAL`` allows the user to set the offset. + """ + + +class MeasurementMeasItemClockrecoveryNominaloffset(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset`` command. + + Description: + - This command sets or queries the offset value used when explicit clock recovery is used + for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock offset. + + Properties: + - ``.selectiontype``: The ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._selectiontype = MeasurementMeasItemClockrecoveryNominaloffsetSelectiontype( + device, f"{self._cmd_syntax}:SELECTIONtype" + ) + + @property + def selectiontype(self) -> MeasurementMeasItemClockrecoveryNominaloffsetSelectiontype: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype`` command. + + Description: + - This command sets or queries the offset type used when explicit clock recovery is used + for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype {AUTO|MANUAL} + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` automatically calculates the offset. + - ``MANUAL`` allows the user to set the offset. + """ + return self._selectiontype + + +class MeasurementMeasItemClockrecoveryModel(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:MODel`` command. + + Description: + - This command sets or queries the PLL clock recovery model used when PLL clock recovery is + used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CLOCKRecovery:MODel?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MODel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MODel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:MODel {TYPE} + - MEASUrement:MEAS:CLOCKRecovery:MODel? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ + + +class MeasurementMeasItemClockrecoveryMethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:METHod`` command. + + Description: + - This command sets or queries the clock recovery method for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CLOCKRecovery:METHod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:METHod {PLL|CONSTANTCLOCK|EXPLICITCLOCK} + - MEASUrement:MEAS:CLOCKRecovery:METHod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``PLL`` specifies a phase locked loop clock recovery method. + - ``CONSTANTCLOCK`` specifies using a constant clock. + - ``EXPLICITCLOCK`` specifies using an explicit clock. + """ + + +class MeasurementMeasItemClockrecoveryMeanautocalculate(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate`` command. + + Description: + - This command sets or queries how often the clock is calculated when constant clock + recovery is used for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate {FIRST|EVERY} + - MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FIRST`` calculates the clock on the first acquisition. + - ``EVERY`` calculates the clock on every acquisition. + """ + + +class MeasurementMeasItemClockrecoveryLoopbandwidth(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth`` command. + + Description: + - This command sets or queries the loop bandwidth used when PLL clock recovery is used for + the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth + - MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock recovery loop bandwidth. + """ + + +class MeasurementMeasItemClockrecoveryJtfbandwidth(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth`` command. + + Description: + - This command sets or queries the JTF bandwidth used when PLL clock recovery is used for + the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth + - MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock recovery JTF bandwidth. + """ + + +class MeasurementMeasItemClockrecoveryGlobal(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:GLOBal`` command. + + Description: + - This command sets or queries the clock recovery settings global flag for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CLOCKRecovery:GLOBal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:GLOBal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:CLOCKRecovery:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` clock recovery settings are changed independently for each individual measurement. + - ``ON`` applies global clock recovery settings to all the measurements' clock recovery + settings. + - ``0`` clock recovery settings are changed independently for each individual measurement. + - ``1`` applies global clock recovery settings to all the measurements' clock recovery + settings. + """ + + +class MeasurementMeasItemClockrecoveryExplicitclockmode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe`` command. + + Description: + - This command sets or queries the explicit clock mode used when explicit clock recovery is + used for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe {EDGE|PLL} + - MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``EDGE`` specifies the clock edge. + - ``PLL`` specifies the phase locked loop. + """ + + +class MeasurementMeasItemClockrecoveryDatarate(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:DATARate`` command. + + Description: + - This command sets or queries the nominal data bit rate when nominal data rate clock + recovery is used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATARate?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATARate?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATARate value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:DATARate + - MEASUrement:MEAS:CLOCKRecovery:DATARate? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the value for the Nominal data rate. + """ + + +class MeasurementMeasItemClockrecoveryDatapath(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:DATAPath`` command. + + Description: + - This command sets or queries the file containing the data pattern used when known data + pattern clock recovery is used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATAPath?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATAPath?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATAPath value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:DATAPath + - MEASUrement:MEAS:CLOCKRecovery:DATAPath? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the file containing the data pattern to be used for known data pattern + clock recovery. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MeasurementMeasItemClockrecoveryDamping(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:DAMPing`` command. + + Description: + - This command sets or queries the damping value used when PLL clock recovery is used for + the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CLOCKRecovery:DAMPing?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DAMPing?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DAMPing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:DAMPing + - MEASUrement:MEAS:CLOCKRecovery:DAMPing? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock recovery damping value. + """ + + +class MeasurementMeasItemClockrecoveryConstclockmode(SCPICmdWrite): + """The ``MEASUrement:MEAS:CLOCKRecovery:CONSTCLOCKMODe`` command. + + Description: + - This command sets or queries the constant clock mode used when constant clock recovery is + used for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CONSTCLOCKMODe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:CONSTCLOCKMODe {MEAN|MEDian|FIXed} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``MEAN`` specifies that clock recovery uses the mean of the clock signal as the clock + frequency. + - ``MEDian`` specifies that clock recovery uses the mode of the clock signal as the clock + frequency. + - ``FIXed`` specifies that clock recovery uses the value set by the user as the clock + frequency. + """ + + +class MeasurementMeasItemClockrecoveryClockmultiplier(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier`` command. + + Description: + - This command sets or queries the clock multiplier used when explicit clock recovery is + used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier + - MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock multiplier. + """ + + +class MeasurementMeasItemClockrecoveryClockfrequency(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency`` command. + + Description: + - This command sets or queries the clock frequency used when fixed constant clock recovery + is used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency + - MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock frequency. + """ + + +class MeasurementMeasItemClockrecoveryAdvancedMethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod`` command. + + Description: + - This command sets or queries the advanced clock recovery method when advanced clock + recovery is used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod {NONE|NOMinal|PATTern} + - MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NOMinal`` sets the advanced CRD method to Nominal Data Rate. + - ``PATTern`` sets the advanced CDR method to use a Known Data Pattern. + - ``NONE`` sets no advanced CRD method. + """ + + +class MeasurementMeasItemClockrecoveryAdvanced(SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery:ADVanced`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.method``: The ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._method = MeasurementMeasItemClockrecoveryAdvancedMethod( + device, f"{self._cmd_syntax}:METHod" + ) + + @property + def method(self) -> MeasurementMeasItemClockrecoveryAdvancedMethod: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod`` command. + + Description: + - This command sets or queries the advanced clock recovery method when advanced clock + recovery is used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod {NONE|NOMinal|PATTern} + - MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NOMinal`` sets the advanced CRD method to Nominal Data Rate. + - ``PATTern`` sets the advanced CDR method to use a Known Data Pattern. + - ``NONE`` sets no advanced CRD method. + """ + return self._method + + +# pylint: disable=too-many-instance-attributes +class MeasurementMeasItemClockrecovery(SCPICmdRead): + """The ``MEASUrement:MEAS:CLOCKRecovery`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CLOCKRecovery?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:CLOCKRecovery?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.advanced``: The ``MEASUrement:MEAS:CLOCKRecovery:ADVanced`` command tree. + - ``.clockfrequency``: The ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency`` command. + - ``.clockmultiplier``: The ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier`` command. + - ``.constclockmode``: The ``MEASUrement:MEAS:CLOCKRecovery:CONSTCLOCKMODe`` command. + - ``.damping``: The ``MEASUrement:MEAS:CLOCKRecovery:DAMPing`` command. + - ``.datapath``: The ``MEASUrement:MEAS:CLOCKRecovery:DATAPath`` command. + - ``.datarate``: The ``MEASUrement:MEAS:CLOCKRecovery:DATARate`` command. + - ``.explicitclockmode``: The ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe`` + command. + - ``.global``: The ``MEASUrement:MEAS:CLOCKRecovery:GLOBal`` command. + - ``.jtfbandwidth``: The ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth`` command. + - ``.loopbandwidth``: The ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth`` command. + - ``.meanautocalculate``: The ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate`` + command. + - ``.method``: The ``MEASUrement:MEAS:CLOCKRecovery:METHod`` command. + - ``.model``: The ``MEASUrement:MEAS:CLOCKRecovery:MODel`` command. + - ``.nominaloffset``: The ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset`` command. + - ``.standard``: The ``MEASUrement:MEAS:CLOCKRecovery:STAndard`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._advanced = MeasurementMeasItemClockrecoveryAdvanced( + device, f"{self._cmd_syntax}:ADVanced" + ) + self._clockfrequency = MeasurementMeasItemClockrecoveryClockfrequency( + device, f"{self._cmd_syntax}:CLOCKFrequency" + ) + self._clockmultiplier = MeasurementMeasItemClockrecoveryClockmultiplier( + device, f"{self._cmd_syntax}:CLOCKMultiplier" + ) + self._constclockmode = MeasurementMeasItemClockrecoveryConstclockmode( + device, f"{self._cmd_syntax}:CONSTCLOCKMODe" + ) + self._damping = MeasurementMeasItemClockrecoveryDamping( + device, f"{self._cmd_syntax}:DAMPing" + ) + self._datapath = MeasurementMeasItemClockrecoveryDatapath( + device, f"{self._cmd_syntax}:DATAPath" + ) + self._datarate = MeasurementMeasItemClockrecoveryDatarate( + device, f"{self._cmd_syntax}:DATARate" + ) + self._explicitclockmode = MeasurementMeasItemClockrecoveryExplicitclockmode( + device, f"{self._cmd_syntax}:EXPLICITCLOCKMODe" + ) + self._global = MeasurementMeasItemClockrecoveryGlobal(device, f"{self._cmd_syntax}:GLOBal") + self._jtfbandwidth = MeasurementMeasItemClockrecoveryJtfbandwidth( + device, f"{self._cmd_syntax}:JTFBandwidth" + ) + self._loopbandwidth = MeasurementMeasItemClockrecoveryLoopbandwidth( + device, f"{self._cmd_syntax}:LOOPBandwidth" + ) + self._meanautocalculate = MeasurementMeasItemClockrecoveryMeanautocalculate( + device, f"{self._cmd_syntax}:MEANAUTOCalculate" + ) + self._method = MeasurementMeasItemClockrecoveryMethod(device, f"{self._cmd_syntax}:METHod") + self._model = MeasurementMeasItemClockrecoveryModel(device, f"{self._cmd_syntax}:MODel") + self._nominaloffset = MeasurementMeasItemClockrecoveryNominaloffset( + device, f"{self._cmd_syntax}:NOMINALOFFset" + ) + self._standard = MeasurementMeasItemClockrecoveryStandard( + device, f"{self._cmd_syntax}:STAndard" + ) + + @property + def advanced(self) -> MeasurementMeasItemClockrecoveryAdvanced: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:ADVanced`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:ADVanced?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.method``: The ``MEASUrement:MEAS:CLOCKRecovery:ADVanced:METHod`` command. + """ + return self._advanced + + @property + def clockfrequency(self) -> MeasurementMeasItemClockrecoveryClockfrequency: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency`` command. + + Description: + - This command sets or queries the clock frequency used when fixed constant clock + recovery is used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency + - MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock frequency. + """ + return self._clockfrequency + + @property + def clockmultiplier(self) -> MeasurementMeasItemClockrecoveryClockmultiplier: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier`` command. + + Description: + - This command sets or queries the clock multiplier used when explicit clock recovery is + used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier + - MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock multiplier. + """ + return self._clockmultiplier + + @property + def constclockmode(self) -> MeasurementMeasItemClockrecoveryConstclockmode: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:CONSTCLOCKMODe`` command. + + Description: + - This command sets or queries the constant clock mode used when constant clock recovery + is used for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:CONSTCLOCKMODe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:CONSTCLOCKMODe {MEAN|MEDian|FIXed} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``MEAN`` specifies that clock recovery uses the mean of the clock signal as the clock + frequency. + - ``MEDian`` specifies that clock recovery uses the mode of the clock signal as the + clock frequency. + - ``FIXed`` specifies that clock recovery uses the value set by the user as the clock + frequency. + """ + return self._constclockmode + + @property + def damping(self) -> MeasurementMeasItemClockrecoveryDamping: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:DAMPing`` command. + + Description: + - This command sets or queries the damping value used when PLL clock recovery is used + for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DAMPing?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DAMPing?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DAMPing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:DAMPing + - MEASUrement:MEAS:CLOCKRecovery:DAMPing? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock recovery damping value. + """ + return self._damping + + @property + def datapath(self) -> MeasurementMeasItemClockrecoveryDatapath: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:DATAPath`` command. + + Description: + - This command sets or queries the file containing the data pattern used when known data + pattern clock recovery is used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATAPath?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATAPath?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATAPath value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:DATAPath + - MEASUrement:MEAS:CLOCKRecovery:DATAPath? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the file containing the data pattern to be used for known data + pattern clock recovery. + """ + return self._datapath + + @property + def datarate(self) -> MeasurementMeasItemClockrecoveryDatarate: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:DATARate`` command. + + Description: + - This command sets or queries the nominal data bit rate when nominal data rate clock + recovery is used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATARate?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATARate?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:DATARate value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:DATARate + - MEASUrement:MEAS:CLOCKRecovery:DATARate? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the value for the Nominal data rate. + """ + return self._datarate + + @property + def explicitclockmode(self) -> MeasurementMeasItemClockrecoveryExplicitclockmode: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe`` command. + + Description: + - This command sets or queries the explicit clock mode used when explicit clock recovery + is used for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe {EDGE|PLL} + - MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``EDGE`` specifies the clock edge. + - ``PLL`` specifies the phase locked loop. + """ + return self._explicitclockmode + + @property + def global_(self) -> MeasurementMeasItemClockrecoveryGlobal: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:GLOBal`` command. + + Description: + - This command sets or queries the clock recovery settings global flag for the + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:GLOBal?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:GLOBal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:GLOBal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:GLOBal {OFF|ON|0|1} + - MEASUrement:MEAS:CLOCKRecovery:GLOBal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` clock recovery settings are changed independently for each individual + measurement. + - ``ON`` applies global clock recovery settings to all the measurements' clock recovery + settings. + - ``0`` clock recovery settings are changed independently for each individual + measurement. + - ``1`` applies global clock recovery settings to all the measurements' clock recovery + settings. + """ + return self._global + + @property + def jtfbandwidth(self) -> MeasurementMeasItemClockrecoveryJtfbandwidth: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth`` command. + + Description: + - This command sets or queries the JTF bandwidth used when PLL clock recovery is used + for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth + - MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock recovery JTF bandwidth. + """ + return self._jtfbandwidth + + @property + def loopbandwidth(self) -> MeasurementMeasItemClockrecoveryLoopbandwidth: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth`` command. + + Description: + - This command sets or queries the loop bandwidth used when PLL clock recovery is used + for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth + - MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock recovery loop bandwidth. + """ + return self._loopbandwidth + + @property + def meanautocalculate(self) -> MeasurementMeasItemClockrecoveryMeanautocalculate: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate`` command. + + Description: + - This command sets or queries how often the clock is calculated when constant clock + recovery is used for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate {FIRST|EVERY} + - MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FIRST`` calculates the clock on the first acquisition. + - ``EVERY`` calculates the clock on every acquisition. + """ + return self._meanautocalculate + + @property + def method(self) -> MeasurementMeasItemClockrecoveryMethod: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:METHod`` command. + + Description: + - This command sets or queries the clock recovery method for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:METHod?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:METHod {PLL|CONSTANTCLOCK|EXPLICITCLOCK} + - MEASUrement:MEAS:CLOCKRecovery:METHod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``PLL`` specifies a phase locked loop clock recovery method. + - ``CONSTANTCLOCK`` specifies using a constant clock. + - ``EXPLICITCLOCK`` specifies using an explicit clock. + """ + return self._method + + @property + def model(self) -> MeasurementMeasItemClockrecoveryModel: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:MODel`` command. + + Description: + - This command sets or queries the PLL clock recovery model used when PLL clock recovery + is used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MODel?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MODel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:MODel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:MODel {TYPE} + - MEASUrement:MEAS:CLOCKRecovery:MODel? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ + return self._model + + @property + def nominaloffset(self) -> MeasurementMeasItemClockrecoveryNominaloffset: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset`` command. + + Description: + - This command sets or queries the offset value used when explicit clock recovery is + used for the measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset + - MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the clock offset. + + Sub-properties: + - ``.selectiontype``: The + ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset:SELECTIONtype`` command. + """ + return self._nominaloffset + + @property + def standard(self) -> MeasurementMeasItemClockrecoveryStandard: + """Return the ``MEASUrement:MEAS:CLOCKRecovery:STAndard`` command. + + Description: + - This command sets or queries the communications standard when PLL clock recovery is + used for the measurement. The measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery:STAndard value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CLOCKRecovery:STAndard {CUSTom|ENET100|FW1394BS400B|FW1394BS800B|FW1394BS1600B|FBD1|FBD2|FBD3|FC133|FC266|FC531|FC1063|FC2125|FC4250|FC8500|ENET1000|IBA2500|IBA_GEN2|OC1|OC3|OC12|OC48|PCIE_GEN1|PCIE_GEN2|PCIE_GEN3|RIO125|RIO250|RIO3125|SAS15_NOSSC|SAS3_NOSSC|SAS6_NOSSC|SAS12_NOSSC|SAS15_SSC|SAS3_SSC|SAS6_SSC|SAS12_SSC|SATA_GEN1|SATA_GEN2|SATA_GEN3|USB3|XAUI|XAUI_GEN2} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ # noqa: E501 + return self._standard + + +class MeasurementMeasItemCcresultsCurrentacqStddev(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev`` command. + + Description: + - This query-only command returns the standard deviation cycle-cycle for the specified + measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev? + ``` + """ + + +class MeasurementMeasItemCcresultsCurrentacqPopulation(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation`` command. + + Description: + - This query-only command returns the population of the cycle-cycle statistics for the + specified measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation? + ``` + """ + + +class MeasurementMeasItemCcresultsCurrentacqPk2pk(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK`` command. + + Description: + - This query-only command returns the peak to peak cycle-cycle statistic for the specified + measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK? + ``` + """ + + +class MeasurementMeasItemCcresultsCurrentacqMinimum(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum`` command. + + Description: + - This query-only command returns the minimum cycle-cycle value for the specified + measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum? + ``` + """ + + +class MeasurementMeasItemCcresultsCurrentacqMean(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN`` command. + + Description: + - This query-only command returns the mean cycle-cycle value for the specified measurement + for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN? + ``` + """ + + +class MeasurementMeasItemCcresultsCurrentacqMaximum(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum`` command. + + Description: + - This query-only command returns the maximum cycle-cycle value for the specified + measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum? + ``` + """ + + +class MeasurementMeasItemCcresultsCurrentacq(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:CURRentacq`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CCRESUlts:CURRentacq?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.maximum``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = MeasurementMeasItemCcresultsCurrentacqMaximum( + device, f"{self._cmd_syntax}:MAXimum" + ) + self._mean = MeasurementMeasItemCcresultsCurrentacqMean(device, f"{self._cmd_syntax}:MEAN") + self._minimum = MeasurementMeasItemCcresultsCurrentacqMinimum( + device, f"{self._cmd_syntax}:MINimum" + ) + self._pk2pk = MeasurementMeasItemCcresultsCurrentacqPk2pk( + device, f"{self._cmd_syntax}:PK2PK" + ) + self._population = MeasurementMeasItemCcresultsCurrentacqPopulation( + device, f"{self._cmd_syntax}:POPUlation" + ) + self._stddev = MeasurementMeasItemCcresultsCurrentacqStddev( + device, f"{self._cmd_syntax}:STDDev" + ) + + @property + def maximum(self) -> MeasurementMeasItemCcresultsCurrentacqMaximum: + """Return the ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum`` command. + + Description: + - This query-only command returns the maximum cycle-cycle value for the specified + measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum? + ``` + """ + return self._maximum + + @property + def mean(self) -> MeasurementMeasItemCcresultsCurrentacqMean: + """Return the ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN`` command. + + Description: + - This query-only command returns the mean cycle-cycle value for the specified + measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN? + ``` + """ + return self._mean + + @property + def minimum(self) -> MeasurementMeasItemCcresultsCurrentacqMinimum: + """Return the ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum`` command. + + Description: + - This query-only command returns the minimum cycle-cycle value for the specified + measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum? + ``` + """ + return self._minimum + + @property + def pk2pk(self) -> MeasurementMeasItemCcresultsCurrentacqPk2pk: + """Return the ``MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK`` command. + + Description: + - This query-only command returns the peak to peak cycle-cycle statistic for the + specified measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK? + ``` + """ + return self._pk2pk + + @property + def population(self) -> MeasurementMeasItemCcresultsCurrentacqPopulation: + """Return the ``MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation`` command. + + Description: + - This query-only command returns the population of the cycle-cycle statistics for the + specified measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation? + ``` + """ + return self._population + + @property + def stddev(self) -> MeasurementMeasItemCcresultsCurrentacqStddev: + """Return the ``MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev`` command. + + Description: + - This query-only command returns the standard deviation cycle-cycle for the specified + measurement for the current acquisition. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev? + ``` + """ + return self._stddev + + +class MeasurementMeasItemCcresultsAllacqsStddev(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev`` command. + + Description: + - This query-only command returns the standard deviation cycle-cycle for the specified + measurement for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev? + ``` + """ + + +class MeasurementMeasItemCcresultsAllacqsPopulation(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation`` command. + + Description: + - This query-only command returns the population of all cycle-cycle statistics for the + specified measurement for all acquisitions accumulated since statistics were last reset. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation? + ``` + """ + + +class MeasurementMeasItemCcresultsAllacqsPk2pk(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK`` command. + + Description: + - This query-only command returns the peak to peak cycle-cycle statistic for the specified + measurement for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK? + ``` + """ + + +class MeasurementMeasItemCcresultsAllacqsMinimum(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum`` command. + + Description: + - This query-only command returns the minimum cycle-cycle value for the specified + measurement for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum? + ``` + """ + + +class MeasurementMeasItemCcresultsAllacqsMean(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN`` command. + + Description: + - This query-only command returns the mean cycle-cycle value for the specified measurement + for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN? + ``` + """ + + +class MeasurementMeasItemCcresultsAllacqsMaximum(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum`` command. + + Description: + - This query-only command returns the maximum cycle-cycle value for the specified + measurement for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum? + ``` + """ + + +class MeasurementMeasItemCcresultsAllacqs(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CCRESUlts:ALLAcqs?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.maximum``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = MeasurementMeasItemCcresultsAllacqsMaximum( + device, f"{self._cmd_syntax}:MAXimum" + ) + self._mean = MeasurementMeasItemCcresultsAllacqsMean(device, f"{self._cmd_syntax}:MEAN") + self._minimum = MeasurementMeasItemCcresultsAllacqsMinimum( + device, f"{self._cmd_syntax}:MINimum" + ) + self._pk2pk = MeasurementMeasItemCcresultsAllacqsPk2pk(device, f"{self._cmd_syntax}:PK2PK") + self._population = MeasurementMeasItemCcresultsAllacqsPopulation( + device, f"{self._cmd_syntax}:POPUlation" + ) + self._stddev = MeasurementMeasItemCcresultsAllacqsStddev( + device, f"{self._cmd_syntax}:STDDev" + ) + + @property + def maximum(self) -> MeasurementMeasItemCcresultsAllacqsMaximum: + """Return the ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum`` command. + + Description: + - This query-only command returns the maximum cycle-cycle value for the specified + measurement for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum? + ``` + """ + return self._maximum + + @property + def mean(self) -> MeasurementMeasItemCcresultsAllacqsMean: + """Return the ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN`` command. + + Description: + - This query-only command returns the mean cycle-cycle value for the specified + measurement for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN? + ``` + """ + return self._mean + + @property + def minimum(self) -> MeasurementMeasItemCcresultsAllacqsMinimum: + """Return the ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum`` command. + + Description: + - This query-only command returns the minimum cycle-cycle value for the specified + measurement for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum? + ``` + """ + return self._minimum + + @property + def pk2pk(self) -> MeasurementMeasItemCcresultsAllacqsPk2pk: + """Return the ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK`` command. + + Description: + - This query-only command returns the peak to peak cycle-cycle statistic for the + specified measurement for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK? + ``` + """ + return self._pk2pk + + @property + def population(self) -> MeasurementMeasItemCcresultsAllacqsPopulation: + """Return the ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation`` command. + + Description: + - This query-only command returns the population of all cycle-cycle statistics for the + specified measurement for all acquisitions accumulated since statistics were last + reset. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation? + ``` + """ + return self._population + + @property + def stddev(self) -> MeasurementMeasItemCcresultsAllacqsStddev: + """Return the ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev`` command. + + Description: + - This query-only command returns the standard deviation cycle-cycle for the specified + measurement for all acquisitions. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev? + ``` + """ + return self._stddev + + +class MeasurementMeasItemCcresults(SCPICmdRead): + """The ``MEASUrement:MEAS:CCRESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CCRESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:CCRESUlts?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.allacqs``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs`` command tree. + - ``.currentacq``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._allacqs = MeasurementMeasItemCcresultsAllacqs(device, f"{self._cmd_syntax}:ALLAcqs") + self._currentacq = MeasurementMeasItemCcresultsCurrentacq( + device, f"{self._cmd_syntax}:CURRentacq" + ) + + @property + def allacqs(self) -> MeasurementMeasItemCcresultsAllacqs: + """Return the ``MEASUrement:MEAS:CCRESUlts:ALLAcqs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CCRESUlts:ALLAcqs?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:ALLAcqs?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.maximum``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs:STDDev`` command. + """ + return self._allacqs + + @property + def currentacq(self) -> MeasurementMeasItemCcresultsCurrentacq: + """Return the ``MEASUrement:MEAS:CCRESUlts:CURRentacq`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CCRESUlts:CURRentacq?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.maximum``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MAXimum`` command. + - ``.mean``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MEAN`` command. + - ``.minimum``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:MINimum`` command. + - ``.pk2pk``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:PK2PK`` command. + - ``.population``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:POPUlation`` command. + - ``.stddev``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq:STDDev`` command. + """ + return self._currentacq + + +class MeasurementMeasItemBurstedgtype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:BURSTEDGTYPe`` command. + + Description: + - This command sets or queries the burst edge type for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BURSTEDGTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BURSTEDGTYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:BURSTEDGTYPe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BURSTEDGTYPe {RISE|FALL} + - MEASUrement:MEAS:BURSTEDGTYPe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``RISE`` specifies a burst with a rising edge. + - ``FALL`` specifies a burst with a falling edge. + """ + + +class MeasurementMeasItemBittype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:BITType`` command. + + Description: + - This command sets or queries the bit type for the measurement. Measurements are specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITType?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITType?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BITType value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITType {ALLBits|TRANSition|NONTRANsition} + - MEASUrement:MEAS:BITType? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ALLBits`` specifies that the measurement returns results for all bits. + - ``TRANSition`` specifies that the measurement returns results for transitions bit only. + - ``NONTRANsition`` specifies that the measurement returns results for non-transition bits + only. + """ + + +class MeasurementMeasItemBitstart(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:BITSTart`` command. + + Description: + - This command sets or queries the bit start as a percentage of the unit interval. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITSTart?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITSTart?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BITSTart value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITSTart + - MEASUrement:MEAS:BITSTart? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the bit start. + """ + + +class MeasurementMeasItemBitpcnt(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:BITPcnt`` command. + + Description: + - This command sets or queries the bit center as a percentage of the unit interval. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITPcnt?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITPcnt?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BITPcnt value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITPcnt + - MEASUrement:MEAS:BITPcnt? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the bit center percentage value to be measured for the bit type selected. + """ + + +class MeasurementMeasItemBitend(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:BITEnd`` command. + + Description: + - This command sets or queries the bit end as a percentage of the unit interval. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITEnd?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITEnd?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BITEnd value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITEnd + - MEASUrement:MEAS:BITEnd? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the bit end. + """ + + +class MeasurementMeasItemBitcfgmode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:BITCfgmode`` command. + + Description: + - This command sets or queries whether the measurement returns the mean or mode statistic + result when the measurement type is bit amplitude/high/low. Measurements are specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITCfgmode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITCfgmode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BITCfgmode value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITCfgmode {MEAN|MODE} + - MEASUrement:MEAS:BITCfgmode? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``MEAN`` specifies that the measurement returns results for each bit. + - ``MODE`` specifies that the measurement returns the mode of its results. + """ + + +class MeasurementMeasItemBin(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:BIN`` command. + + Description: + - This command sets or queries the bin count for the measurement. Measurements are specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BIN?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BIN?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BIN value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BIN + - MEASUrement:MEAS:BIN? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the bin count. + """ + + +class MeasurementMeasItemBerTargetber(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:BER:TARGETBER`` command. + + Description: + - This command sets or queries the target BER value for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BER:TARGETBER?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BER:TARGETBER?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:BER:TARGETBER value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BER:TARGETBER + - MEASUrement:MEAS:BER:TARGETBER? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the target BER value. + """ + + +class MeasurementMeasItemBer(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MEAS:BER`` command. + + Description: + - This command sets or queries BER value for the measurement. Measurements are specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BER?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BER?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BER value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BER + - MEASUrement:MEAS:BER? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is BER value for the measurement. + + Properties: + - ``.targetber``: The ``MEASUrement:MEAS:BER:TARGETBER`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._targetber = MeasurementMeasItemBerTargetber(device, f"{self._cmd_syntax}:TARGETBER") + + @property + def targetber(self) -> MeasurementMeasItemBerTargetber: + """Return the ``MEASUrement:MEAS:BER:TARGETBER`` command. + + Description: + - This command sets or queries the target BER value for the measurement. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BER:TARGETBER?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:BER:TARGETBER?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:BER:TARGETBER value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BER:TARGETBER + - MEASUrement:MEAS:BER:TARGETBER? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the target BER value. + """ + return self._targetber + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class MeasurementMeasItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``MEASUrement:MEAS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Properties: + - ``.ber``: The ``MEASUrement:MEAS:BER`` command. + - ``.bin``: The ``MEASUrement:MEAS:BIN`` command. + - ``.bitcfgmode``: The ``MEASUrement:MEAS:BITCfgmode`` command. + - ``.bitend``: The ``MEASUrement:MEAS:BITEnd`` command. + - ``.bitpcnt``: The ``MEASUrement:MEAS:BITPcnt`` command. + - ``.bitstart``: The ``MEASUrement:MEAS:BITSTart`` command. + - ``.bittype``: The ``MEASUrement:MEAS:BITType`` command. + - ``.burstedgtype``: The ``MEASUrement:MEAS:BURSTEDGTYPe`` command. + - ``.ccresults``: The ``MEASUrement:MEAS:CCRESUlts`` command tree. + - ``.clockrecovery``: The ``MEASUrement:MEAS:CLOCKRecovery`` command tree. + - ``.commonmode``: The ``MEASUrement:MEAS:COMMONMode`` command tree. + - ``.cover``: The ``MEASUrement:MEAS:COVer`` command. + - ``.customlimitsfile``: The ``MEASUrement:MEAS:CUSTOMLIMITSFile`` command. + - ``.cyclemode``: The ``MEASUrement:MEAS:CYCLemode`` command. + - ``.delay``: The ``MEASUrement:MEAS:DELay`` command tree. + - ``.displaystat``: The ``MEASUrement:MEAS:DISPlaystat`` command tree. + - ``.edge``: The ``MEASUrement:MEAS:EDGE`` command. + - ``.edgeincre``: The ``MEASUrement:MEAS:EDGEIncre`` command. + - ``.edgequalone``: The ``MEASUrement:MEAS:EDGEQUALONE`` command. + - ``.edgequaltwo``: The ``MEASUrement:MEAS:EDGEQUALTWO`` command. + - ``.edgequalifier``: The ``MEASUrement:MEAS:EDGEQUALifier`` command. + - ``.edges``: The ``MEASUrement:MEAS:EDGES`` command tree. + - ``.eequal``: The ``MEASUrement:MEAS:EEQUal`` command. + - ``.failcount``: The ``MEASUrement:MEAS:FAILCount`` command. + - ``.filterrangefrom``: The ``MEASUrement:MEAS:FILTERRANGEFROM`` command. + - ``.filterrangeto``: The ``MEASUrement:MEAS:FILTERRANGETO`` command. + - ``.filters``: The ``MEASUrement:MEAS:FILTers`` command tree. + - ``.freq``: The ``MEASUrement:MEAS:FREQ`` command. + - ``.fromedgesearchdirect``: The ``MEASUrement:MEAS:FROMEDGESEARCHDIRect`` command. + - ``.fromsymbol``: The ``MEASUrement:MEAS:FROMSymbol`` command tree. + - ``.fromedge``: The ``MEASUrement:MEAS:FROMedge`` command. + - ``.fundcurrent``: The ``MEASUrement:MEAS:FUNDCURRent`` command. + - ``.gating``: The ``MEASUrement:MEAS:GATing`` command. + - ``.globalref``: The ``MEASUrement:MEAS:GLOBalref`` command. + - ``.harmonicsclass``: The ``MEASUrement:MEAS:HARMONICSCLass`` command. + - ``.harmonicssource``: The ``MEASUrement:MEAS:HARMONICSSOURce`` command. + - ``.harmonicsstd``: The ``MEASUrement:MEAS:HARMONICSStd`` command. + - ``.harmonicsunits``: The ``MEASUrement:MEAS:HARMONICSUNits`` command. + - ``.highlevel``: The ``MEASUrement:MEAS:HIGHLEVel`` command tree. + - ``.highrefvoltage``: The ``MEASUrement:MEAS:HIGHREFVoltage`` command. + - ``.hlevel``: The ``MEASUrement:MEAS:HLEVel`` command tree. + - ``.htorque``: The ``MEASUrement:MEAS:HTORque`` command. + - ``.hvoltage``: The ``MEASUrement:MEAS:HVOLtage`` command. + - ``.idletime``: The ``MEASUrement:MEAS:IDLETime`` command. + - ``.inputlevel``: The ``MEASUrement:MEAS:INPUTLEVel`` command. + - ``.inputpower``: The ``MEASUrement:MEAS:INPUTPOwer`` command. + - ``.jittersummary``: The ``MEASUrement:MEAS:JITTERSummary`` command tree. + - ``.label``: The ``MEASUrement:MEAS:LABel`` command. + - ``.lineselected``: The ``MEASUrement:MEAS:LINESelected`` command. + - ``.lowrefvoltage``: The ``MEASUrement:MEAS:LOWREFVoltage`` command. + - ``.ltorque``: The ``MEASUrement:MEAS:LTORque`` command. + - ``.ltype``: The ``MEASUrement:MEAS:LTYPe`` command. + - ``.lunits``: The ``MEASUrement:MEAS:LUNITs`` command. + - ``.lvoltage``: The ``MEASUrement:MEAS:LVOLtage`` command. + - ``.maxcurrent``: The ``MEASUrement:MEAS:MAXCUrrent`` command. + - ``.maxcycle``: The ``MEASUrement:MEAS:MAXCycle`` command. + - ``.maxgvoltage``: The ``MEASUrement:MEAS:MAXGVoltage`` command. + - ``.maxvoltage``: The ``MEASUrement:MEAS:MAXVoltage`` command. + - ``.measrange``: The ``MEASUrement:MEAS:MEASRange`` command tree. + - ``.mech``: The ``MEASUrement:MEAS:MECH`` command tree. + - ``.mincycle``: The ``MEASUrement:MEAS:MINCycle`` command. + - ``.oddeven``: The ``MEASUrement:MEAS:ODDEVen`` command. + - ``.ofilters``: The ``MEASUrement:MEAS:OFILters`` command tree. + - ``.osangle``: The ``MEASUrement:MEAS:OSANgle`` command. + - ``.outedgequalifier``: The ``MEASUrement:MEAS:OUTEDGEQUALifier`` command. + - ``.outfilters``: The ``MEASUrement:MEAS:OUTFILTers`` command tree. + - ``.outputvoltage``: The ``MEASUrement:MEAS:OUTPUTVOLTage`` command. + - ``.passfailenabled``: The ``MEASUrement:MEAS:PASSFAILENabled`` command. + - ``.passfailhighlimit``: The ``MEASUrement:MEAS:PASSFAILHIGHlimit`` command. + - ``.passfaillimit``: The ``MEASUrement:MEAS:PASSFAILLIMit`` command. + - ``.passfaillowlimit``: The ``MEASUrement:MEAS:PASSFAILLOWlimit`` command. + - ``.passfailmargin``: The ``MEASUrement:MEAS:PASSFAILMARgin`` command. + - ``.passfailwhen``: The ``MEASUrement:MEAS:PASSFAILWHEN`` command. + - ``.patterndetection``: The ``MEASUrement:MEAS:PATTERNDETECTION`` command. + - ``.patternlength``: The ``MEASUrement:MEAS:PATTERNLENgth`` command. + - ``.patterntype``: The ``MEASUrement:MEAS:PATTERNTYPe`` command. + - ``.pcount``: The ``MEASUrement:MEAS:PCOUNt`` command. + - ``.perfreq``: The ``MEASUrement:MEAS:PERFREQ`` command tree. + - ``.polarity``: The ``MEASUrement:MEAS:POLarity`` command. + - ``.population``: The ``MEASUrement:MEAS:POPUlation`` command tree. + - ``.powerfactor``: The ``MEASUrement:MEAS:POWERFACtor`` command. + - ``.pregion``: The ``MEASUrement:MEAS:PREGion`` command. + - ``.pwidth``: The ``MEASUrement:MEAS:PWIDth`` command. + - ``.redge``: The ``MEASUrement:MEAS:REDGe`` command. + - ``.reflevels``: The ``MEASUrement:MEAS:REFLevels`` command tree. + - ``.reflevels1``: The ``MEASUrement:MEAS:REFLevels1`` command tree. + - ``.refmode``: The ``MEASUrement:MEAS:REFMode`` command. + - ``.refvoltageval``: The ``MEASUrement:MEAS:REFVOLTAGEVal`` command. + - ``.refvoltage``: The ``MEASUrement:MEAS:REFVoltage`` command. + - ``.results``: The ``MEASUrement:MEAS:RESUlts`` command tree. + - ``.ripplefreqval``: The ``MEASUrement:MEAS:RIPPLEFREQVal`` command. + - ``.sequence``: The ``MEASUrement:MEAS:SEQuence`` command. + - ``.signalfrequency``: The ``MEASUrement:MEAS:SIGNALFREQUEncy`` command. + - ``.signaltype``: The ``MEASUrement:MEAS:SIGNALType`` command. + - ``.slabs``: The ``MEASUrement:MEAS:SLABs`` command. + - ``.slpct``: The ``MEASUrement:MEAS:SLPCt`` command. + - ``.sltype``: The ``MEASUrement:MEAS:SLTYpe`` command. + - ``.smoothingfilter``: The ``MEASUrement:MEAS:SMOOTHINGFILTER`` command. + - ``.source``: The ``MEASUrement:MEAS:SOURCE`` command. + - ``.source1``: The ``MEASUrement:MEAS:SOUrce1`` command. + - ``.ssc``: The ``MEASUrement:MEAS:SSC`` command tree. + - ``.status``: The ``MEASUrement:MEAS:STATUS`` command. + - ``.stlabs``: The ``MEASUrement:MEAS:STLABs`` command. + - ``.stlpct``: The ``MEASUrement:MEAS:STLPct`` command. + - ``.stype``: The ``MEASUrement:MEAS:STYPe`` command. + - ``.sunits``: The ``MEASUrement:MEAS:SUNits`` command. + - ``.tckavg``: The ``MEASUrement:MEAS:TCKAVG`` command. + - ``.tconstant``: The ``MEASUrement:MEAS:TCONstant`` command. + - ``.timingmode``: The ``MEASUrement:MEAS:TIMINGMode`` command. + - ``.tmethod``: The ``MEASUrement:MEAS:TMEThod`` command. + - ``.toedgesearchdirect``: The ``MEASUrement:MEAS:TOEDGESEARCHDIRect`` command. + - ``.toedge``: The ``MEASUrement:MEAS:TOEdge`` command. + - ``.tosymbol``: The ``MEASUrement:MEAS:TOSYmbol`` command tree. + - ``.transition``: The ``MEASUrement:MEAS:TRANSition`` command. + - ``.type``: The ``MEASUrement:MEAS:TYPe`` command. + - ``.waittime``: The ``MEASUrement:MEAS:WAITTime`` command. + - ``.windowlength``: The ``MEASUrement:MEAS:WINDOWLENgth`` command. + - ``.xunit``: The ``MEASUrement:MEAS:XUNIT`` command. + - ``.yunit``: The ``MEASUrement:MEAS:YUNIT`` command. + - ``.stltype``: The ``MEASUrement:MEAS:STLTYpe`` command. + """ + + # pylint: disable=too-many-statements + def __init__( # noqa: PLR0915 + self, device: Optional["PIDevice"], cmd_syntax: str + ) -> None: + super().__init__(device, cmd_syntax) + self._ber = MeasurementMeasItemBer(device, f"{self._cmd_syntax}:BER") + self._bin = MeasurementMeasItemBin(device, f"{self._cmd_syntax}:BIN") + self._bitcfgmode = MeasurementMeasItemBitcfgmode(device, f"{self._cmd_syntax}:BITCfgmode") + self._bitend = MeasurementMeasItemBitend(device, f"{self._cmd_syntax}:BITEnd") + self._bitpcnt = MeasurementMeasItemBitpcnt(device, f"{self._cmd_syntax}:BITPcnt") + self._bitstart = MeasurementMeasItemBitstart(device, f"{self._cmd_syntax}:BITSTart") + self._bittype = MeasurementMeasItemBittype(device, f"{self._cmd_syntax}:BITType") + self._burstedgtype = MeasurementMeasItemBurstedgtype( + device, f"{self._cmd_syntax}:BURSTEDGTYPe" + ) + self._ccresults = MeasurementMeasItemCcresults(device, f"{self._cmd_syntax}:CCRESUlts") + self._clockrecovery = MeasurementMeasItemClockrecovery( + device, f"{self._cmd_syntax}:CLOCKRecovery" + ) + self._commonmode = MeasurementMeasItemCommonmode(device, f"{self._cmd_syntax}:COMMONMode") + self._cover = MeasurementMeasItemCover(device, f"{self._cmd_syntax}:COVer") + self._customlimitsfile = MeasurementMeasItemCustomlimitsfile( + device, f"{self._cmd_syntax}:CUSTOMLIMITSFile" + ) + self._cyclemode = MeasurementMeasItemCyclemode(device, f"{self._cmd_syntax}:CYCLemode") + self._delay = MeasurementMeasItemDelay(device, f"{self._cmd_syntax}:DELay") + self._displaystat = MeasurementMeasItemDisplaystat( + device, f"{self._cmd_syntax}:DISPlaystat" + ) + self._edge: Dict[int, MeasurementMeasItemEdgeItem] = DefaultDictPassKeyToFactory( + lambda x: MeasurementMeasItemEdgeItem(device, f"{self._cmd_syntax}:EDGE{x}") + ) + self._edgeincre = MeasurementMeasItemEdgeincre(device, f"{self._cmd_syntax}:EDGEIncre") + self._edgequalone = MeasurementMeasItemEdgequalone( + device, f"{self._cmd_syntax}:EDGEQUALONE" + ) + self._edgequaltwo = MeasurementMeasItemEdgequaltwo( + device, f"{self._cmd_syntax}:EDGEQUALTWO" + ) + self._edgequalifier = MeasurementMeasItemEdgequalifier( + device, f"{self._cmd_syntax}:EDGEQUALifier" + ) + self._edges = MeasurementMeasItemEdges(device, f"{self._cmd_syntax}:EDGES") + self._eequal = MeasurementMeasItemEequal(device, f"{self._cmd_syntax}:EEQUal") + self._failcount = MeasurementMeasItemFailcount(device, f"{self._cmd_syntax}:FAILCount") + self._filterrangefrom = MeasurementMeasItemFilterrangefrom( + device, f"{self._cmd_syntax}:FILTERRANGEFROM" + ) + self._filterrangeto = MeasurementMeasItemFilterrangeto( + device, f"{self._cmd_syntax}:FILTERRANGETO" + ) + self._filters = MeasurementMeasItemFilters(device, f"{self._cmd_syntax}:FILTers") + self._freq = MeasurementMeasItemFreq(device, f"{self._cmd_syntax}:FREQ") + self._fromedgesearchdirect = MeasurementMeasItemFromedgesearchdirect( + device, f"{self._cmd_syntax}:FROMEDGESEARCHDIRect" + ) + self._fromsymbol = MeasurementMeasItemFromsymbol(device, f"{self._cmd_syntax}:FROMSymbol") + self._fromedge = MeasurementMeasItemFromedge(device, f"{self._cmd_syntax}:FROMedge") + self._fundcurrent = MeasurementMeasItemFundcurrent( + device, f"{self._cmd_syntax}:FUNDCURRent" + ) + self._gating = MeasurementMeasItemGating(device, f"{self._cmd_syntax}:GATing") + self._globalref = MeasurementMeasItemGlobalref(device, f"{self._cmd_syntax}:GLOBalref") + self._harmonicsclass = MeasurementMeasItemHarmonicsclass( + device, f"{self._cmd_syntax}:HARMONICSCLass" + ) + self._harmonicssource = MeasurementMeasItemHarmonicssource( + device, f"{self._cmd_syntax}:HARMONICSSOURce" + ) + self._harmonicsstd = MeasurementMeasItemHarmonicsstd( + device, f"{self._cmd_syntax}:HARMONICSStd" + ) + self._harmonicsunits = MeasurementMeasItemHarmonicsunits( + device, f"{self._cmd_syntax}:HARMONICSUNits" + ) + self._highlevel = MeasurementMeasItemHighlevel(device, f"{self._cmd_syntax}:HIGHLEVel") + self._highrefvoltage = MeasurementMeasItemHighrefvoltage( + device, f"{self._cmd_syntax}:HIGHREFVoltage" + ) + self._hlevel = MeasurementMeasItemHlevel(device, f"{self._cmd_syntax}:HLEVel") + self._htorque = MeasurementMeasItemHtorque(device, f"{self._cmd_syntax}:HTORque") + self._hvoltage = MeasurementMeasItemHvoltage(device, f"{self._cmd_syntax}:HVOLtage") + self._idletime = MeasurementMeasItemIdletime(device, f"{self._cmd_syntax}:IDLETime") + self._inputlevel = MeasurementMeasItemInputlevel(device, f"{self._cmd_syntax}:INPUTLEVel") + self._inputpower = MeasurementMeasItemInputpower(device, f"{self._cmd_syntax}:INPUTPOwer") + self._jittersummary = MeasurementMeasItemJittersummary( + device, f"{self._cmd_syntax}:JITTERSummary" + ) + self._label = MeasurementMeasItemLabel(device, f"{self._cmd_syntax}:LABel") + self._lineselected = MeasurementMeasItemLineselected( + device, f"{self._cmd_syntax}:LINESelected" + ) + self._lowrefvoltage = MeasurementMeasItemLowrefvoltage( + device, f"{self._cmd_syntax}:LOWREFVoltage" + ) + self._ltorque = MeasurementMeasItemLtorque(device, f"{self._cmd_syntax}:LTORque") + self._ltype = MeasurementMeasItemLtype(device, f"{self._cmd_syntax}:LTYPe") + self._lunits = MeasurementMeasItemLunits(device, f"{self._cmd_syntax}:LUNITs") + self._lvoltage = MeasurementMeasItemLvoltage(device, f"{self._cmd_syntax}:LVOLtage") + self._maxcurrent = MeasurementMeasItemMaxcurrent(device, f"{self._cmd_syntax}:MAXCUrrent") + self._maxcycle = MeasurementMeasItemMaxcycle(device, f"{self._cmd_syntax}:MAXCycle") + self._maxgvoltage = MeasurementMeasItemMaxgvoltage( + device, f"{self._cmd_syntax}:MAXGVoltage" + ) + self._maxvoltage = MeasurementMeasItemMaxvoltage(device, f"{self._cmd_syntax}:MAXVoltage") + self._measrange = MeasurementMeasItemMeasrange(device, f"{self._cmd_syntax}:MEASRange") + self._mech = MeasurementMeasItemMech(device, f"{self._cmd_syntax}:MECH") + self._mincycle = MeasurementMeasItemMincycle(device, f"{self._cmd_syntax}:MINCycle") + self._oddeven = MeasurementMeasItemOddeven(device, f"{self._cmd_syntax}:ODDEVen") + self._ofilters = MeasurementMeasItemOfilters(device, f"{self._cmd_syntax}:OFILters") + self._osangle = MeasurementMeasItemOsangle(device, f"{self._cmd_syntax}:OSANgle") + self._outedgequalifier = MeasurementMeasItemOutedgequalifier( + device, f"{self._cmd_syntax}:OUTEDGEQUALifier" + ) + self._outfilters = MeasurementMeasItemOutfilters(device, f"{self._cmd_syntax}:OUTFILTers") + self._outputvoltage: Dict[int, MeasurementMeasItemOutputvoltageItem] = ( + DefaultDictPassKeyToFactory( + lambda x: MeasurementMeasItemOutputvoltageItem( + device, f"{self._cmd_syntax}:OUTPUT{x}VOLTage" + ) + ) + ) + self._passfailenabled = MeasurementMeasItemPassfailenabled( + device, f"{self._cmd_syntax}:PASSFAILENabled" + ) + self._passfailhighlimit = MeasurementMeasItemPassfailhighlimit( + device, f"{self._cmd_syntax}:PASSFAILHIGHlimit" + ) + self._passfaillimit = MeasurementMeasItemPassfaillimit( + device, f"{self._cmd_syntax}:PASSFAILLIMit" + ) + self._passfaillowlimit = MeasurementMeasItemPassfaillowlimit( + device, f"{self._cmd_syntax}:PASSFAILLOWlimit" + ) + self._passfailmargin = MeasurementMeasItemPassfailmargin( + device, f"{self._cmd_syntax}:PASSFAILMARgin" + ) + self._passfailwhen = MeasurementMeasItemPassfailwhen( + device, f"{self._cmd_syntax}:PASSFAILWHEN" + ) + self._patterndetection = MeasurementMeasItemPatterndetection( + device, f"{self._cmd_syntax}:PATTERNDETECTION" + ) + self._patternlength = MeasurementMeasItemPatternlength( + device, f"{self._cmd_syntax}:PATTERNLENgth" + ) + self._patterntype = MeasurementMeasItemPatterntype( + device, f"{self._cmd_syntax}:PATTERNTYPe" + ) + self._pcount = MeasurementMeasItemPcount(device, f"{self._cmd_syntax}:PCOUNt") + self._perfreq = MeasurementMeasItemPerfreq(device, f"{self._cmd_syntax}:PERFREQ") + self._polarity = MeasurementMeasItemPolarity(device, f"{self._cmd_syntax}:POLarity") + self._population = MeasurementMeasItemPopulation(device, f"{self._cmd_syntax}:POPUlation") + self._powerfactor = MeasurementMeasItemPowerfactor( + device, f"{self._cmd_syntax}:POWERFACtor" + ) + self._pregion = MeasurementMeasItemPregion(device, f"{self._cmd_syntax}:PREGion") + self._pwidth = MeasurementMeasItemPwidth(device, f"{self._cmd_syntax}:PWIDth") + self._redge = MeasurementMeasItemRedge(device, f"{self._cmd_syntax}:REDGe") + self._reflevels = MeasurementMeasItemReflevels(device, f"{self._cmd_syntax}:REFLevels") + self._reflevels1 = MeasurementMeasItemReflevels1(device, f"{self._cmd_syntax}:REFLevels1") + self._refmode = MeasurementMeasItemRefmode(device, f"{self._cmd_syntax}:REFMode") + self._refvoltageval: Dict[int, MeasurementMeasItemRefvoltagevalItem] = ( + DefaultDictPassKeyToFactory( + lambda x: MeasurementMeasItemRefvoltagevalItem( + device, f"{self._cmd_syntax}:REFVOLTAGE{x}Val" + ) + ) + ) + self._refvoltage = MeasurementMeasItemRefvoltage(device, f"{self._cmd_syntax}:REFVoltage") + self._results = MeasurementMeasItemResults(device, f"{self._cmd_syntax}:RESUlts") + self._ripplefreqval: Dict[int, MeasurementMeasItemRipplefreqvalItem] = ( + DefaultDictPassKeyToFactory( + lambda x: MeasurementMeasItemRipplefreqvalItem( + device, f"{self._cmd_syntax}:RIPPLEFREQ{x}Val" + ) + ) + ) + self._sequence = MeasurementMeasItemSequence(device, f"{self._cmd_syntax}:SEQuence") + self._signalfrequency = MeasurementMeasItemSignalfrequency( + device, f"{self._cmd_syntax}:SIGNALFREQUEncy" + ) + self._signaltype = MeasurementMeasItemSignaltype(device, f"{self._cmd_syntax}:SIGNALType") + self._slabs = MeasurementMeasItemSlabs(device, f"{self._cmd_syntax}:SLABs") + self._slpct = MeasurementMeasItemSlpct(device, f"{self._cmd_syntax}:SLPCt") + self._sltype = MeasurementMeasItemSltype(device, f"{self._cmd_syntax}:SLTYpe") + self._smoothingfilter = MeasurementMeasItemSmoothingfilter( + device, f"{self._cmd_syntax}:SMOOTHINGFILTER" + ) + self._source = MeasurementMeasItemSource(device, f"{self._cmd_syntax}:SOURCE") + self._source1 = MeasurementMeasItemSource1(device, f"{self._cmd_syntax}:SOUrce1") + self._ssc = MeasurementMeasItemSsc(device, f"{self._cmd_syntax}:SSC") + self._status = MeasurementMeasItemStatus(device, f"{self._cmd_syntax}:STATUS") + self._stlabs = MeasurementMeasItemStlabs(device, f"{self._cmd_syntax}:STLABs") + self._stlpct = MeasurementMeasItemStlpct(device, f"{self._cmd_syntax}:STLPct") + self._stype = MeasurementMeasItemStype(device, f"{self._cmd_syntax}:STYPe") + self._sunits = MeasurementMeasItemSunits(device, f"{self._cmd_syntax}:SUNits") + self._tckavg = MeasurementMeasItemTckavg(device, f"{self._cmd_syntax}:TCKAVG") + self._tconstant = MeasurementMeasItemTconstant(device, f"{self._cmd_syntax}:TCONstant") + self._timingmode = MeasurementMeasItemTimingmode(device, f"{self._cmd_syntax}:TIMINGMode") + self._tmethod = MeasurementMeasItemTmethod(device, f"{self._cmd_syntax}:TMEThod") + self._toedgesearchdirect = MeasurementMeasItemToedgesearchdirect( + device, f"{self._cmd_syntax}:TOEDGESEARCHDIRect" + ) + self._toedge = MeasurementMeasItemToedge(device, f"{self._cmd_syntax}:TOEdge") + self._tosymbol = MeasurementMeasItemTosymbol(device, f"{self._cmd_syntax}:TOSYmbol") + self._transition = MeasurementMeasItemTransition(device, f"{self._cmd_syntax}:TRANSition") + self._type = MeasurementMeasItemType(device, f"{self._cmd_syntax}:TYPe") + self._waittime = MeasurementMeasItemWaittime(device, f"{self._cmd_syntax}:WAITTime") + self._windowlength = MeasurementMeasItemWindowlength( + device, f"{self._cmd_syntax}:WINDOWLENgth" + ) + self._xunit = MeasurementMeasItemXunit(device, f"{self._cmd_syntax}:XUNIT") + self._yunit = MeasurementMeasItemYunit(device, f"{self._cmd_syntax}:YUNIT") + self._stltype = MeasurementMeasItemStltype(device, f"{self._cmd_syntax}:STLTYpe") + + @property + def ber(self) -> MeasurementMeasItemBer: + """Return the ``MEASUrement:MEAS:BER`` command. + + Description: + - This command sets or queries BER value for the measurement. Measurements are specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BER?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BER?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BER value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BER + - MEASUrement:MEAS:BER? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is BER value for the measurement. + + Sub-properties: + - ``.targetber``: The ``MEASUrement:MEAS:BER:TARGETBER`` command. + """ + return self._ber + + @property + def bin(self) -> MeasurementMeasItemBin: + """Return the ``MEASUrement:MEAS:BIN`` command. + + Description: + - This command sets or queries the bin count for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BIN?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BIN?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BIN value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BIN + - MEASUrement:MEAS:BIN? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the bin count. + """ + return self._bin + + @property + def bitcfgmode(self) -> MeasurementMeasItemBitcfgmode: + """Return the ``MEASUrement:MEAS:BITCfgmode`` command. + + Description: + - This command sets or queries whether the measurement returns the mean or mode + statistic result when the measurement type is bit amplitude/high/low. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITCfgmode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITCfgmode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:BITCfgmode value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITCfgmode {MEAN|MODE} + - MEASUrement:MEAS:BITCfgmode? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``MEAN`` specifies that the measurement returns results for each bit. + - ``MODE`` specifies that the measurement returns the mode of its results. + """ + return self._bitcfgmode + + @property + def bitend(self) -> MeasurementMeasItemBitend: + """Return the ``MEASUrement:MEAS:BITEnd`` command. + + Description: + - This command sets or queries the bit end as a percentage of the unit interval. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITEnd?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITEnd?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BITEnd value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITEnd + - MEASUrement:MEAS:BITEnd? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the bit end. + """ + return self._bitend + + @property + def bitpcnt(self) -> MeasurementMeasItemBitpcnt: + """Return the ``MEASUrement:MEAS:BITPcnt`` command. + + Description: + - This command sets or queries the bit center as a percentage of the unit interval. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITPcnt?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITPcnt?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BITPcnt value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITPcnt + - MEASUrement:MEAS:BITPcnt? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the bit center percentage value to be measured for the bit type selected. + """ + return self._bitpcnt + + @property + def bitstart(self) -> MeasurementMeasItemBitstart: + """Return the ``MEASUrement:MEAS:BITSTart`` command. + + Description: + - This command sets or queries the bit start as a percentage of the unit interval. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITSTart?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITSTart?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:BITSTart value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITSTart + - MEASUrement:MEAS:BITSTart? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the bit start. + """ + return self._bitstart + + @property + def bittype(self) -> MeasurementMeasItemBittype: + """Return the ``MEASUrement:MEAS:BITType`` command. + + Description: + - This command sets or queries the bit type for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BITType?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:BITType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:BITType value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BITType {ALLBits|TRANSition|NONTRANsition} + - MEASUrement:MEAS:BITType? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ALLBits`` specifies that the measurement returns results for all bits. + - ``TRANSition`` specifies that the measurement returns results for transitions bit + only. + - ``NONTRANsition`` specifies that the measurement returns results for non-transition + bits only. + """ + return self._bittype + + @property + def burstedgtype(self) -> MeasurementMeasItemBurstedgtype: + """Return the ``MEASUrement:MEAS:BURSTEDGTYPe`` command. + + Description: + - This command sets or queries the burst edge type for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:BURSTEDGTYPe?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:BURSTEDGTYPe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:BURSTEDGTYPe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:BURSTEDGTYPe {RISE|FALL} + - MEASUrement:MEAS:BURSTEDGTYPe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``RISE`` specifies a burst with a rising edge. + - ``FALL`` specifies a burst with a falling edge. + """ + return self._burstedgtype + + @property + def ccresults(self) -> MeasurementMeasItemCcresults: + """Return the ``MEASUrement:MEAS:CCRESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CCRESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:CCRESUlts?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.allacqs``: The ``MEASUrement:MEAS:CCRESUlts:ALLAcqs`` command tree. + - ``.currentacq``: The ``MEASUrement:MEAS:CCRESUlts:CURRentacq`` command tree. + """ + return self._ccresults + + @property + def clockrecovery(self) -> MeasurementMeasItemClockrecovery: + """Return the ``MEASUrement:MEAS:CLOCKRecovery`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CLOCKRecovery?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CLOCKRecovery?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.advanced``: The ``MEASUrement:MEAS:CLOCKRecovery:ADVanced`` command tree. + - ``.clockfrequency``: The ``MEASUrement:MEAS:CLOCKRecovery:CLOCKFrequency`` command. + - ``.clockmultiplier``: The ``MEASUrement:MEAS:CLOCKRecovery:CLOCKMultiplier`` + command. + - ``.constclockmode``: The ``MEASUrement:MEAS:CLOCKRecovery:CONSTCLOCKMODe`` command. + - ``.damping``: The ``MEASUrement:MEAS:CLOCKRecovery:DAMPing`` command. + - ``.datapath``: The ``MEASUrement:MEAS:CLOCKRecovery:DATAPath`` command. + - ``.datarate``: The ``MEASUrement:MEAS:CLOCKRecovery:DATARate`` command. + - ``.explicitclockmode``: The ``MEASUrement:MEAS:CLOCKRecovery:EXPLICITCLOCKMODe`` + command. + - ``.global``: The ``MEASUrement:MEAS:CLOCKRecovery:GLOBal`` command. + - ``.jtfbandwidth``: The ``MEASUrement:MEAS:CLOCKRecovery:JTFBandwidth`` command. + - ``.loopbandwidth``: The ``MEASUrement:MEAS:CLOCKRecovery:LOOPBandwidth`` command. + - ``.meanautocalculate``: The ``MEASUrement:MEAS:CLOCKRecovery:MEANAUTOCalculate`` + command. + - ``.method``: The ``MEASUrement:MEAS:CLOCKRecovery:METHod`` command. + - ``.model``: The ``MEASUrement:MEAS:CLOCKRecovery:MODel`` command. + - ``.nominaloffset``: The ``MEASUrement:MEAS:CLOCKRecovery:NOMINALOFFset`` command. + - ``.standard``: The ``MEASUrement:MEAS:CLOCKRecovery:STAndard`` command. + """ + return self._clockrecovery + + @property + def commonmode(self) -> MeasurementMeasItemCommonmode: + """Return the ``MEASUrement:MEAS:COMMONMode`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:COMMONMode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:COMMONMode?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.filters``: The ``MEASUrement:MEAS:COMMONMode:FILTers`` command tree. + - ``.sources``: The ``MEASUrement:MEAS:COMMONMode:SOURCEs`` command. + """ + return self._commonmode + + @property + def cover(self) -> MeasurementMeasItemCover: + """Return the ``MEASUrement:MEAS:COVer`` command. + + Description: + - This command sets or queries the Calculate Over for the Power Quality measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:COVer?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:COVer?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:COVer value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:COVer {FFREQuency|AFREQuencies} + - MEASUrement:MEAS:COVer? + ``` + + Info: + - ``FFREQuency`` sets Calculate Power Quality measurement. + - ``AFREQuencies`` sets Calculate Power Quality measurement for all frequencies. + """ + return self._cover + + @property + def customlimitsfile(self) -> MeasurementMeasItemCustomlimitsfile: + """Return the ``MEASUrement:MEAS:CUSTOMLIMITSFile`` command. + + Description: + - This command sets or queries the custom limits file path for custom harmonics + standard. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CUSTOMLIMITSFile?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:CUSTOMLIMITSFile?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CUSTOMLIMITSFile value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CUSTOMLIMITSFile + - MEASUrement:MEAS:CUSTOMLIMITSFile? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the location of limits file. + """ + return self._customlimitsfile + + @property + def cyclemode(self) -> MeasurementMeasItemCyclemode: + """Return the ``MEASUrement:MEAS:CYCLemode`` command. + + Description: + - This command sets or queries the cycle mode for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:CYCLemode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:CYCLemode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:CYCLemode value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:CYCLemode {RECORD|CYCLE} + - MEASUrement:MEAS:CYCLemode? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``RECORD`` specifies that the measurement is taken over the whole record. + - ``CYCLE`` specifies that measurements are taken on each cycle of the source. + """ + return self._cyclemode + + @property + def delay(self) -> MeasurementMeasItemDelay: + """Return the ``MEASUrement:MEAS:DELay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:DELay?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:DELay?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.edge``: The ``MEASUrement:MEAS:DELay:EDGE`` command. + """ + return self._delay + + @property + def displaystat(self) -> MeasurementMeasItemDisplaystat: + """Return the ``MEASUrement:MEAS:DISPlaystat`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:DISPlaystat?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:DISPlaystat?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.enable``: The ``MEASUrement:MEAS:DISPlaystat:ENABle`` command. + """ + return self._displaystat + + @property + def edge(self) -> Dict[int, MeasurementMeasItemEdgeItem]: + """Return the ``MEASUrement:MEAS:EDGE`` command. + + Description: + - This command sets or queries the type of the specified edge, rise or fall, for the + measurement. The measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EDGE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGE {RISE|FALL|BOTH} + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``RISE`` specifies the rising edge. + - ``FALL`` specifies the falling edge. + - ``BOTH`` specifies either the rising or falling edge. + """ + return self._edge + + @property + def edgeincre(self) -> MeasurementMeasItemEdgeincre: + """Return the ``MEASUrement:MEAS:EDGEIncre`` command. + + Description: + - This command sets or queries the edge increment value for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGEIncre?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGEIncre?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGEIncre value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGEIncre + - MEASUrement:MEAS:EDGEIncre? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the measurements edge increment value. + """ + return self._edgeincre + + @property + def edgequalone(self) -> MeasurementMeasItemEdgequalone: + """Return the ``MEASUrement:MEAS:EDGEQUALONE`` command. + + Description: + - This command set or queries the measurement 1 input edge qualifier one source for + Efficiency measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGEQUALONE?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGEQUALONE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGEQUALONE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGEQUALONE + - MEASUrement:MEAS:EDGEQUALONE? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` specifies the edge qualifier source at input configuration. + """ + return self._edgequalone + + @property + def edgequaltwo(self) -> MeasurementMeasItemEdgequaltwo: + """Return the ``MEASUrement:MEAS:EDGEQUALTWO`` command. + + Description: + - This command sets or queries the measurement 1 output edge qualifier two source for + Efficiency measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGEQUALTWO?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGEQUALTWO?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGEQUALTWO value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGEQUALTWO + - MEASUrement:MEAS:EDGEQUALTWO? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` specifies the edge qualifier source at output configuration. + """ + return self._edgequaltwo + + @property + def edgequalifier(self) -> MeasurementMeasItemEdgequalifier: + """Return the ``MEASUrement:MEAS:EDGEQUALifier`` command. + + Description: + - This command sets or queries the edge qualifier source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGEQUALifier?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:EDGEQUALifier?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:EDGEQUALifier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EDGEQUALifier {CH|MATH|REF} + - MEASUrement:MEAS:EDGEQUALifier? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ``CH`` is the edge qualifier source channel. x has a minimum of 1 and a maximum of + 8. + - ``MATH`` is the edge qualifier source math waveform; is ≥1. + - ``REF`` is the edge qualifier source reference waveform; is ≥1. + """ + return self._edgequalifier + + @property + def edges(self) -> MeasurementMeasItemEdges: + """Return the ``MEASUrement:MEAS:EDGES`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EDGES?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EDGES?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.fromlevel``: The ``MEASUrement:MEAS:EDGES:FROMLevel`` command. + - ``.level``: The ``MEASUrement:MEAS:EDGES:LEVel`` command. + - ``.lowerfrequency``: The ``MEASUrement:MEAS:EDGES:LOWERFREQuency`` command. + - ``.n``: The ``MEASUrement:MEAS:EDGES:N`` command. + - ``.slewratemethod``: The ``MEASUrement:MEAS:EDGES:SLEWRATEMethod`` command. + - ``.tolevel``: The ``MEASUrement:MEAS:EDGES:TOLevel`` command. + - ``.upperfrequency``: The ``MEASUrement:MEAS:EDGES:UPPERFREQuency`` command. + """ + return self._edges + + @property + def eequal(self) -> MeasurementMeasItemEequal: + """Return the ``MEASUrement:MEAS:EEQUal`` command. + + Description: + - This command turns on or off the edge qualifier settings as input waveform to + measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:EEQUal?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:EEQUal?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:EEQUal value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:EEQUal {ON|OFF} + - MEASUrement:MEAS:EEQUal? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ON`` specifies the edge qualifier settings has been turned on. + - ``OFF`` specifies the edge qualifier settings has been turned off. + """ + return self._eequal + + @property + def failcount(self) -> MeasurementMeasItemFailcount: + """Return the ``MEASUrement:MEAS:FAILCount`` command. + + Description: + - This command returns the number of measurement failures, if applicable, for the + selected measurement. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FAILCount?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FAILCount?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FAILCount? + ``` + """ + return self._failcount + + @property + def filterrangefrom(self) -> MeasurementMeasItemFilterrangefrom: + """Return the ``MEASUrement:MEAS:FILTERRANGEFROM`` command. + + Description: + - This command sets or queries harmonics filter from order. Measurements are specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTERRANGEFROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTERRANGEFROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTERRANGEFROM value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTERRANGEFROM + - MEASUrement:MEAS:FILTERRANGEFROM? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the filter range from value. The default value is 1. + """ + return self._filterrangefrom + + @property + def filterrangeto(self) -> MeasurementMeasItemFilterrangeto: + """Return the ``MEASUrement:MEAS:FILTERRANGETO`` command. + + Description: + - This command sets or queries harmonics filter to order. Measurements are specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTERRANGETO?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FILTERRANGETO?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FILTERRANGETO value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FILTERRANGETO + - MEASUrement:MEAS:FILTERRANGETO? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the filter range to value. The default value is 50. + """ + return self._filterrangeto + + @property + def filters(self) -> MeasurementMeasItemFilters: + """Return the ``MEASUrement:MEAS:FILTers`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FILTers?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FILTers?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.blankingtime``: The ``MEASUrement:MEAS:FILTers:BLANKingtime`` command. + - ``.global``: The ``MEASUrement:MEAS:FILTers:GLOBal`` command. + - ``.highpass``: The ``MEASUrement:MEAS:FILTers:HIGHPass`` command tree. + - ``.lowpass``: The ``MEASUrement:MEAS:FILTers:LOWPass`` command tree. + - ``.ramptime``: The ``MEASUrement:MEAS:FILTers:RAMPtime`` command. + """ + return self._filters + + @property + def freq(self) -> MeasurementMeasItemFreq: + """Return the ``MEASUrement:MEAS:FREQ`` command. + + Description: + - This command sets or queries switching frequency for Switching Ripple measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FREQ?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FREQ?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:FREQ value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FREQ + - MEASUrement:MEAS:FREQ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the switching frequency. The default is 100k Hz, The minimum is 50 + Hz, and the maximum is 1 GHz. + """ + return self._freq + + @property + def fromedgesearchdirect(self) -> MeasurementMeasItemFromedgesearchdirect: + """Return the ``MEASUrement:MEAS:FROMEDGESEARCHDIRect`` command. + + Description: + - This command sets or queries the from edge search direction for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:FROMEDGESEARCHDIRect?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:FROMEDGESEARCHDIRect?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMEDGESEARCHDIRect value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMEDGESEARCHDIRect {FORWard|BACKWard} + - MEASUrement:MEAS:FROMEDGESEARCHDIRect? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FORWard`` specifies a forward search from the edge. + - ``BACKWard`` specifies a backward search from the edge. + """ + return self._fromedgesearchdirect + + @property + def fromsymbol(self) -> MeasurementMeasItemFromsymbol: + """Return the ``MEASUrement:MEAS:FROMSymbol`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FROMSymbol?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FROMSymbol?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.logic2source``: The ``MEASUrement:MEAS:FROMSymbol:LOGIC2SOUrce`` command. + - ``.logic3source``: The ``MEASUrement:MEAS:FROMSymbol:LOGIC3SOUrce`` command. + - ``.logic4source``: The ``MEASUrement:MEAS:FROMSymbol:LOGIC4SOUrce`` command. + - ``.logic5source``: The ``MEASUrement:MEAS:FROMSymbol:LOGIC5SOUrce`` command. + - ``.measureat``: The ``MEASUrement:MEAS:FROMSymbol:MEASUREAT`` command. + """ + return self._fromsymbol + + @property + def fromedge(self) -> MeasurementMeasItemFromedge: + """Return the ``MEASUrement:MEAS:FROMedge`` command. + + Description: + - This command sets or queries the from edge type for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FROMedge?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FROMedge?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FROMedge value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FROMedge {RISe|FALL|BOTH} + - MEASUrement:MEAS:FROMedge? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FALL`` specifies the falling edge of the waveform. + - ``RISE`` specifies the rising edge of the waveform. + - ``BOTH`` specifies both the rising and falling edges of the waveform. + """ + return self._fromedge + + @property + def fundcurrent(self) -> MeasurementMeasItemFundcurrent: + """Return the ``MEASUrement:MEAS:FUNDCURRent`` command. + + Description: + - This command sets or queries the fundamental current value for IEC-Class C type + harmonics standard. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:FUNDCURRent?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:FUNDCURRent?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:FUNDCURRent value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:FUNDCURRent + - MEASUrement:MEAS:FUNDCURRent? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the fundamental current for class C harmonics + standard. + """ + return self._fundcurrent + + @property + def gating(self) -> MeasurementMeasItemGating: + """Return the ``MEASUrement:MEAS:GATing`` command. + + Description: + - This command sets or queries the gating type for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GATing?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:GATing?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:GATing value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GATing {NONE|SCREEN|CURSor|LOGic|SEARch|TIMe} + - MEASUrement:MEAS:GATing? + ``` + + Info: + - ``MEAS`` is the measurement number for which to return a value. + - ``NONE`` specifies measurements are taken across the entire record. + - ``SCREEN`` turns on gating, using the left and right edges of the screen. + - ``CURSor`` limits measurements to the portion of the waveform between the vertical bar + cursors, even if they are off screen. + - ``LOGic`` specifies that measurements are taken only when the logical state of other + waveforms is true. + - ``SEARch`` specifies that measurements are taken only where the results of a user + specified search are found. + - ``TIMe`` limits measurements to the portion of the waveform between the Start and End + gate times. + + Sub-properties: + - ``.active``: The ``MEASUrement:MEAS:GATing:ACTive`` command. + - ``.endtime``: The ``MEASUrement:MEAS:GATing:ENDtime`` command. + - ``.global``: The ``MEASUrement:MEAS:GATing:GLOBal`` command. + - ``.hysteresis``: The ``MEASUrement:MEAS:GATing:HYSTeresis`` command. + - ``.logicsource``: The ``MEASUrement:MEAS:GATing:LOGICSource`` command. + - ``.midref``: The ``MEASUrement:MEAS:GATing:MIDRef`` command. + - ``.searchsource``: The ``MEASUrement:MEAS:GATing:SEARCHSource`` command. + - ``.starttime``: The ``MEASUrement:MEAS:GATing:STARTtime`` command. + """ + return self._gating + + @property + def globalref(self) -> MeasurementMeasItemGlobalref: + """Return the ``MEASUrement:MEAS:GLOBalref`` command. + + Description: + - This command sets or queries the reference levels global flag for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:GLOBalref?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:GLOBalref?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:GLOBalref value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:GLOBalref {OFF|ON|0|1} + - MEASUrement:MEAS:GLOBalref? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``OFF`` allows ref levels to be set separately for each measurement. + - ``ON`` applies the same ref levels to all measurements. + - ``0`` allows ref levels to be set separately for each measurement. + - ``1`` applies the same ref levels to all measurements. + """ + return self._globalref + + @property + def harmonicsclass(self) -> MeasurementMeasItemHarmonicsclass: + """Return the ``MEASUrement:MEAS:HARMONICSCLass`` command. + + Description: + - This command sets or queries the class type for the harmonics measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HARMONICSCLass?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSCLass?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSCLass value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HARMONICSCLass {CLASSA|CLASSB|CLASSC|CLASSD} + - MEASUrement:MEAS:HARMONICSCLass? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``CLASSA`` specifies the class type to A. + - ``CLASSB`` specifies the class type to B. + - ``CLASSC`` specifies the class type to C. + - ``CLASSD`` specifies the class type to D. + """ + return self._harmonicsclass + + @property + def harmonicssource(self) -> MeasurementMeasItemHarmonicssource: + """Return the ``MEASUrement:MEAS:HARMONICSSOURce`` command. + + Description: + - This command sets or queries harmonics source. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HARMONICSSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSSOURce value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HARMONICSSOURce {CURRENT|VOLTAGE} + - MEASUrement:MEAS:HARMONICSSOURce? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``CURRENT`` specifies current as the harmonics source. + - ``VOLTAGE`` specifies voltage as the harmonics source. + """ + return self._harmonicssource + + @property + def harmonicsstd(self) -> MeasurementMeasItemHarmonicsstd: + """Return the ``MEASUrement:MEAS:HARMONICSStd`` command. + + Description: + - This command sets or queries harmonics standard. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HARMONICSStd?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSStd?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSStd value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HARMONICSStd {NONE|IEC|IEEE519|CUSTOM} + - MEASUrement:MEAS:HARMONICSStd? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NONE`` specifies none as the harmonics test standard. + - ``IEC`` specifies IEC as the harmonics test standard. + - ``IEEE519`` specifies IEEE519 as the harmonics test standard. + - ``CUSTOM`` specifies that there is a custom harmonics test standard. + """ + return self._harmonicsstd + + @property + def harmonicsunits(self) -> MeasurementMeasItemHarmonicsunits: + """Return the ``MEASUrement:MEAS:HARMONICSUNits`` command. + + Description: + - This command sets or queries harmonics units. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HARMONICSUNits?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSUNits?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HARMONICSUNits value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HARMONICSUNits {LOGARITHM|LINEAR} + - MEASUrement:MEAS:HARMONICSUNits? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``LOGARITHM`` specifies logarithmic as the harmonics units. + - ``LINEAR`` specifies linear as the harmonics units. + """ + return self._harmonicsunits + + @property + def highlevel(self) -> MeasurementMeasItemHighlevel: + """Return the ``MEASUrement:MEAS:HIGHLEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHLEVel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HIGHLEVel?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.configuration``: The ``MEASUrement:MEAS:HIGHLEVel:CONFIGuration`` command. + - ``.l2ltol2n``: The ``MEASUrement:MEAS:HIGHLEVel:L2LTOL2N`` command. + - ``.lineselected``: The ``MEASUrement:MEAS:HIGHLEVel:LINESelected`` command. + - ``.outl2ltol2n``: The ``MEASUrement:MEAS:HIGHLEVel:OUTL2LTOL2N`` command. + - ``.outlineselected``: The ``MEASUrement:MEAS:HIGHLEVel:OUTLINESelected`` command. + - ``.outwiring``: The ``MEASUrement:MEAS:HIGHLEVel:OUTWIRing`` command. + - ``.useglobal``: The ``MEASUrement:MEAS:HIGHLEVel:USEGLOBAL`` command. + - ``.wiring``: The ``MEASUrement:MEAS:HIGHLEVel:WIRing`` command. + """ + return self._highlevel + + @property + def highrefvoltage(self) -> MeasurementMeasItemHighrefvoltage: + """Return the ``MEASUrement:MEAS:HIGHREFVoltage`` command. + + Description: + - This command sets or queries the high reference voltage value for the 'time outside + level' measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HIGHREFVoltage?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:HIGHREFVoltage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HIGHREFVoltage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HIGHREFVoltage + - MEASUrement:MEAS:HIGHREFVoltage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the high reference voltage value for the selected configuration. + """ + return self._highrefvoltage + + @property + def hlevel(self) -> MeasurementMeasItemHlevel: + """Return the ``MEASUrement:MEAS:HLEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HLEVel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HLEVel?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.output``: The ``MEASUrement:MEAS:HLEVel:OUTPut`` command tree. + """ + return self._hlevel + + @property + def htorque(self) -> MeasurementMeasItemHtorque: + """Return the ``MEASUrement:MEAS:HTORque`` command. + + Description: + - This command sets or queries the measurement High Torque value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HTORque?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HTORque?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:HTORque value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HTORque + - MEASUrement:MEAS:HTORque? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the High Torque value of the measurement in the range of 11 to + 10000000. + """ + return self._htorque + + @property + def hvoltage(self) -> MeasurementMeasItemHvoltage: + """Return the ``MEASUrement:MEAS:HVOLtage`` command. + + Description: + - This command sets or queries the measurement Torque High Voltage value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:HVOLtage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:HVOLtage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:HVOLtage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:HVOLtage + - MEASUrement:MEAS:HVOLtage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the High Voltage value of the measurement in the range of 1 to + 100. + """ + return self._hvoltage + + @property + def idletime(self) -> MeasurementMeasItemIdletime: + """Return the ``MEASUrement:MEAS:IDLETime`` command. + + Description: + - This command sets or queries the idle time for the measurement when the measurement + type is burst width. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:IDLETime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:IDLETime?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:IDLETime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:IDLETime + - MEASUrement:MEAS:IDLETime? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the idle time. + """ + return self._idletime + + @property + def inputlevel(self) -> MeasurementMeasItemInputlevel: + """Return the ``MEASUrement:MEAS:INPUTLEVel`` command. + + Description: + - Sets or queries the input trigger voltage level. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:INPUTLEVel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:INPUTLEVel?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:INPUTLEVel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:INPUTLEVel + - MEASUrement:MEAS:INPUTLEVel? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the trigger voltage, in the range of -500 V to +500 V. + """ + return self._inputlevel + + @property + def inputpower(self) -> MeasurementMeasItemInputpower: + """Return the ``MEASUrement:MEAS:INPUTPOwer`` command. + + Description: + - This command sets or queries the input power value for IEC-Class C and Class D + harmonics standard . + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:INPUTPOwer?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:INPUTPOwer?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:INPUTPOwer value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:INPUTPOwer + - MEASUrement:MEAS:INPUTPOwer? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` specifies the input power value for class C harmonics standard. + """ + return self._inputpower + + @property + def jittersummary(self) -> MeasurementMeasItemJittersummary: + """Return the ``MEASUrement:MEAS:JITTERSummary`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:JITTERSummary?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:JITTERSummary?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.dcd``: The ``MEASUrement:MEAS:JITTERSummary:DCD`` command. + - ``.ddj``: The ``MEASUrement:MEAS:JITTERSummary:DDJ`` command. + - ``.djdd``: The ``MEASUrement:MEAS:JITTERSummary:DJDD`` command. + - ``.eyewidthber``: The ``MEASUrement:MEAS:JITTERSummary:EYEWIDTHBER`` command. + - ``.npj``: The ``MEASUrement:MEAS:JITTERSummary:NPJ`` command. + - ``.pj``: The ``MEASUrement:MEAS:JITTERSummary:PJ`` command. + - ``.rjdd``: The ``MEASUrement:MEAS:JITTERSummary:RJDD`` command. + - ``.tie``: The ``MEASUrement:MEAS:JITTERSummary:TIE`` command. + - ``.tjber``: The ``MEASUrement:MEAS:JITTERSummary:TJBER`` command. + """ + return self._jittersummary + + @property + def label(self) -> MeasurementMeasItemLabel: + """Return the ``MEASUrement:MEAS:LABel`` command. + + Description: + - This command sets or queries the label for the measurement. As the label can contain + non 7-bit ASCII text, it is stored in Percent Encoding format. The measurement number + is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:LABel value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LABel + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the measurement label. + """ + return self._label + + @property + def lineselected(self) -> MeasurementMeasItemLineselected: + """Return the ``MEASUrement:MEAS:LINESelected`` command. + + Description: + - This command sets or queries selected lines for the measurement. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LINESelected?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:LINESelected?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:LINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LINESelected {ABCB|ACBC|BACA|XYZY|XZYZ|YXZX} + - MEASUrement:MEAS:LINESelected? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ + return self._lineselected + + @property + def lowrefvoltage(self) -> MeasurementMeasItemLowrefvoltage: + """Return the ``MEASUrement:MEAS:LOWREFVoltage`` command. + + Description: + - This command sets or queries the low reference voltage value for the 'time outside + level' measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LOWREFVoltage?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:LOWREFVoltage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:LOWREFVoltage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LOWREFVoltage + - MEASUrement:MEAS:LOWREFVoltage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the low reference voltage value for the selected configuration. + """ + return self._lowrefvoltage + + @property + def ltorque(self) -> MeasurementMeasItemLtorque: + """Return the ``MEASUrement:MEAS:LTORque`` command. + + Description: + - This command sets or queries the measurement Low Torque value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LTORque?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LTORque?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:LTORque value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LTORque + - MEASUrement:MEAS:LTORque? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the Low Torque value of the measurement in the range of 0 to + 10000000. + """ + return self._ltorque + + @property + def ltype(self) -> MeasurementMeasItemLtype: + """Return the ``MEASUrement:MEAS:LTYPe`` command. + + Description: + - This command sets or returns the value for the level type as auto or custom. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LTYPe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:LTYPe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LTYPe {AUTO|CUSTom} + - MEASUrement:MEAS:LTYPe? + ``` + + Info: + - ``AUTO`` specifies the value for the level type as auto. + - ``CUSTom`` specifies the value for the level type as custom. + """ + return self._ltype + + @property + def lunits(self) -> MeasurementMeasItemLunits: + """Return the ``MEASUrement:MEAS:LUNITs`` command. + + Description: + - This command sets or returns the value for the level units as percentage or absolute. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LUNITs?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LUNITs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:LUNITs value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LUNITs {PERCent|ABSolute} + - MEASUrement:MEAS:LUNITs? + ``` + + Info: + - ``PERCent`` specifies the value for the level units as percent. + - ``ABSolute`` specifies the value for the level units as absolute. + """ + return self._lunits + + @property + def lvoltage(self) -> MeasurementMeasItemLvoltage: + """Return the ``MEASUrement:MEAS:LVOLtage`` command. + + Description: + - This command sets or queries the measurement Torque Low Voltage value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:LVOLtage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:LVOLtage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:LVOLtage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:LVOLtage + - MEASUrement:MEAS:LVOLtage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the Low Voltage value of the measurement in the range of -100 to + 100. + """ + return self._lvoltage + + @property + def maxcurrent(self) -> MeasurementMeasItemMaxcurrent: + """Return the ``MEASUrement:MEAS:MAXCUrrent`` command. + + Description: + - This command sets or returns the maximum current. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MAXCUrrent?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MAXCUrrent?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MAXCUrrent value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MAXCUrrent + - MEASUrement:MEAS:MAXCUrrent? + ``` + + Info: + - ```` specifies the maximum current. + """ + return self._maxcurrent + + @property + def maxcycle(self) -> MeasurementMeasItemMaxcycle: + """Return the ``MEASUrement:MEAS:MAXCycle`` command. + + Description: + - This command sets or queries the maximum cycle value for the DDRTERRN and DDRTERRMN + measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MAXCycle?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MAXCycle?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MAXCycle value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MAXCycle + - MEASUrement:MEAS:MAXCycle? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the maximum cycle range limit value in the range or 2 to 50. + """ + return self._maxcycle + + @property + def maxgvoltage(self) -> MeasurementMeasItemMaxgvoltage: + """Return the ``MEASUrement:MEAS:MAXGVoltage`` command. + + Description: + - This command sets or returns the maximum gate voltage. Measurements are specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MAXGVoltage?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MAXGVoltage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MAXGVoltage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MAXGVoltage + - MEASUrement:MEAS:MAXGVoltage? + ``` + + Info: + - ```` specifies the maximum gate voltage. + """ + return self._maxgvoltage + + @property + def maxvoltage(self) -> MeasurementMeasItemMaxvoltage: + """Return the ``MEASUrement:MEAS:MAXVoltage`` command. + + Description: + - Sets or queries the maximum input voltage. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MAXVoltage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MAXVoltage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MAXVoltage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MAXVoltage + - MEASUrement:MEAS:MAXVoltage? + ``` + + Info: + - ```` is the maximum input voltage, in the range of -61 V to +61 V. + """ + return self._maxvoltage + + @property + def measrange(self) -> MeasurementMeasItemMeasrange: + """Return the ``MEASUrement:MEAS:MEASRange`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MEASRange?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MEASRange?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.global``: The ``MEASUrement:MEAS:MEASRange:GLOBal`` command. + - ``.max``: The ``MEASUrement:MEAS:MEASRange:MAX`` command. + - ``.min``: The ``MEASUrement:MEAS:MEASRange:MIN`` command. + - ``.state``: The ``MEASUrement:MEAS:MEASRange:STATE`` command. + """ + return self._measrange + + @property + def mech(self) -> MeasurementMeasItemMech: + """Return the ``MEASUrement:MEAS:MECH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MECH?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MECH?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.eindexz``: The ``MEASUrement:MEAS:MECH:EINDexz`` command. + - ``.gratio``: The ``MEASUrement:MEAS:MECH:GRATio`` command. + - ``.munits``: The ``MEASUrement:MEAS:MECH:MUNits`` command. + - ``.ppairs``: The ``MEASUrement:MEAS:MECH:PPAirs`` command. + - ``.pprotation``: The ``MEASUrement:MEAS:MECH:PPRotation`` command. + - ``.stype``: The ``MEASUrement:MEAS:MECH:STYPe`` command. + """ + return self._mech + + @property + def mincycle(self) -> MeasurementMeasItemMincycle: + """Return the ``MEASUrement:MEAS:MINCycle`` command. + + Description: + - This command sets or queries the minimum cycle value for the DDRTERRN and DDRTERRMN + measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:MINCycle?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:MINCycle?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:MINCycle value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:MINCycle + - MEASUrement:MEAS:MINCycle? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the minimum cycle range limit value in the range or 2 to 50. + """ + return self._mincycle + + @property + def oddeven(self) -> MeasurementMeasItemOddeven: + """Return the ``MEASUrement:MEAS:ODDEVen`` command. + + Description: + - This command sets or queries harmonics oddeven. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:ODDEVen?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:ODDEVen?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:ODDEVen value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:ODDEVen {ALL|EVEN|ODD} + - MEASUrement:MEAS:ODDEVen? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ALL`` displays all the results. + - ``EVEN`` displays the even results. + - ``ODD`` displays the odd results. + """ + return self._oddeven + + @property + def ofilters(self) -> MeasurementMeasItemOfilters: + """Return the ``MEASUrement:MEAS:OFILters`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OFILters?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:OFILters?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.lowpass``: The ``MEASUrement:MEAS:OFILters:LOWPass`` command tree. + """ + return self._ofilters + + @property + def osangle(self) -> MeasurementMeasItemOsangle: + """Return the ``MEASUrement:MEAS:OSANgle`` command. + + Description: + - This command sets or queries the specified measurement Offset angle. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OSANgle?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:OSANgle?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:OSANgle value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OSANgle + - MEASUrement:MEAS:OSANgle? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the offset angle of the measurement in the range or -360 to 360. + """ + return self._osangle + + @property + def outedgequalifier(self) -> MeasurementMeasItemOutedgequalifier: + """Return the ``MEASUrement:MEAS:OUTEDGEQUALifier`` command. + + Description: + - This command sets or queries local output edge qualifier source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OUTEDGEQUALifier?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTEDGEQUALifier?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OUTEDGEQUALifier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OUTEDGEQUALifier {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:OUTEDGEQUALifier? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._outedgequalifier + + @property + def outfilters(self) -> MeasurementMeasItemOutfilters: + """Return the ``MEASUrement:MEAS:OUTFILTers`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OUTFILTers?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:OUTFILTers?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.lowpass``: The ``MEASUrement:MEAS:OUTFILTers:LOWPass`` command tree. + """ + return self._outfilters + + @property + def outputvoltage(self) -> Dict[int, MeasurementMeasItemOutputvoltageItem]: + """Return the ``MEASUrement:MEAS:OUTPUTVOLTage`` command. + + Description: + - Sets or queries the voltage level for the specified output voltage source n. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:OUTPUTVOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:OUTPUTVOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:OUTPUTVOLTage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:OUTPUTVOLTage + - MEASUrement:MEAS:OUTPUTVOLTage? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the output voltage for source n, in the range of -61 V to +61 V. + """ + return self._outputvoltage + + @property + def passfailenabled(self) -> MeasurementMeasItemPassfailenabled: + """Return the ``MEASUrement:MEAS:PASSFAILENabled`` command. + + Description: + - This command returns or sets the pass/fail test enable status. If enabled, this will + turn on pass fail testing for the specified measurement. Measurements are specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILENabled?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILENabled?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILENabled value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILENabled + - MEASUrement:MEAS:PASSFAILENabled? + ``` + + Info: + - ```` enables or disables pass fail testing for the specified measurement. A value + of 1 enables and a value of 0 disables. + """ + return self._passfailenabled + + @property + def passfailhighlimit(self) -> MeasurementMeasItemPassfailhighlimit: + """Return the ``MEASUrement:MEAS:PASSFAILHIGHlimit`` command. + + Description: + - This command returns or sets the high limit for a measurement test. Used as the test + value when the 'fail when' criteria is set to 'less than' or 'greater than'. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILHIGHlimit?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILHIGHlimit?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILHIGHlimit value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILHIGHlimit + - MEASUrement:MEAS:PASSFAILHIGHlimit? + ``` + + Info: + - ```` sets the high limit for a measurement test. The high limit is a number which + a measurement result will be tested against. + """ + return self._passfailhighlimit + + @property + def passfaillimit(self) -> MeasurementMeasItemPassfaillimit: + """Return the ``MEASUrement:MEAS:PASSFAILLIMit`` command. + + Description: + - This command returns or sets the limit for a measurement test. Used as the test value + when the 'fail when' criteria is set to 'less than' or 'greater than'. Measurements + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILLIMit?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILLIMit?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILLIMit value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILLIMit + - MEASUrement:MEAS:PASSFAILLIMit? + ``` + + Info: + - ```` sets the limit for a measurement test. The limit is a number which a + measurement result will be tested against. + """ + return self._passfaillimit + + @property + def passfaillowlimit(self) -> MeasurementMeasItemPassfaillowlimit: + """Return the ``MEASUrement:MEAS:PASSFAILLOWlimit`` command. + + Description: + - This command returns or sets the low limit for a measurement test. Used as the test + value when the 'fail when' criteria is set to 'less than' or 'greater than'. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILLOWlimit?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILLOWlimit?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILLOWlimit value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILLOWlimit + - MEASUrement:MEAS:PASSFAILLOWlimit? + ``` + + Info: + - ```` sets the low limit for a measurement test. The limit is a number which a + measurement result will be tested against. + """ + return self._passfaillowlimit + + @property + def passfailmargin(self) -> MeasurementMeasItemPassfailmargin: + """Return the ``MEASUrement:MEAS:PASSFAILMARgin`` command. + + Description: + - This command returns or sets the allowed margin for limit comparisons for all + pass/fail checks. This is given as a percentage with a default value of 0.05 + representing 5%. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILMARgin?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILMARgin?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILMARgin value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILMARgin + - MEASUrement:MEAS:PASSFAILMARgin? + ``` + + Info: + - ```` sets the allowed margin for limit comparisons for all pass/fail checks. The + margin as a percentage of the limit. + """ + return self._passfailmargin + + @property + def passfailwhen(self) -> MeasurementMeasItemPassfailwhen: + """Return the ``MEASUrement:MEAS:PASSFAILWHEN`` command. + + Description: + - This command sets or returns the condition on which a measurement test fails. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PASSFAILWHEN?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILWHEN?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PASSFAILWHEN value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PASSFAILWHEN {LESSthan|GREATERthan|Equals|NOTEQuals|INSIDErange|OUTSIDErange} + - MEASUrement:MEAS:PASSFAILWHEN? + ``` + + Info: + - ``LESSthan`` sets the condition for measurement test failure as less than the given + limit. This is the default value. + - ``GREATERthan`` sets the condition for measurement test failure as greater than the + given limit. + - ``Equals`` sets the condition for measurement test failure as equals the given limit. + - ``NOTEQuals`` sets the condition for measurement test failure as not equal to the + given limit. + - ``INSIDErange`` sets the condition for measurement test failure as inside the limit + range. + - ``OUTSIDErange`` sets the condition for measurement test failure as outside the limit + range. + """ # noqa: E501 + return self._passfailwhen + + @property + def patterndetection(self) -> MeasurementMeasItemPatterndetection: + """Return the ``MEASUrement:MEAS:PATTERNDETECTION`` command. + + Description: + - This command sets or queries the pattern detection type for the measurement. + Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PATTERNDETECTION?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PATTERNDETECTION?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PATTERNDETECTION value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PATTERNDETECTION {AUTO|MANUAL} + - MEASUrement:MEAS:PATTERNDETECTION? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` automatically detects the pattern. + - ``MANUAL`` requires manually detecting the pattern. + """ + return self._patterndetection + + @property + def patternlength(self) -> MeasurementMeasItemPatternlength: + """Return the ``MEASUrement:MEAS:PATTERNLENgth`` command. + + Description: + - This command sets or queries the pattern length for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PATTERNLENgth?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:PATTERNLENgth?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PATTERNLENgth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PATTERNLENgth + - MEASUrement:MEAS:PATTERNLENgth? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the pattern length. + """ + return self._patternlength + + @property + def patterntype(self) -> MeasurementMeasItemPatterntype: + """Return the ``MEASUrement:MEAS:PATTERNTYPe`` command. + + Description: + - This command sets or queries the pattern type for the measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PATTERNTYPe?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PATTERNTYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:PATTERNTYPe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PATTERNTYPe {REPeating|ARBitrary} + - MEASUrement:MEAS:PATTERNTYPe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``REPeating`` specifies a repeating pattern. + - ``ARBitrary`` specifies an arbitrary pattern. + """ + return self._patterntype + + @property + def pcount(self) -> MeasurementMeasItemPcount: + """Return the ``MEASUrement:MEAS:PCOUNt`` command. + + Description: + - This command sets or returns number of pulses. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PCOUNt?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PCOUNt?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:PCOUNt value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PCOUNt + - MEASUrement:MEAS:PCOUNt? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` is the number of pulses. + """ + return self._pcount + + @property + def perfreq(self) -> MeasurementMeasItemPerfreq: + """Return the ``MEASUrement:MEAS:PERFREQ`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PERFREQ?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PERFREQ?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.edge``: The ``MEASUrement:MEAS:PERFREQ:EDGE`` command. + """ + return self._perfreq + + @property + def polarity(self) -> MeasurementMeasItemPolarity: + """Return the ``MEASUrement:MEAS:POLarity`` command. + + Description: + - This command sets or queries the polarity for the measurement when the measurement + type is burst width. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:POLarity value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POLarity {NORMal|INVerted} + - MEASUrement:MEAS:POLarity? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NORMal`` specifies normal polarity. + - ``INVerted`` specifies inverted polarity. + """ + return self._polarity + + @property + def population(self) -> MeasurementMeasItemPopulation: + """Return the ``MEASUrement:MEAS:POPUlation`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:POPUlation?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.global``: The ``MEASUrement:MEAS:POPUlation:GLOBal`` command. + - ``.limit``: The ``MEASUrement:MEAS:POPUlation:LIMIT`` command tree. + """ + return self._population + + @property + def powerfactor(self) -> MeasurementMeasItemPowerfactor: + """Return the ``MEASUrement:MEAS:POWERFACtor`` command. + + Description: + - This command sets or queries the power factor value for IEC-Class C type harmonics + standard. The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:POWERFACtor?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:POWERFACtor?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:POWERFACtor value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:POWERFACtor + - MEASUrement:MEAS:POWERFACtor? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the power factor value for class C harmonics standard. + """ + return self._powerfactor + + @property + def pregion(self) -> MeasurementMeasItemPregion: + """Return the ``MEASUrement:MEAS:PREGion`` command. + + Description: + - This command sets or returns pulse region for a measurement. Measurements are + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PREGion?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PREGion?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:PREGion value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PREGion {FPULse|SPULse|MPULse} + - MEASUrement:MEAS:PREGion? + ``` + + Info: + - ``FPULse`` is the pulse region as Fpulse. + - ``SPULse`` is the pulse region as Spulse. + - ``MPULse`` is the pulse region as Mpulse. + """ + return self._pregion + + @property + def pwidth(self) -> MeasurementMeasItemPwidth: + """Return the ``MEASUrement:MEAS:PWIDth`` command. + + Description: + - This command sets or returns pulse width. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:PWIDth?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:PWIDth?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:PWIDth value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:PWIDth + - MEASUrement:MEAS:PWIDth? + ``` + + Info: + - ```` specifies the pulse width. + """ + return self._pwidth + + @property + def redge(self) -> MeasurementMeasItemRedge: + """Return the ``MEASUrement:MEAS:REDGe`` command. + + Description: + - This command turns on or off the Refine edge on qualifier. Measurements are specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REDGe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REDGe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:REDGe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REDGe {ON|OFF} + - MEASUrement:MEAS:REDGe? + ``` + + Info: + - ``ON`` specifies the Refine edge settings has been turned on. + - ``OFF`` specifies the Refine edge settings has been turned off. + """ + return self._redge + + @property + def reflevels(self) -> MeasurementMeasItemReflevels: + """Return the ``MEASUrement:MEAS:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REFLevels?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.absolute``: The ``MEASUrement:MEAS:REFLevels:ABSolute`` command tree. + """ + return self._reflevels + + @property + def reflevels1(self) -> MeasurementMeasItemReflevels1: + """Return the ``MEASUrement:MEAS:REFLevels1`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFLevels1?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REFLevels1?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.absolute``: The ``MEASUrement:MEAS:REFLevels1:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:MEAS:REFLevels1:BASETop`` command. + - ``.method``: The ``MEASUrement:MEAS:REFLevels1:METHod`` command. + - ``.percent``: The ``MEASUrement:MEAS:REFLevels1:PERCent`` command tree. + """ + return self._reflevels1 + + @property + def refmode(self) -> MeasurementMeasItemRefmode: + """Return the ``MEASUrement:MEAS:REFMode`` command. + + Description: + - This command sets or queries the reference level mode for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFMode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REFMode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:REFMode value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFMode {AUTO|MANual} + - MEASUrement:MEAS:REFMode? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` sets the reference level for the measurement automatically. + - ``MANual`` allows the user to set the reference level for the measurement. + """ + return self._refmode + + @property + def refvoltageval(self) -> Dict[int, MeasurementMeasItemRefvoltagevalItem]: + """Return the ``MEASUrement:MEAS:REFVOLTAGEVal`` command. + + Description: + - Sets or queries the reference voltage per rail of Overshoot and Undershoot + measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFVOLTAGEVal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:REFVOLTAGEVal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFVOLTAGEVal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFVOLTAGEVal + - MEASUrement:MEAS:REFVOLTAGEVal? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the rail number. + - ```` is the reference voltage, in the range of -500 V to +500 V. + """ + return self._refvoltageval + + @property + def refvoltage(self) -> MeasurementMeasItemRefvoltage: + """Return the ``MEASUrement:MEAS:REFVoltage`` command. + + Description: + - This command sets or queries the reference voltage value for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:REFVoltage?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:REFVoltage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:REFVoltage value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:REFVoltage + - MEASUrement:MEAS:REFVoltage? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the reference voltage value for the selected configuration. + """ + return self._refvoltage + + @property + def results(self) -> MeasurementMeasItemResults: + """Return the ``MEASUrement:MEAS:RESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:RESUlts?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.allacqs``: The ``MEASUrement:MEAS:RESUlts:ALLAcqs`` command tree. + - ``.currentacq``: The ``MEASUrement:MEAS:RESUlts:CURRentacq`` command tree. + - ``.history``: The ``MEASUrement:MEAS:RESUlts:HISTory`` command tree. + """ + return self._results + + @property + def ripplefreqval(self) -> Dict[int, MeasurementMeasItemRipplefreqvalItem]: + """Return the ``MEASUrement:MEAS:RIPPLEFREQVal`` command. + + Description: + - Sets or queries the ripple frequency per specified rail for Ripple measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:RIPPLEFREQVal?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:RIPPLEFREQVal?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:RIPPLEFREQVal value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:RIPPLEFREQVal + - MEASUrement:MEAS:RIPPLEFREQVal? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the rail number. + - ```` is the frequency, in the range of 1 Hz to 4 GHz. + """ + return self._ripplefreqval + + @property + def sequence(self) -> MeasurementMeasItemSequence: + """Return the ``MEASUrement:MEAS:SEQuence`` command. + + Description: + - This command sets or queries the sequence of hall edges. The measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SEQuence?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SEQuence?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SEQuence value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SEQuence {ABC|ACB} + - MEASUrement:MEAS:SEQuence? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ABC`` specifies the motor Hall edges sequence as ABC. + - ``ACB`` specifies the motor Hall edges sequence as ACB. + """ + return self._sequence + + @property + def signalfrequency(self) -> MeasurementMeasItemSignalfrequency: + """Return the ``MEASUrement:MEAS:SIGNALFREQUEncy`` command. + + Description: + - This command sets or queries line frequency for Harmonics and Ripple line frequency. + The measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SIGNALFREQUEncy?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:SIGNALFREQUEncy?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SIGNALFREQUEncy value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SIGNALFREQUEncy {AUTO|FIFTYHZ|SIXTYHZ|FOURHUNDREDHZ|CUSTOM} + - MEASUrement:MEAS:SIGNALFREQUEncy? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``AUTO`` specifies the line frequency as auto. Only available for Harmonics line + frequency. + - ``FIFTYHZ`` specifies the line frequency as 50 Hz. + - ``SIXTYHZ`` specifies the line frequency as 60 Hz. + - ``FOURHUNDREDHZ`` specifies the line frequency as 400 Hz. . + - ``CUSTOM`` specifies the line frequency as custom. + """ + return self._signalfrequency + + @property + def signaltype(self) -> MeasurementMeasItemSignaltype: + """Return the ``MEASUrement:MEAS:SIGNALType`` command. + + Description: + - This command sets or queries the signal type of source 1 for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SIGNALType?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SIGNALType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SIGNALType value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SIGNALType {CLOCK|DATA|AUTO} + - MEASUrement:MEAS:SIGNALType? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``CLOCK`` specifies a clock signal type. + - ``DATA`` specifies a data signal type. + - ``AUTO`` automatically selects the signal type. + """ + return self._signaltype + + @property + def slabs(self) -> MeasurementMeasItemSlabs: + """Return the ``MEASUrement:MEAS:SLABs`` command. + + Description: + - This command sets or returns the value for the start level in absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SLABs?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SLABs?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SLABs value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SLABs + - MEASUrement:MEAS:SLABs? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the start level in absolute. + """ + return self._slabs + + @property + def slpct(self) -> MeasurementMeasItemSlpct: + """Return the ``MEASUrement:MEAS:SLPCt`` command. + + Description: + - This command sets or returns the value for the start level in percentage. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SLPCt?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SLPCt?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SLPCt value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SLPCt + - MEASUrement:MEAS:SLPCt? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the start level in percentage. + """ + return self._slpct + + @property + def sltype(self) -> MeasurementMeasItemSltype: + """Return the ``MEASUrement:MEAS:SLTYpe`` command. + + Description: + - This command sets or returns the start level source type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SLTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SLTYpe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SLTYpe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SLTYpe {VDS|ID|VGE|VCE|IC} + - MEASUrement:MEAS:SLTYpe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``VDS`` specifies the start level source type as VDS. + - ``ID`` specifies the start level source type as ID. + - ``VGE`` specifies the start level source type as VGE. + - ``VCE`` specifies the start level source type as VCE. + - ``IC`` specifies the start level source type as IC. + """ + return self._sltype + + @property + def smoothingfilter(self) -> MeasurementMeasItemSmoothingfilter: + """Return the ``MEASUrement:MEAS:SMOOTHINGFILTER`` command. + + Description: + - This command sets or queries the status of smoothing filter. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:SMOOTHINGFILTER value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SMOOTHINGFILTER + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` sets the value to 1 or 0. 1 enables smoothing filter and 0 disables it. + """ + return self._smoothingfilter + + @property + def source(self) -> MeasurementMeasItemSource: + """Return the ``MEASUrement:MEAS:SOURCE`` command. + + Description: + - This command sets or queries local input source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SOURCE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SOURCE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SOURCE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SOURCE {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:SOURCE? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def source1(self) -> MeasurementMeasItemSource1: + """Return the ``MEASUrement:MEAS:SOUrce1`` command. + + Description: + - This command sets or queries the measurement source. The measurement number and source + are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SOUrce1?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SOUrce1?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SOUrce1 value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SOUrce1 {S_Ch|CH|MATH|REF} + - MEASUrement:MEAS:SOUrce1? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``1`` specifies the source number. + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source1 + + @property + def ssc(self) -> MeasurementMeasItemSsc: + """Return the ``MEASUrement:MEAS:SSC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SSC?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SSC?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.nominalfreq``: The ``MEASUrement:MEAS:SSC:NOMinalfreq`` command. + """ + return self._ssc + + @property + def status(self) -> MeasurementMeasItemStatus: + """Return the ``MEASUrement:MEAS:STATUS`` command. + + Description: + - This command returns the pass fail status, if applicable, for the selected + measurement. Measurements are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STATUS?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STATUS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STATUS? + ``` + + Info: + - ``PASS`` specifies that the user specified measurement limit has not been violated. + - ``FAIL`` specifies that the user specified measurement limit has been violated. + """ + return self._status + + @property + def stlabs(self) -> MeasurementMeasItemStlabs: + """Return the ``MEASUrement:MEAS:STLABs`` command. + + Description: + - This command sets or returns the value for the stop level in absolute. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STLABs?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STLABs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:STLABs value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STLABs + - MEASUrement:MEAS:STLABs? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the stop level in absolute. + """ + return self._stlabs + + @property + def stlpct(self) -> MeasurementMeasItemStlpct: + """Return the ``MEASUrement:MEAS:STLPct`` command. + + Description: + - This command sets or returns the value for the stop level in percentage. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STLPct?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STLPct?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:STLPct value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STLPct + - MEASUrement:MEAS:STLPct? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ```` specifies the value for the stop level in percentage. + """ + return self._stlpct + + @property + def stype(self) -> MeasurementMeasItemStype: + """Return the ``MEASUrement:MEAS:STYPe`` command. + + Description: + - This command sets or queries the source type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STYPe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:STYPe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STYPe {VOLTage|CURRent} + - MEASUrement:MEAS:STYPe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``VOLTage`` sets source type as Voltage. + - ``CURRent`` sets source type as Current. + """ + return self._stype + + @property + def sunits(self) -> MeasurementMeasItemSunits: + """Return the ``MEASUrement:MEAS:SUNits`` command. + + Description: + - This command sets or queries the speed units for the specific measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SUNits?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:SUNits?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:SUNits value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:SUNits {RPM|HZ} + - MEASUrement:MEAS:SUNits? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``RPM`` defines the speed measurement units as RPM. + - ``HZ`` defines the speed measurement units as HZ. + """ + return self._sunits + + @property + def tckavg(self) -> MeasurementMeasItemTckavg: + """Return the ``MEASUrement:MEAS:TCKAVG`` command. + + Description: + - This command sets or queries the average clock period value used in DDR measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TCKAVG?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TCKAVG?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TCKAVG value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TCKAVG + - MEASUrement:MEAS:TCKAVG? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NR3`` is a floating point number that represents the DDR average clock period in + seconds. + """ + return self._tckavg + + @property + def tconstant(self) -> MeasurementMeasItemTconstant: + """Return the ``MEASUrement:MEAS:TCONstant`` command. + + Description: + - This command sets or queries the measurement Torque Constant. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TCONstant?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TCONstant?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TCONstant value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TCONstant + - MEASUrement:MEAS:TCONstant? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``NR1`` specifies the current multiplier value of the measurement in the range of 0 to + 100. + """ + return self._tconstant + + @property + def timingmode(self) -> MeasurementMeasItemTimingmode: + """Return the ``MEASUrement:MEAS:TIMINGMode`` command. + + Description: + - This command sets or queries the Timing mode for the specified DDR measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TIMINGMode?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TIMINGMode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TIMINGMode value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TIMINGMode {EACHCLOCKCYCLE|TWOCLOCKCYCLES} + - MEASUrement:MEAS:TIMINGMode? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``EACHCLOCKCYCLE`` sets the DDR Timing Mode to use each clock cycle at a time. + - ``TWOCLOCKCYCLES`` sets the DDR Timing Mode to use two cycles at a time. + """ + return self._timingmode + + @property + def tmethod(self) -> MeasurementMeasItemTmethod: + """Return the ``MEASUrement:MEAS:TMEThod`` command. + + Description: + - This command sets or queries the measurement torque method. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TMEThod?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TMEThod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TMEThod value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TMEThod {SENSOR|CURRENT} + - MEASUrement:MEAS:TMEThod? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``SENSOR`` specifies the Torque Method as SENSOR. + - ``CURRENT`` specifies the Torque Method as CURRENT. + """ + return self._tmethod + + @property + def toedgesearchdirect(self) -> MeasurementMeasItemToedgesearchdirect: + """Return the ``MEASUrement:MEAS:TOEDGESEARCHDIRect`` command. + + Description: + - This command sets or queries the to edge search direction for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MEAS:TOEDGESEARCHDIRect?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:TOEDGESEARCHDIRect?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TOEDGESEARCHDIRect value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOEDGESEARCHDIRect {FORWard|BACKWard} + - MEASUrement:MEAS:TOEDGESEARCHDIRect? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FORWard`` specifies a forward search to the edge. + - ``BACKWard`` specifies a backward search to the edge. + """ + return self._toedgesearchdirect + + @property + def toedge(self) -> MeasurementMeasItemToedge: + """Return the ``MEASUrement:MEAS:TOEdge`` command. + + Description: + - This command sets or queries the 'to edge' type for the measurement. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOEdge?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TOEdge?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TOEdge value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TOEdge {SAMEas|OPPositeas|RISe|FALL|BOTH} + - MEASUrement:MEAS:TOEdge? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``FALL`` specifies the falling edge of the waveform. + - ``RISE`` specifies the rising edge of the waveform. + - ``BOTH`` specifies both a rising and falling edge of the waveform. + - ``SAMEas`` specifies that both edges of the waveform are the same. + - ``OPPositeas`` specifies that the edges of the waveform are not the same. + """ + return self._toedge + + @property + def tosymbol(self) -> MeasurementMeasItemTosymbol: + """Return the ``MEASUrement:MEAS:TOSYmbol`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TOSYmbol?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TOSYmbol?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.logic2source``: The ``MEASUrement:MEAS:TOSYmbol:LOGIC2SOUrce`` command. + - ``.logic3source``: The ``MEASUrement:MEAS:TOSYmbol:LOGIC3SOUrce`` command. + - ``.logic4source``: The ``MEASUrement:MEAS:TOSYmbol:LOGIC4SOUrce`` command. + - ``.logic5source``: The ``MEASUrement:MEAS:TOSYmbol:LOGIC5SOUrce`` command. + - ``.measureat``: The ``MEASUrement:MEAS:TOSYmbol:MEASUREAT`` command. + """ + return self._tosymbol + + @property + def transition(self) -> MeasurementMeasItemTransition: + """Return the ``MEASUrement:MEAS:TRANSition`` command. + + Description: + - This command sets or queries the transition edges flag for the measurement. The + measurement number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:TRANSition value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TRANSition {ON|OFF|} + ``` + + Info: + - ```` = 1, the measurement is computed on rising (if measurement type is rise + time) or falling edges (if measurement type is fall time) following a double + transition only. If it is set to 0, the measurement is computed on all rising (if + measurement type is rise time) or falling (if measurement type is fall time) edges. + - ``OFF`` computes the measurement on all rising (if measurement type is rise time) or + falling (if measurement type is fall time) edges. + - ``ON`` computes the measurement on rising (if measurement type is rise time) or + falling edges (if measurement type is fall time) following a double transition only. + """ + return self._transition + + @property + def type(self) -> MeasurementMeasItemType: + r"""Return the ``MEASUrement:MEAS:TYPe`` command. + + Description: + - This command sets or queries the measurement type for the measurement specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:TYPe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:TYPe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:TYPe {ACCOMMONMODE|ACRMS|AMPlITUDE|AREA|BASE|BITAMPLITUDE|BITHIGH|BITLOW|BURSTWIDTH|COMMONMODE|DATARATE|DCD|DDJ|DDRAOS|DDRAOSPERTCK|DDRAOSPERUI|DDRAUS|DDRAUSPERTCK|DDRAUSPERUI|DDRHOLDDIFF|DDRSETUPDIFF|DDRTCHABS|DDRTCHAVERAGE|DDRTCKAVERAGE|DDRTCLABS|DDRTCLAVERAGE|DDRTERRMN|DDRTERRN|DDRTJITCC|DDRTJITDUTY|DDRTJITPER|DDRTPST|DDRTRPRE|DDRTWPRE|DDRVIXAC|DDRTDQSCK|DELAY|DJ|DJDIRAC|DPMOVERSHOOT|DPMUNDERSHOOT|DPMRIPPLE|DPMTURNOFFTIME|DPMTURNONTIME|EYEHIGH|EYELOW|FALLSLEWRATE|FALLTIME|FREQUENCY|F2|F4|F8|HIGH|HEIGHT|HEIGHTBER|HIGHTIME|HOLD|IMDAPOWERQUALITY|IMDAHARMONICS|IMDAINPUTVOLTAGE|IMDAINPUTCURRENT|IMDAINPUTPOWER|IMDAPHASORDIAGRAM|IMDAEFFICIENCY|IMDALINERIPPLE|IMDASWITCHRIPPLE|IMDADQ0|JITTERSUMMARY|J2|J9|LOW|LOWTIME|MAXIMUM|MEAN|MINIMUM|NDUtY|NPERIOD|NPJ|NOVERSHOOT|NWIDTH|PDUTTY|PERIOD|PHASE|PHASENOISE|PJ|PK2Pk|POVERSHOOT|PWIDTH|QFACTOR|RISESLEWRATE|RISETIME|RJ|RJDIRAC|RMS|SRJ|SSCFREQDEV|SSCMODRATE|SETUP|SKEW|TIE|TIMEOUTSIDELEVEL|TJBER|TNTRATIO|TOP|UNITINTERVAL|VDIFFXOVR|WIDTH|WIDTHBER} + - MEASUrement:MEAS:TYPe? + ``` + + Info: + - ``ACCOMMONMODE`` AC Common Mode (Pk-Pk) is the peak-to-peak of the common mode voltage + of two sources. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``ACRMS`` (AC RMS) is the true Root Mean Square of the data points, about the Mean. + This measurement can be made across the entire record, or on each cycle in the record. + - ``AMPLITUDE`` is the difference between the Top value and the Base value. This + measurement can be made across the entire record, or on each cycle in the record. + - ``Amplitude = High - Low`` + - ``AREA`` is the area under the curve, calculated by integrating the data points. The + area measured above ground is positive. The area measured below ground is negative. + This measurement can be made across the entire record, or on each cycle in the record. + - ``BASE`` is the most common data value below the midpoint of the waveform. This + measurement can be made across the entire record, or on each cycle in the record. + - ``BITAMPLITUDE`` (Bit Amplitude) is the difference between the amplitudes of the 1 bit + and the 0 bit surrounding a transition. The amplitude is measured over a user + specified portion at the center of the recovered unit interval. This measurement is + made on each transition bit in the record (Mean) or across the entire record (Mode). + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``BITHIGH`` (Bit High) is the amplitude of a 1 bit. The amplitude is measured over a + user specified portion at the center of the recovered unit interval. This measurement + is made on each high bit in the record (Mean) or across the entire record (Mode). This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BITLOW`` (Bit Low) is the amplitude of a 0 bit. The amplitude is measured over a + user specified portion at the center of the recovered unit interval. This measurement + is made on each high bit in the record (Mean) or across the entire record (Mode). This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BURSTWIDTH`` (Burst Width) is the duration of a series of adjacent crossings of the + Mid reference level (RM). Bursts are separated by a user-defined idle time (tI). This + measurement is made on each burst in the record. + - ``COMMONMODE`` (DC Common Mode) is the arithmetic mean of the common mode voltage of + two sources. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``DATARATE`` (Data Rate) is the reciprocal of Unit Interval. This measurement is made + on each bit in the record. + - ``DCD`` (duty cycle distortion) is the peak-to-peak amplitude of the component of the + deterministic jitter correlated with the signal polarity. This measurement is made + across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``DDJ`` (data dependent jitter) is the peak-to-peak amplitude of the component of the + deterministic jitter correlated with the data pattern in the waveform. This + measurement is made across the entire record. This measurement requires the DJA option + and is not available on a 4 Series MSO instrument. + - ``DDRAOS`` (area above signal) is the total area of the signal above a specified + reference level. This measurement is made across the entire record. + - ``DDRAOSPERTCK`` (area over signal for tCK events) is the total area of the signal + above a specified reference level calculated over consecutive tCK intervals. It is + applicable to clock and address/command waveforms. + - ``DDRAOSPERUI`` (area over signal for UI events) is the total area of the signal above + a specified reference level calculated over consecutive unit intervals. It is + applicable to data and data strobe waveforms. + - ``DDRAUS`` (area under signal) is the total area of the signal below a specified + reference level. This measurement is made across the entire record. + - ``DDRAUSPERTCK`` (area under signal for tCK events) is the total area of the signal + below a specified reference level calculated over consecutive tCK intervals. It is + applicable to clock and address/command waveforms. + - ``DDRAUSPERUI`` (area under signal for UI events) is the total area of the signal + below a specified reference level calculated over consecutive unit intervals. It is + applicable to data and data strobe waveforms. + - ``DDRHOLDDIFF`` (hold difference) is the elapsed time between the specified edge of a + single-ended clock waveform and the specified edge of a differential data waveform. + The measurement uses the closest respective waveform edges that fall within the range + limits.This measurement is made across the entire record. + - ``DDRSETUPDIFF`` (setup difference) is the elapsed time between the specified edge of + a single-ended clock waveform and when the specified edge of a differential data + waveform crosses a specified level. The measurement uses the closest respective + waveform edges that fall within the range limits. This measurement is made across the + entire record. + - ``DDRTCHABS`` (absolute high pulse width) is the absolute value of the high pulse + width as measured from one rising edge to the next falling edge. + - ``DDRTCHAVERAGE`` (average high pulse width) is the average value of the high pulse + width as measured from one rising edge to the next falling edge, across 200 + consecutive cycles.This measurement is made across the entire record. + - ``DDRTCKAVERAGE`` (average clock period) is the average clock period calculated from + rising edge to rising edge, across 200 consecutive cycles.This measurement is made + across the entire record. + - ``DDRTCLABS`` (absolute low pulse width) is the absolute value of the low pulse width + as measured from a falling edge to the next rising edge. This measurement is made + across the entire record. + - ``DDRTCLAVERAGE`` (average low pulse width) is the average value of the low pulse + width as measured from one falling edge to the next rising edge, across 200 + consecutive cycles. + - ``DDRTERRMN`` (cumulative error) is the cumulative error across multiple consecutive + defined cycles from tCK(avg). + - ``DDRTERRN`` (cumulative error) is the cumulative error across specified consecutive + cycles from tCK(avg). In other words, this measures the time difference between the + sum of the clock period from a 200 cycle window and n times tCK(avg). + - ``DDRTJITCC`` (cycle to cycle jitter period) is the absolute difference in clock + period between two consecutive clock cycles. This measurement is made across the + entire record. + - ``DDRTJITDUTY`` (half period jitter) is the largest elapsed time between tCH and + tCH(avg), and tCL and tCL(avg), over 200 consecutive cycles. + - ``DDRTJITPER`` (clock period jitter) is the largest deviation of any tCK signal from + tCK(avg). This measurement is made across the entire record. + - ``DDRTPST`` (read/write burst postamble) is the width of the Read or Write burst + postamble, measured from the last falling edge of the mid reference level to the start + of an undriven state. This measurement is made across the entire record. + - ``DDRTRPRE`` (read burst preamble) is the width of the Read burst preamble, measured + from exiting tristate levels to the first driving edge of the differential strobe. + This measurement is made across the entire record. + - ``DDRTWPRE`` is the width of the Write burst preamble, measured from exiting tristate + levels to the first driving edge of the differential strobe. This measurement is made + across the entire record. + - ``DDRVIXAC`` is the differential input cross-point voltage measured from the true + state transition (and it's compliment) to a specified reference level, measured on a + single-ended signal. + - ``DDRTDQSCK`` is the strobe output access time, measured between the rising edge of + the clock and before or after the differential strobe Read preamble time. Signal edges + are determined by the mid-ref threshold level settings. + - ``DELay`` is the time between the specified Mid reference level (RM) crossing on one + source to a specified Mid reference level (RM) crossing on a second source. This + measurement is made on the first occurrence in the record. + - ``DJ`` (deterministic jitter) is the peak-to-peak amplitude of all timing errors that + exhibit deterministic behavior. This measurement is made across the entire record. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``DJDIRAC`` (dual-dirac deterministic jitter) is deterministic jitter based on a + simplifying assumption that the histogram of all deterministic jitter can be modeled + as a pair of equal-magnitude Dirac functions. This measurement is made across the + entire record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``DPMOVERSHOOT`` is the difference between Maximum and Top, divided by the amplitude. + This measurement can be made across the entire record or on each cycle in the record + at the specified reference voltage. + - ``DPMUNDERSHOOT`` is the difference between Minimum and Base, divided by the + amplitude. This measurement can be made across the entire record or on each cycle in + the record at the specified reference voltage. + - ``DPMRIPPLE`` is the RMS and peak-to-peak values of the output signal on the DC Rail. + - ``DPMTURNOFFTIME`` is the time delay between load current going low to other rail + outputs going low during power down. + - ``DPMTURNONTIME`` is the time delay between load current going high to other rail + outputs going high during power on. + - ``EYEHIGH`` (Eye High) is the amplitude of a high (1) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each high bit + in the record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``EYELOW`` (Eye Low) is the amplitude of a low (0) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each low bit + in the record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``FALLSLEWRATE`` (Falling Slew Rate) is the rate of change in voltage as an edge + transitions from the Top reference level (RT) to the Bottom reference level (RB). This + measurement is made on each cycle in the record. + - ``FALLTIME`` (Fall Time) is the time required for an edge to fall from the Top + reference level (RT) to the Base reference level (RB). This measurement is made on + each cycle in the record. + - ``FREQuency`` is the reciprocal of Period. This measurement is made on each cycle in + the record. + - ``F2`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 2. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``F4`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 4. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``F8`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 8. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``HIGH`` (Eye High) is the amplitude of a high (1) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each high bit + in the record. + - ``HEIGHT`` (Eye Height) is the minimum vertical eye opening at the center of the + recovered unit interval. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``HEIGHTBER`` (Eye Height@BER) is the predicted vertical eye opening that will be + violated with a probability equal to the bit error rate. This measurement is made + across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``HIGHTIME`` (High Time) is the time the signal remains above the Top reference level + (RT). This measurement is made on each cycle in the record. + - ``HOLD`` (Hold Time) is the time between the specified Mid reference level crossing + (RM) on the Clock source to the closest specified Mid reference level (RM) crossing on + the Data source. This measurement is made on each specified Clock edge in the record. + - ``IMDAPOWERQUALITY`` (Power Quality) measures the Frequency and RMS values of the + voltage and current, Crest Factors of the voltage and current, True Power (PTRUE), + Reactive Power (PRE), Apparent Power (PAPP), Power Factor, and Phase Angle (θ) of the + AC signal. + - ``IMDAHARMONICS`` (Harmonics) plots the signal amplitude at the fundamental line + frequency and its harmonics and measures the RMS amplitude and Total Harmonic + Distortion of the signal. + - ``IMDAINPUTVOLTAGE`` (Input Voltage) measures the RMS value of the Input Voltages. The + number of voltages can vary with wiring configuration. + - ``IMDAINPUTCURRENT`` (Input Current) measures the RMS value of the Input Currents. The + number of currents can vary with wiring configuration. + - ``IMDAINPUTPOWER`` (Input Power) measures the RMS value of the Input Power. The power + waveforms are shown as derived MATH waveforms, which are respective pairs of Input + Voltage \\* Current waveforms. + - ``IMDAPHASORDIAGRAM`` (Phasor Diagram) represents magnitudes and phase angles between + voltage(s) and current(s) per winding pair. + - ``IMDAEFFICIENCY`` (Efficiency) measures the ratio of sum of output power(s) to input + power for respective input and output Voltage and Current pairs. Note: the current + release cannot support 3V and 3I pairs, since this requires 12 channels. We restrict + to 2V and 2I which needs 8 scope channels. + - ``IMDALINERIPPLE`` (Line Ripple) provides the RMS and peak-to-peak measurements of the + line frequency portion of the respective AC Voltage or Current signals. + - ``IMDASWITCHINGRIPPLE`` (Switching Ripple) provides the RMS and peak-to-peak + measurements of the respective Voltage or Current signals. + - ``IMDADQ0`` measures the DQ0 values of the phasor plot. This measurement requires + options IMDA and IMDA-DQ0. + - ``JITTERSUMMARY`` (Jitter Summary) is a group consisting of the following + measurements: TIE, TJ@BER, Eye Width@BER, Eye Height@BER, RJ-δδ, DJ-δδ, PJ, DDJ, DcD, + F/2, F/4, F/8. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``J2`` is the total jitter at a bit error rate of 2.5e-3 (TJ@2.5e-3). This measurement + is made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``J9`` is the total jitter at a bit error rate of 2.5e-10 (TJ@2.5e-10). This + measurement is made across the entire record. This measurement requires the DJA option + and is not available on a 4 Series MSO instrument. + - ``LOW`` (Eye Low) is the amplitude of a low (0) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each low bit + in the record. + - ``LOWTIME`` (Low Time) is the time the signal remains below the Base reference level + (RB). This measurement is made on each cycle in the record. + - ``MAXimum`` is the maximum data point. This measurement can be made across the entire + record, or on each cycle in the record. + - ``MEAN`` is the arithmetic mean of the data points. This measurement can be made + across the entire record, or on each cycle in the record. + - ``MINImum`` is the minimum data point. This measurement can be made across the entire + record, or on each cycle in the record. + - ``NDUty`` (Negative Duty Cycle) is the ratio of the Negative Pulse Width to the + Period. This measurement is made on each cycle in the record. + - ``Negative Duty Cycle = (Negative Width) / Period × 100%`` + - ``NPERIOD`` (Duration N-Periods) is the time required to complete N cycles. A cycle is + the time between two adjacent (same direction) crossings of the Mid reference level + (RM). This measurement is made on each cycle in the record. + - ``NPJ`` (non-periodic jitter) is the portion of the BUJ (bounded uncorrelated jitter) + that is random. BUJ excludes DDJ, DCD and RJ. This measurement is made across the + entire record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``NOVershoot`` (Negative Overshoot) is the difference between Minimum and Base, + divided by the Amplitude. This measurement can be made across the entire record, or on + each cycle in the record. + - ``Negative Overshoot = (Base - Minimum) / Amplitude × 100%)`` + - ``NWIdth`` (Negative Pulse Width) is the time the signal remains below the Mid + reference level (RM). This measurement is made on each cycle in the record. + - ``PDUTY`` (Positive Duty Cycle) is the ratio of the Positive Pulse Width to the + Period. This measurement is made on each cycle in the record. + - ``Positive Duty Cycle = (Positive Width)/Period × 100%`` + - ``PERIOD`` is the time required to complete a cycle. A cycle is the time between two + adjacent (same direction) crossings of the Mid reference level (RM). This measurement + is made on each cycle in the record. + - ``PHASE`` is the ratio of the Skew between two sources to the Period of the first + source. This measurement is made on each cycle in the record. + - ``PHASENOISE`` (Phase Noise) is the RMS magnitude of all integrated jitter falling + within a user specified offset range of the fundamental clock frequency. This + measurement is made across the entire record. This measurement is not available on a 4 + Series MSO instrument. + - ``PJ`` (periodic jitter) is the peak-to-peak amplitude of the uncorrelated sinusoidal + components of the deterministic jitter. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series + MSO instrument. + - ``PK2Pk`` (Peak-to-peak) is the difference between Maximum and Minimum. This + measurement can be made across the entire record, or on each cycle in the record. + - ``POVERSHOOT`` (Positive Overshoot) is the difference between Maximum and Top, divided + by the Amplitude. This measurement can be made across the entire record, or on each + cycle in the record. + - ``Positive Overshoot = (Maximum - Top) / Amplitude ×100%`` + - ``PWIDTH`` (Positive Pulse Width) is the time the signal remains above the Mid + reference level (RM). This measurement is made on each cycle in the record. + - ``QFACTOR`` (Q-Factor) is the ratio of the vertical eye opening to RMS vertical noise + measured at a user specified location within the recovered unit interval. This + measurement is made across the entire record. This measurement requires the DJA option + and is not available on a 4 Series MSO instrument. + - ``RISESLEWRATE`` (Rising Slew Rate) is the rate of change in voltage as an edge + transitions from the Base reference level (RB) to the Top reference level (RT). This + measurement is made on each cycle in the record. + - ``RISETIME`` Rise Time is the time required for an edge to rise from the Base + reference level (RB) to the Top reference level (RT). This measurement is made on each + cycle in the record. + - ``RJ`` (random jitter) is the RMS magnitude of all random timing errors following a + Gaussian distribution. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``RJDIRAC`` (dual-dirac random jitter) is random jitter based on a simplifying + assumption that the histogram of all deterministic jitter can be modeled as a pair of + equal-magnitude Dirac functions. This measurement is made across the entire record. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``RMS`` is the true Root Mean Square of the data points. This measurement can be made + across the entire record, or on each cycle in the record. + - ``SRJ`` (sub-rate jitter) is the composite jitter due to periodic components at 1/2, + 1/4 and 1/8 of the data rate. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``SSCFREQDEV`` (SSC Frequency Deviation) is the spread spectrum clock frequency + deviation. This measurement enables a time trend plot of the spread spectrum clock + modulation profile. This measurement is made on each cycle in the record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``SSCMODRATE`` (SSC Modulation Rate) is the modulating frequency of a spread spectrum + clock. This measurement is made on each cycle in the record. This measurement requires + the DJA option and is not available on a 4 Series MSO instrument. + - ``SETUP`` (Setup Time) is the time between the specified Mid reference level (RM) + crossing on the Data source to the closest specified Mid reference level (RM) crossing + on the Clock source. This measurement is made on each specified Clock edge in the + record. + - ``SKEW`` Skew is the time between the specified Mid reference level (RM) crossing on + one source to the following specified Mid reference level (RM) crossing on a second + source. This measurement is made on each cycle in the record. + - ``TIE`` (time interval error) is the difference, in time, between an edge in the + source waveform and the corresponding edge in a recovered reference clock. This + measurement is made on each edge in the waveform. This measurement is not available on + a 4 Series MSO instrument. + - ``TIMEOUTSIDELEVEL`` Time Outside Level is the time the signal remains above the Top + reference level (RT) and/or below the Base reference level (RB). This measurement is + made on each occurrence in the record. + - ``TJBER`` (total jitter at a specified bit error rate) is the predicted peak-to-peak + amplitude of jitter that will only be exceeded with a probability equal to the bit + error rate. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``TNTRATIO`` T/nT Ratio is the ratio of a non-transition bit voltage (2nd and + subsequent bit voltage after a transition) to its nearest preceding transition bit + voltage (1st bit voltage after the transition). Bit voltages are measured at the + interpolated midpoint of the recovered unit interval. This measurement is made on each + non-transition bit in the record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``TOP`` is the most common data value above the midpoint of the waveform. This + measurement can be made across the entire record, or on each cycle in the record. + - ``UNITINTERVAL`` (Unit Interval) is the time difference between two successive bits. + This measurement is made on each bit in the record. + - ``VDIFFXOVR`` (Differential Crossover) is the voltage level of a differential signal + pair at the crossover points. This measurement is made at each crossover point in the + record. This measurement requires the DJA option and is not available on a 4 Series + MSO instrument. + - ``WIDTH`` (Eye Width) is the minimum horizontal eye opening at the user specified + reference level. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``WIDTHBER`` (Eye Width@BER) is the predicted horizontal eye opening that will be + violated with a probability equal to the bit error rate. This measurement is made + across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + """ # noqa: E501 + return self._type + + @property + def waittime(self) -> MeasurementMeasItemWaittime: + """Return the ``MEASUrement:MEAS:WAITTime`` command. + + Description: + - Sets or queries the wait time. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:WAITTime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:WAITTime?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:WAITTime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:WAITTime + - MEASUrement:MEAS:WAITTime? + ``` + + Info: + - ``MEAS`` is the measurement number. + - ```` is the wait time, in the range of 1 s to 500 s. + """ + return self._waittime + + @property + def windowlength(self) -> MeasurementMeasItemWindowlength: + """Return the ``MEASUrement:MEAS:WINDOWLENgth`` command. + + Description: + - This command sets or queries the window length for the measurement. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:WINDOWLENgth?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MEAS:WINDOWLENgth?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MEAS:WINDOWLENgth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:WINDOWLENgth + - MEASUrement:MEAS:WINDOWLENgth? + ``` + + Info: + - ```` is the value for the window length. + """ + return self._windowlength + + @property + def xunit(self) -> MeasurementMeasItemXunit: + """Return the ``MEASUrement:MEAS:XUNIT`` command. + + Description: + - Returns the horizontal scale units of the specified measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:XUNIT?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:XUNIT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:XUNIT? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ + return self._xunit + + @property + def yunit(self) -> MeasurementMeasItemYunit: + """Return the ``MEASUrement:MEAS:YUNIT`` command. + + Description: + - Returns the vertical scale units of the specified measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:YUNIT?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:YUNIT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:YUNIT? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + """ + return self._yunit + + @property + def stltype(self) -> MeasurementMeasItemStltype: + """Return the ``MEASUrement:MEAS:STLTYpe`` command. + + Description: + - This command sets or returns the stop level source type. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS:STLTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS:STLTYpe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MEAS:STLTYpe value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:MEAS:STLTYpe {VDS|ID|VGE|VCE|IC} + - MEASUrement:MEAS:STLTYpe? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``VDS`` specifies the stop level source type as VDS. + - ``ID`` specifies the stop level source type as ID. + - ``VGE`` specifies the stop level source type as VGE. + - ``VCE`` specifies the stop level source type as VCE. + - ``IC`` specifies the stop level source type as IC. + """ + return self._stltype + + +class MeasurementMathItemReflevelsPercentType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:PERCent:TYPE`` command. + + Description: + - This command specifies or queries the reference level percent type for the measurement. + The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:MATH:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``MATH`` specifies the math number. + - ``TENNinety`` sets the values for Low, Mid and High Ref to 10%, 50% and 90% respectively. + - ``TWENtyeighty`` sets the values for Low, Mid and High Ref are set to 20%, 50% and 80% + respectively. + - ``CUSTom`` allows setting other reference level percents. + """ + + +class MeasurementMathItemReflevelsPercentRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the rising edge when the measurement + ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:RISEMid + - MEASUrement:MATH:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level when the measurement Ref level method is set to Percent. + """ + + +class MeasurementMathItemReflevelsPercentRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the low reference level of the rising edge when the measurement + ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISELow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:RISELow + - MEASUrement:MATH:REFLevels:PERCent:RISELow? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 100% is equal to TOP) used to calculate the mid + reference level when the measurement Ref level method is set to Percent. + """ + + +class MeasurementMathItemReflevelsPercentRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the rising edge when the measurement + ref level method is set to percent. The math number is specified by x. The measurement + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:RISEHigh + - MEASUrement:MATH:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 100% is equal to TOP) used to calculate the high + reference level when the measurement's Ref level method is set to Percent. + """ + + +class MeasurementMathItemReflevelsPercentHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 100% is equal to MAX and 0% is equal to + MIN) used to calculate the hysteresis of the reference level when the measurement ref + level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:HYSTeresis + - MEASUrement:MATH:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the hysteresis value used for the autoset. + """ + + +class MeasurementMathItemReflevelsPercentFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the falling edge when the measurement + ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:FALLMid + - MEASUrement:MATH:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level when the measurement Ref level method is set to Percent. + """ + + +class MeasurementMathItemReflevelsPercentFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the low reference level of the falling edge when the measurement + ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:FALLLow + - MEASUrement:MATH:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 100% is equal to HIGH) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + + +class MeasurementMathItemReflevelsPercentFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the falling edge when the measurement + ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:FALLHigh + - MEASUrement:MATH:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 100% is equal to HIGH) used to calculate the high + reference level when the measurement Ref level method is set to Percent. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementMathItemReflevelsPercent(SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH:REFLevels:PERCent?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MATH`` specifies the math number. + + Properties: + - ``.fallhigh``: The ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:MATH:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:MATH:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:MATH:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:MATH:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:MATH:REFLevels:PERCent:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementMathItemReflevelsPercentFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = MeasurementMathItemReflevelsPercentFalllow( + device, f"{self._cmd_syntax}:FALLLow" + ) + self._fallmid = MeasurementMathItemReflevelsPercentFallmid( + device, f"{self._cmd_syntax}:FALLMid" + ) + self._hysteresis = MeasurementMathItemReflevelsPercentHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementMathItemReflevelsPercentRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = MeasurementMathItemReflevelsPercentRiselow( + device, f"{self._cmd_syntax}:RISELow" + ) + self._risemid = MeasurementMathItemReflevelsPercentRisemid( + device, f"{self._cmd_syntax}:RISEMid" + ) + self._type = MeasurementMathItemReflevelsPercentType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> MeasurementMathItemReflevelsPercentFallhigh: + """Return the ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the falling edge when the + measurement ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:FALLHigh + - MEASUrement:MATH:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 100% is equal to HIGH) used to calculate the high + reference level when the measurement Ref level method is set to Percent. + """ + return self._fallhigh + + @property + def falllow(self) -> MeasurementMathItemReflevelsPercentFalllow: + """Return the ``MEASUrement:MATH:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the low reference level of the falling edge when the + measurement ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:FALLLow + - MEASUrement:MATH:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 100% is equal to HIGH) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementMathItemReflevelsPercentFallmid: + """Return the ``MEASUrement:MATH:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the falling edge when the + measurement ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:FALLMid + - MEASUrement:MATH:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level when the measurement Ref level method is set to Percent. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementMathItemReflevelsPercentHysteresis: + """Return the ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 100% is equal to MAX and 0% is + equal to MIN) used to calculate the hysteresis of the reference level when the + measurement ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:HYSTeresis + - MEASUrement:MATH:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the hysteresis value used for the autoset. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementMathItemReflevelsPercentRisehigh: + """Return the ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the rising edge when the + measurement ref level method is set to percent. The math number is specified by x. The + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:RISEHigh + - MEASUrement:MATH:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 100% is equal to TOP) used to calculate the high + reference level when the measurement's Ref level method is set to Percent. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementMathItemReflevelsPercentRiselow: + """Return the ``MEASUrement:MATH:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the low reference level of the rising edge when the + measurement ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISELow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:RISELow + - MEASUrement:MATH:REFLevels:PERCent:RISELow? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 100% is equal to TOP) used to calculate the mid + reference level when the measurement Ref level method is set to Percent. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementMathItemReflevelsPercentRisemid: + """Return the ``MEASUrement:MATH:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the rising edge when the + measurement ref level method is set to percent. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:RISEMid + - MEASUrement:MATH:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level when the measurement Ref level method is set to Percent. + """ + return self._risemid + + @property + def type(self) -> MeasurementMathItemReflevelsPercentType: + """Return the ``MEASUrement:MATH:REFLevels:PERCent:TYPE`` command. + + Description: + - This command specifies or queries the reference level percent type for the + measurement. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:TYPE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:MATH:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``MATH`` specifies the math number. + - ``TENNinety`` sets the values for Low, Mid and High Ref to 10%, 50% and 90% + respectively. + - ``TWENtyeighty`` sets the values for Low, Mid and High Ref are set to 20%, 50% and 80% + respectively. + - ``CUSTom`` allows setting other reference level percents. + """ + return self._type + + +class MeasurementMathItemReflevelsMethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH:REFLevels:METHod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:MATH:REFLevels:METHod? + ``` + + Info: + - ``MATH`` specifies the math number. + - ``PERCent`` specifies that the reference levels are calculated as a percent relative to + HIGH and LOW. The percentages are defined using the + ``MEASUrement:MATH:REFLevel:PERCent`` commands. + - ``ABSolute`` specifies that the reference levels are set explicitly using the + ``MEASUrement:MATH:REFLevel:ABSolute`` commands. This method is useful when precise + values are required. + """ + + +class MeasurementMathItemReflevelsBasetop(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE used to + calculate reference levels for the measurement. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH:REFLevels:BASETop?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:BASETop?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:BASETop value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:MATH:REFLevels:BASETop? + ``` + + Info: + - ``MATH`` specifies the math number. + - ``AUTO`` automatically chooses a reference level method. + - ``MINMax`` specifies that reference levels are relative to the measurement MIN and MAX. + - ``MEANhistogram`` specifies that reference levels are relative to the histogram mean BASE + and TOP. + - ``MODEhistogram`` specifies that reference levels are relative to the histogram mode BASE + and TOP. + - ``EYEhistogram`` specifies that reverence levels are relative to the eye histogram BASE + and TOP. + """ # noqa: E501 + + +class MeasurementMathItemReflevelsAbsoluteType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the measurement. The math number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:MATH:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``MATH`` specifies the math number. + - ``SAME`` specifies that the absolute levels are set the same. + - ``UNIQue`` specifies that the absolute levels can be set independently. + """ + + +class MeasurementMathItemReflevelsAbsoluteRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising edge + when the measurement ref level method is set to absolute. The math number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:RISEMid + - MEASUrement:MATH:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the mid reference level (where 50% is equal to MID) used to calculate the mid + reference level when the measurement Ref level method is set to Absolute. + """ + + +class MeasurementMathItemReflevelsAbsoluteRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising edge + when the measurement ref level method is set to absolute. The math number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:RISELow + - MEASUrement:MATH:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + + +class MeasurementMathItemReflevelsAbsoluteRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising edge + when the measurement ref level method is set to absolute. The math number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:RISEHigh + - MEASUrement:MATH:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + + +class MeasurementMathItemReflevelsAbsoluteHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when the + measurement ref level method is set to absolute. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis + - MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the hysteresis value used for the autoset. + """ + + +class MeasurementMathItemReflevelsAbsoluteFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling edge + when the measurement ref level method is set to absolute. The math number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:FALLMid + - MEASUrement:MATH:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the mid reference level (where 50% is equal to MID) used to calculate the mid + reference level when the measurement's Ref level method is set to Absolute. + """ + + +class MeasurementMathItemReflevelsAbsoluteFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling edge + when the measuement ref level method is set to absolute. The math number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:FALLLow + - MEASUrement:MATH:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + + +class MeasurementMathItemReflevelsAbsoluteFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the measurement ref level method is set to absolute. The math number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:FALLHigh + - MEASUrement:MATH:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementMathItemReflevelsAbsolute(SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH:REFLevels:ABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MATH`` specifies the math number. + + Properties: + - ``.fallhigh``: The ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:MATH:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:MATH:REFLevels:ABSolute:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementMathItemReflevelsAbsoluteFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = MeasurementMathItemReflevelsAbsoluteFalllow( + device, f"{self._cmd_syntax}:FALLLow" + ) + self._fallmid = MeasurementMathItemReflevelsAbsoluteFallmid( + device, f"{self._cmd_syntax}:FALLMid" + ) + self._hysteresis = MeasurementMathItemReflevelsAbsoluteHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementMathItemReflevelsAbsoluteRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = MeasurementMathItemReflevelsAbsoluteRiselow( + device, f"{self._cmd_syntax}:RISELow" + ) + self._risemid = MeasurementMathItemReflevelsAbsoluteRisemid( + device, f"{self._cmd_syntax}:RISEMid" + ) + self._type = MeasurementMathItemReflevelsAbsoluteType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> MeasurementMathItemReflevelsAbsoluteFallhigh: + """Return the ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the measurement ref level method is set to absolute. The math number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:FALLHigh + - MEASUrement:MATH:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + return self._fallhigh + + @property + def falllow(self) -> MeasurementMathItemReflevelsAbsoluteFalllow: + """Return the ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling + edge when the measuement ref level method is set to absolute. The math number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:FALLLow + - MEASUrement:MATH:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementMathItemReflevelsAbsoluteFallmid: + """Return the ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling + edge when the measurement ref level method is set to absolute. The math number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:FALLMid + - MEASUrement:MATH:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the mid reference level (where 50% is equal to MID) used to calculate the + mid reference level when the measurement's Ref level method is set to Absolute. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementMathItemReflevelsAbsoluteHysteresis: + """Return the ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when + the measurement ref level method is set to absolute. The math number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis + - MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the hysteresis value used for the autoset. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementMathItemReflevelsAbsoluteRisehigh: + """Return the ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising + edge when the measurement ref level method is set to absolute. The math number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:RISEHigh + - MEASUrement:MATH:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementMathItemReflevelsAbsoluteRiselow: + """Return the ``MEASUrement:MATH:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising + edge when the measurement ref level method is set to absolute. The math number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:RISELow + - MEASUrement:MATH:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementMathItemReflevelsAbsoluteRisemid: + """Return the ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising + edge when the measurement ref level method is set to absolute. The math number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:RISEMid + - MEASUrement:MATH:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ``MATH`` specifies the math number. + - ```` is the mid reference level (where 50% is equal to MID) used to calculate the + mid reference level when the measurement Ref level method is set to Absolute. + """ + return self._risemid + + @property + def type(self) -> MeasurementMathItemReflevelsAbsoluteType: + """Return the ``MEASUrement:MATH:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the measurement. The math + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:TYPE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:MATH:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``MATH`` specifies the math number. + - ``SAME`` specifies that the absolute levels are set the same. + - ``UNIQue`` specifies that the absolute levels can be set independently. + """ + return self._type + + +class MeasurementMathItemReflevels(SCPICmdRead): + """The ``MEASUrement:MATH:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MATH:REFLevels?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MATH`` specifies the math number. + + Properties: + - ``.absolute``: The ``MEASUrement:MATH:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:MATH:REFLevels:BASETop`` command. + - ``.method``: The ``MEASUrement:MATH:REFLevels:METHod`` command. + - ``.percent``: The ``MEASUrement:MATH:REFLevels:PERCent`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._absolute = MeasurementMathItemReflevelsAbsolute( + device, f"{self._cmd_syntax}:ABSolute" + ) + self._basetop = MeasurementMathItemReflevelsBasetop(device, f"{self._cmd_syntax}:BASETop") + self._method = MeasurementMathItemReflevelsMethod(device, f"{self._cmd_syntax}:METHod") + self._percent = MeasurementMathItemReflevelsPercent(device, f"{self._cmd_syntax}:PERCent") + + @property + def absolute(self) -> MeasurementMathItemReflevelsAbsolute: + """Return the ``MEASUrement:MATH:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MATH`` specifies the math number. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:MATH:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:MATH:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:MATH:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:MATH:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:MATH:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:MATH:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:MATH:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:MATH:REFLevels:ABSolute:TYPE`` command. + """ + return self._absolute + + @property + def basetop(self) -> MeasurementMathItemReflevelsBasetop: + """Return the ``MEASUrement:MATH:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE used to + calculate reference levels for the measurement. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH:REFLevels:BASETop?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:BASETop?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:BASETop value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:MATH:REFLevels:BASETop? + ``` + + Info: + - ``MATH`` specifies the math number. + - ``AUTO`` automatically chooses a reference level method. + - ``MINMax`` specifies that reference levels are relative to the measurement MIN and + MAX. + - ``MEANhistogram`` specifies that reference levels are relative to the histogram mean + BASE and TOP. + - ``MODEhistogram`` specifies that reference levels are relative to the histogram mode + BASE and TOP. + - ``EYEhistogram`` specifies that reverence levels are relative to the eye histogram + BASE and TOP. + """ # noqa: E501 + return self._basetop + + @property + def method(self) -> MeasurementMathItemReflevelsMethod: + """Return the ``MEASUrement:MATH:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. The math number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH:REFLevels:METHod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:MATH:REFLevels:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MATH:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:MATH:REFLevels:METHod? + ``` + + Info: + - ``MATH`` specifies the math number. + - ``PERCent`` specifies that the reference levels are calculated as a percent relative + to HIGH and LOW. The percentages are defined using the + ``MEASUrement:MATH:REFLevel:PERCent`` commands. + - ``ABSolute`` specifies that the reference levels are set explicitly using the + ``MEASUrement:MATH:REFLevel:ABSolute`` commands. This method is useful when precise + values are required. + """ + return self._method + + @property + def percent(self) -> MeasurementMathItemReflevelsPercent: + """Return the ``MEASUrement:MATH:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH:REFLevels:PERCent?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:MATH:REFLevels:PERCent?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``MATH`` specifies the math number. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:MATH:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:MATH:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:MATH:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:MATH:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:MATH:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:MATH:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:MATH:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:MATH:REFLevels:PERCent:TYPE`` command. + """ + return self._percent + + +class MeasurementMathItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``MEASUrement:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MATH?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``MATH`` specifies the math number. + + Properties: + - ``.reflevels``: The ``MEASUrement:MATH:REFLevels`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._reflevels = MeasurementMathItemReflevels(device, f"{self._cmd_syntax}:REFLevels") + + @property + def reflevels(self) -> MeasurementMathItemReflevels: + """Return the ``MEASUrement:MATH:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MATH:REFLevels?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MATH`` specifies the math number. + + Sub-properties: + - ``.absolute``: The ``MEASUrement:MATH:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:MATH:REFLevels:BASETop`` command. + - ``.method``: The ``MEASUrement:MATH:REFLevels:METHod`` command. + - ``.percent``: The ``MEASUrement:MATH:REFLevels:PERCent`` command tree. + """ + return self._reflevels + + +class MeasurementLockrjvalue(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:LOCKRJValue`` command. + + Description: + - This command sets or queries the RJ lock value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:LOCKRJValue?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:LOCKRJValue?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:LOCKRJValue value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:LOCKRJValue + - MEASUrement:LOCKRJValue? + ``` + + Info: + - ```` default value = 1e-12; minimum value = 1e-15; maximum value = 1. + """ + + +class MeasurementLockrj(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:LOCKRJ`` command. + + Description: + - This command sets or queries the state of RJ locking. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:LOCKRJ?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:LOCKRJ?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:LOCKRJ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:LOCKRJ {ON|OFF|} + - MEASUrement:LOCKRJ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ON`` indicates that RJ locking is active. + - ``OFF`` indicates that RJ locking is off. + - ```` a 0 turns off RJ locking; any other value activates RJ locking. + """ + + +class MeasurementList(SCPICmdRead): + """The ``MEASUrement:LIST`` command. + + Description: + - This query returns a comma separated list of all currently defined measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:LIST? + ``` + """ + + +class MeasurementJittermodel(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:JITTermodel`` command. + + Description: + - This command sets or queries the model used to separate random from deterministic jitter + for jitter measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:JITTermodel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:JITTermodel?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:JITTermodel value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:JITTermodel {SPECTRAL|SPECTRALBUJ} + - MEASUrement:JITTermodel? + ``` + + Info: + - ``SPECTRAL`` sets the jitter separation model to spectral only. + - ``SPECTRALBUJ`` sets the jitter separation model to spectral plus BUJ. + """ + + +class MeasurementInterp(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:INTERp`` command. + + Description: + - This command sets or queries the interpolation mode used to locate edge crossings. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:INTERp?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:INTERp?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:INTERp value`` command. + + SCPI Syntax: + ``` + - MEASUrement:INTERp {AUTO|SINX|LINear} + - MEASUrement:INTERp? + ``` + + Info: + - ``AUTO`` automatically selects the interpolation mode. + - ``SINX`` specifies sin(x)/x interpolation, where acquired points are fit to a curve. + - ``LINear`` specifies linear interpolation, where acquired points are connected with + straight lines. + """ + + +class MeasurementHighlevelWiring(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:WIRing`` command. + + Description: + - This command sets or queries the wiring configuration for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:WIRing?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:WIRing?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:HIGHLEVel:WIRing value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:WIRing {P1W2V1I1|P1W3V2I2|P3W3V2I2|P3W3V3I3|P3W3|DCP1W2} + - MEASUrement:HIGHLEVel:WIRing? + ``` + + Info: + - ``P1W2V1I1`` specifies 1 phase- 2 wire (with 1 voltage and 1 current sources) wiring + configuration. + - ``P1W3V2I2`` specifies 1 phase- 3 wire (with 2 voltage and 2 current sources) wiring + configuration. + - ``P3W3V2I2`` specifies 3 phase- 3 wire (with 2 voltage and 2 current sources) wiring + configuration. + - ``P3W3V3I3`` specifies 3 phase- 3 wire (with 3 voltage and 3 current sources) wiring + configuration. + - ``P3W3`` specifies 3 phase and 3 wire, the 3rd wire being Neutral. + - ``DCP1W2`` specifies DC 1 phase and 2 wire, the 2nd wire being Neutral. + """ + + +class MeasurementHighlevelSource(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:SOURCE`` command. + + Description: + - This command sets or queries global input source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:SOURCE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:SOURCE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:HIGHLEVel:SOURCE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:SOURCE {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:SOURCE? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MeasurementHighlevelOutwiring(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:OUTWIRing`` command. + + Description: + - This command sets or queries the global output wiring. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTWIRing?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:OUTWIRing?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:HIGHLEVel:OUTWIRing value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTWIRing {P1W2V1I1|P1W3V2I2|P3W3V2I2|P3W3V3I3|P3W4|DCP1W2} + - MEASUrement:HIGHLEVel:OUTWIRing? + ``` + + Info: + - ``P1W2V1I1`` specifies 1 phase- 2 wire (with 1 voltage and 1 current sources) wiring + configuration. + - ``P1W3V2I2`` specifies 1 phase- 3 wire (with 2 voltage and 2 current sources) wiring + configuration. + - ``P3W3V2I2`` specifies 3 phase- 3 wire (with 2 voltage and 2 current sources) wiring + configuration. + - ``P3W3V3I3`` specifies 3 phase- 3 wire (with 3 voltage and 3 current sources) wiring + configuration. + - ``P3W3`` specifies 3 phase and 3 wire, the 3rd wire being Neutral. + - ``DCP1W2`` specifies DC 1 phase and 2 wire, the 2nd wire being Neutral. + """ + + +class MeasurementHighlevelOutsource(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:OUTSOURCE`` command. + + Description: + - This command sets or queries global output source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTSOURCE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:OUTSOURCE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:HIGHLEVel:OUTSOURCE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTSOURCE {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:OUTSOURCE? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MeasurementHighlevelOutlowpassSpec(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC`` command. + + Description: + - This command sets or queries global output low pass filter order. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTLOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:HIGHLEVel:OUTLOWPass:SPEC? + ``` + + Info: + - ``NONE`` specifies the global output low pass filter order as none. + - ``FIRST`` specifies the global output low pass filter order as first. + - ``SECOND`` specifies the global output low pass filter order as second. + - ``THIRD`` specifies the global output low pass filter order as third. + """ + + +class MeasurementHighlevelOutlowpassFreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ`` command. + + Description: + - This command sets or queries global output low pass filter frequency. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTLOWPass:FREQ + - MEASUrement:HIGHLEVel:OUTLOWPass:FREQ? + ``` + + Info: + - ```` specifies the global output low pass filter frequency. The argument range is 20 + Hz to 10e6 Hz. + """ + + +class MeasurementHighlevelOutlowpass(SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:OUTLOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTLOWPass?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:OUTLOWPass?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.freq``: The ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._freq = MeasurementHighlevelOutlowpassFreq(device, f"{self._cmd_syntax}:FREQ") + self._spec = MeasurementHighlevelOutlowpassSpec(device, f"{self._cmd_syntax}:SPEC") + + @property + def freq(self) -> MeasurementHighlevelOutlowpassFreq: + """Return the ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ`` command. + + Description: + - This command sets or queries global output low pass filter frequency. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTLOWPass:FREQ + - MEASUrement:HIGHLEVel:OUTLOWPass:FREQ? + ``` + + Info: + - ```` specifies the global output low pass filter frequency. The argument range is + 20 Hz to 10e6 Hz. + """ + return self._freq + + @property + def spec(self) -> MeasurementHighlevelOutlowpassSpec: + """Return the ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC`` command. + + Description: + - This command sets or queries global output low pass filter order. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTLOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:HIGHLEVel:OUTLOWPass:SPEC? + ``` + + Info: + - ``NONE`` specifies the global output low pass filter order as none. + - ``FIRST`` specifies the global output low pass filter order as first. + - ``SECOND`` specifies the global output low pass filter order as second. + - ``THIRD`` specifies the global output low pass filter order as third. + """ + return self._spec + + +class MeasurementHighlevelOutlineselected(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:OUTLINESelected`` command. + + Description: + - This command sets or queries global output select lines. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTLINESelected?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLINESelected?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTLINESelected {XYZY|XZYZ|YXZX|XN|YN|ZN} + - MEASUrement:HIGHLEVel:OUTLINESelected? + ``` + + Info: + - ``XYZY`` specifies the global output select lines as XYZY. + - ``XZYZ`` specifies the global output select lines as XZYZ. + - ``YXZX`` specifies the global output select lines as YXZX. + - ``XN`` specifies the global output select lines as XN. + - ``YN`` specifies the global output select lines as YN. + - ``ZN`` specifies the global output select lines as ZN. + """ + + +class MeasurementHighlevelOutl2ltol2n(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:OUTL2LTOL2N`` command. + + Description: + - This command sets or queries global output Line-to-Line to Line-to-Neutral Conversion. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTL2LTOL2N?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:OUTL2LTOL2N?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTL2LTOL2N value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTL2LTOL2N {0|1} + - MEASUrement:HIGHLEVel:OUTL2LTOL2N? + ``` + """ + + +class MeasurementHighlevelOutedgequalifier(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier`` command. + + Description: + - This command sets or queries global output edge qualifier source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTEDGEQUALifier {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:OUTEDGEQUALifier? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MeasurementHighlevelLineselected(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:LINESelected`` command. + + Description: + - This command sets or queries global input select lines. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:LINESelected?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:LINESelected?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:LINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:LINESelected {ABCB|ACBC|BACA|AN|BN|CN} + - MEASUrement:HIGHLEVel:LINESelected? + ``` + + Info: + - ``ABCB`` specifies the global input select lines as ABCB. + - ``ACBC`` specifies the global input select lines as ACBC. + - ``BACA`` specifies the global input select lines as BACA. + - ``AN`` specifies the global input select lines as AN. + - ``BN`` specifies the global input select lines as BN. + - ``CN`` specifies the global input select lines as CN. + """ + + +class MeasurementHighlevelL2ltol2n(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:L2LTOL2N`` command. + + Description: + - This command enables the Line-to-Line to Line-to-Neutral Conversion. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:L2LTOL2N?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:L2LTOL2N?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:HIGHLEVel:L2LTOL2N value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:L2LTOL2N {0|1} + - MEASUrement:HIGHLEVel:L2LTOL2N? + ``` + """ + + +class MeasurementHighlevelInlowpassSpec(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:INLOWPass:SPEC`` command. + + Description: + - This command sets or queries global input low pass filter order. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:INLOWPass:SPEC?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:INLOWPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:INLOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:INLOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:HIGHLEVel:INLOWPass:SPEC? + ``` + + Info: + - ``NONE`` specifies the global input low pass filter order as none. + - ``FIRST`` specifies the global input low pass filter order as first. + - ``SECOND`` specifies the global input low pass filter order as second. + - ``THIRD`` specifies the global input low pass filter order as third. + """ + + +class MeasurementHighlevelInlowpassFreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:INLOWPass:FREQ`` command. + + Description: + - This command sets or queries global input low pass filter frequency. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:INLOWPass:FREQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:INLOWPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:INLOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:INLOWPass:FREQ + - MEASUrement:HIGHLEVel:INLOWPass:FREQ? + ``` + + Info: + - ```` specifies the global input low pass filter frequency. The argument range is 20 + Hz to 10e6 Hz. + """ + + +class MeasurementHighlevelInlowpass(SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:INLOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:INLOWPass?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:INLOWPass?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.freq``: The ``MEASUrement:HIGHLEVel:INLOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:HIGHLEVel:INLOWPass:SPEC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._freq = MeasurementHighlevelInlowpassFreq(device, f"{self._cmd_syntax}:FREQ") + self._spec = MeasurementHighlevelInlowpassSpec(device, f"{self._cmd_syntax}:SPEC") + + @property + def freq(self) -> MeasurementHighlevelInlowpassFreq: + """Return the ``MEASUrement:HIGHLEVel:INLOWPass:FREQ`` command. + + Description: + - This command sets or queries global input low pass filter frequency. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:INLOWPass:FREQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:INLOWPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:INLOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:INLOWPass:FREQ + - MEASUrement:HIGHLEVel:INLOWPass:FREQ? + ``` + + Info: + - ```` specifies the global input low pass filter frequency. The argument range is + 20 Hz to 10e6 Hz. + """ + return self._freq + + @property + def spec(self) -> MeasurementHighlevelInlowpassSpec: + """Return the ``MEASUrement:HIGHLEVel:INLOWPass:SPEC`` command. + + Description: + - This command sets or queries global input low pass filter order. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:INLOWPass:SPEC?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:INLOWPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:INLOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:INLOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:HIGHLEVel:INLOWPass:SPEC? + ``` + + Info: + - ``NONE`` specifies the global input low pass filter order as none. + - ``FIRST`` specifies the global input low pass filter order as first. + - ``SECOND`` specifies the global input low pass filter order as second. + - ``THIRD`` specifies the global input low pass filter order as third. + """ + return self._spec + + +class MeasurementHighlevelEdgequalifier(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:EDGEQUALifier`` command. + + Description: + - This command sets or queries global input edge qualifier source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:EDGEQUALifier?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:EDGEQUALifier?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:EDGEQUALifier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:EDGEQUALifier {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:EDGEQUALifier? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MeasurementHighlevelConfiguration(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:HIGHLEVel:CONFIGuration`` command. + + Description: + - This command sets or queries the global input and output configuration. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:CONFIGuration?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:CONFIGuration?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:CONFIGuration value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:CONFIGuration {INPUT|OUTPUT} + - MEASUrement:HIGHLEVel:CONFIGuration? + ``` + + Info: + - ``INPUT`` specifies the source settings configuration as input. + - ``OUTPUT`` specifies the source settings configuration as output. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementHighlevel(SCPICmdRead): + """The ``MEASUrement:HIGHLEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.configuration``: The ``MEASUrement:HIGHLEVel:CONFIGuration`` command. + - ``.edgequalifier``: The ``MEASUrement:HIGHLEVel:EDGEQUALifier`` command. + - ``.inlowpass``: The ``MEASUrement:HIGHLEVel:INLOWPass`` command tree. + - ``.l2ltol2n``: The ``MEASUrement:HIGHLEVel:L2LTOL2N`` command. + - ``.lineselected``: The ``MEASUrement:HIGHLEVel:LINESelected`` command. + - ``.outedgequalifier``: The ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier`` command. + - ``.outl2ltol2n``: The ``MEASUrement:HIGHLEVel:OUTL2LTOL2N`` command. + - ``.outlineselected``: The ``MEASUrement:HIGHLEVel:OUTLINESelected`` command. + - ``.outlowpass``: The ``MEASUrement:HIGHLEVel:OUTLOWPass`` command tree. + - ``.outsource``: The ``MEASUrement:HIGHLEVel:OUTSOURCE`` command. + - ``.outwiring``: The ``MEASUrement:HIGHLEVel:OUTWIRing`` command. + - ``.source``: The ``MEASUrement:HIGHLEVel:SOURCE`` command. + - ``.wiring``: The ``MEASUrement:HIGHLEVel:WIRing`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._configuration = MeasurementHighlevelConfiguration( + device, f"{self._cmd_syntax}:CONFIGuration" + ) + self._edgequalifier = MeasurementHighlevelEdgequalifier( + device, f"{self._cmd_syntax}:EDGEQUALifier" + ) + self._inlowpass = MeasurementHighlevelInlowpass(device, f"{self._cmd_syntax}:INLOWPass") + self._l2ltol2n = MeasurementHighlevelL2ltol2n(device, f"{self._cmd_syntax}:L2LTOL2N") + self._lineselected = MeasurementHighlevelLineselected( + device, f"{self._cmd_syntax}:LINESelected" + ) + self._outedgequalifier = MeasurementHighlevelOutedgequalifier( + device, f"{self._cmd_syntax}:OUTEDGEQUALifier" + ) + self._outl2ltol2n = MeasurementHighlevelOutl2ltol2n( + device, f"{self._cmd_syntax}:OUTL2LTOL2N" + ) + self._outlineselected = MeasurementHighlevelOutlineselected( + device, f"{self._cmd_syntax}:OUTLINESelected" + ) + self._outlowpass = MeasurementHighlevelOutlowpass(device, f"{self._cmd_syntax}:OUTLOWPass") + self._outsource = MeasurementHighlevelOutsource(device, f"{self._cmd_syntax}:OUTSOURCE") + self._outwiring = MeasurementHighlevelOutwiring(device, f"{self._cmd_syntax}:OUTWIRing") + self._source = MeasurementHighlevelSource(device, f"{self._cmd_syntax}:SOURCE") + self._wiring = MeasurementHighlevelWiring(device, f"{self._cmd_syntax}:WIRing") + + @property + def configuration(self) -> MeasurementHighlevelConfiguration: + """Return the ``MEASUrement:HIGHLEVel:CONFIGuration`` command. + + Description: + - This command sets or queries the global input and output configuration. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:CONFIGuration?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:CONFIGuration?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:CONFIGuration value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:CONFIGuration {INPUT|OUTPUT} + - MEASUrement:HIGHLEVel:CONFIGuration? + ``` + + Info: + - ``INPUT`` specifies the source settings configuration as input. + - ``OUTPUT`` specifies the source settings configuration as output. + """ + return self._configuration + + @property + def edgequalifier(self) -> MeasurementHighlevelEdgequalifier: + """Return the ``MEASUrement:HIGHLEVel:EDGEQUALifier`` command. + + Description: + - This command sets or queries global input edge qualifier source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:EDGEQUALifier?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:EDGEQUALifier?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:EDGEQUALifier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:EDGEQUALifier {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:EDGEQUALifier? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._edgequalifier + + @property + def inlowpass(self) -> MeasurementHighlevelInlowpass: + """Return the ``MEASUrement:HIGHLEVel:INLOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:INLOWPass?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:INLOWPass?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.freq``: The ``MEASUrement:HIGHLEVel:INLOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:HIGHLEVel:INLOWPass:SPEC`` command. + """ + return self._inlowpass + + @property + def l2ltol2n(self) -> MeasurementHighlevelL2ltol2n: + """Return the ``MEASUrement:HIGHLEVel:L2LTOL2N`` command. + + Description: + - This command enables the Line-to-Line to Line-to-Neutral Conversion. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:L2LTOL2N?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:L2LTOL2N?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:L2LTOL2N value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:L2LTOL2N {0|1} + - MEASUrement:HIGHLEVel:L2LTOL2N? + ``` + """ + return self._l2ltol2n + + @property + def lineselected(self) -> MeasurementHighlevelLineselected: + """Return the ``MEASUrement:HIGHLEVel:LINESelected`` command. + + Description: + - This command sets or queries global input select lines. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:LINESelected?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:LINESelected?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:LINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:LINESelected {ABCB|ACBC|BACA|AN|BN|CN} + - MEASUrement:HIGHLEVel:LINESelected? + ``` + + Info: + - ``ABCB`` specifies the global input select lines as ABCB. + - ``ACBC`` specifies the global input select lines as ACBC. + - ``BACA`` specifies the global input select lines as BACA. + - ``AN`` specifies the global input select lines as AN. + - ``BN`` specifies the global input select lines as BN. + - ``CN`` specifies the global input select lines as CN. + """ + return self._lineselected + + @property + def outedgequalifier(self) -> MeasurementHighlevelOutedgequalifier: + """Return the ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier`` command. + + Description: + - This command sets or queries global output edge qualifier source. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTEDGEQUALifier {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:OUTEDGEQUALifier? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._outedgequalifier + + @property + def outl2ltol2n(self) -> MeasurementHighlevelOutl2ltol2n: + """Return the ``MEASUrement:HIGHLEVel:OUTL2LTOL2N`` command. + + Description: + - This command sets or queries global output Line-to-Line to Line-to-Neutral Conversion. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTL2LTOL2N?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTL2LTOL2N?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTL2LTOL2N value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTL2LTOL2N {0|1} + - MEASUrement:HIGHLEVel:OUTL2LTOL2N? + ``` + """ + return self._outl2ltol2n + + @property + def outlineselected(self) -> MeasurementHighlevelOutlineselected: + """Return the ``MEASUrement:HIGHLEVel:OUTLINESelected`` command. + + Description: + - This command sets or queries global output select lines. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTLINESelected?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLINESelected?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLINESelected value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTLINESelected {XYZY|XZYZ|YXZX|XN|YN|ZN} + - MEASUrement:HIGHLEVel:OUTLINESelected? + ``` + + Info: + - ``XYZY`` specifies the global output select lines as XYZY. + - ``XZYZ`` specifies the global output select lines as XZYZ. + - ``YXZX`` specifies the global output select lines as YXZX. + - ``XN`` specifies the global output select lines as XN. + - ``YN`` specifies the global output select lines as YN. + - ``ZN`` specifies the global output select lines as ZN. + """ + return self._outlineselected + + @property + def outlowpass(self) -> MeasurementHighlevelOutlowpass: + """Return the ``MEASUrement:HIGHLEVel:OUTLOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTLOWPass?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTLOWPass?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.freq``: The ``MEASUrement:HIGHLEVel:OUTLOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:HIGHLEVel:OUTLOWPass:SPEC`` command. + """ + return self._outlowpass + + @property + def outsource(self) -> MeasurementHighlevelOutsource: + """Return the ``MEASUrement:HIGHLEVel:OUTSOURCE`` command. + + Description: + - This command sets or queries global output source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTSOURCE?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:OUTSOURCE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTSOURCE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTSOURCE {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:OUTSOURCE? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._outsource + + @property + def outwiring(self) -> MeasurementHighlevelOutwiring: + """Return the ``MEASUrement:HIGHLEVel:OUTWIRing`` command. + + Description: + - This command sets or queries the global output wiring. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:OUTWIRing?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:OUTWIRing?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:OUTWIRing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:OUTWIRing {P1W2V1I1|P1W3V2I2|P3W3V2I2|P3W3V3I3|P3W4|DCP1W2} + - MEASUrement:HIGHLEVel:OUTWIRing? + ``` + + Info: + - ``P1W2V1I1`` specifies 1 phase- 2 wire (with 1 voltage and 1 current sources) wiring + configuration. + - ``P1W3V2I2`` specifies 1 phase- 3 wire (with 2 voltage and 2 current sources) wiring + configuration. + - ``P3W3V2I2`` specifies 3 phase- 3 wire (with 2 voltage and 2 current sources) wiring + configuration. + - ``P3W3V3I3`` specifies 3 phase- 3 wire (with 3 voltage and 3 current sources) wiring + configuration. + - ``P3W3`` specifies 3 phase and 3 wire, the 3rd wire being Neutral. + - ``DCP1W2`` specifies DC 1 phase and 2 wire, the 2nd wire being Neutral. + """ + return self._outwiring + + @property + def source(self) -> MeasurementHighlevelSource: + """Return the ``MEASUrement:HIGHLEVel:SOURCE`` command. + + Description: + - This command sets or queries global input source. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:SOURCE?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:SOURCE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:SOURCE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:SOURCE {S_Ch|CH|MATH|REF} + - MEASUrement:HIGHLEVel:SOURCE? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._source + + @property + def wiring(self) -> MeasurementHighlevelWiring: + """Return the ``MEASUrement:HIGHLEVel:WIRing`` command. + + Description: + - This command sets or queries the wiring configuration for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel:WIRing?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel:WIRing?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:HIGHLEVel:WIRing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:HIGHLEVel:WIRing {P1W2V1I1|P1W3V2I2|P3W3V2I2|P3W3V3I3|P3W3|DCP1W2} + - MEASUrement:HIGHLEVel:WIRing? + ``` + + Info: + - ``P1W2V1I1`` specifies 1 phase- 2 wire (with 1 voltage and 1 current sources) wiring + configuration. + - ``P1W3V2I2`` specifies 1 phase- 3 wire (with 2 voltage and 2 current sources) wiring + configuration. + - ``P3W3V2I2`` specifies 3 phase- 3 wire (with 2 voltage and 2 current sources) wiring + configuration. + - ``P3W3V3I3`` specifies 3 phase- 3 wire (with 3 voltage and 3 current sources) wiring + configuration. + - ``P3W3`` specifies 3 phase and 3 wire, the 3rd wire being Neutral. + - ``DCP1W2`` specifies DC 1 phase and 2 wire, the 2nd wire being Neutral. + """ + return self._wiring + + +class MeasurementGatingStarttime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:GATing:STARTtime`` command. + + Description: + - Sets or queries the start gate time for all measurements that use Global gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:STARTtime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:STARTtime?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:STARTtime value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:STARTtime + - MEASUrement:GATing:STARTtime? + ``` + + Info: + - ```` is the time gating start gate time in seconds. The valid range is -10000 s to + 10000 s. + """ + + +class MeasurementGatingSearchsource(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:GATing:SEARCHSource`` command. + + Description: + - This command sets or queries the global gating search source when the gating type is + search. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:SEARCHSource?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:SEARCHSource?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:SEARCHSource value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:SEARCHSource SEARCH1 + - MEASUrement:GATing:SEARCHSource? + ``` + """ + + +class MeasurementGatingMidref(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:GATing:MIDRef`` command. + + Description: + - This command sets or queries the global gating mid ref value used for logic gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:MIDRef?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:MIDRef?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:MIDRef value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:MIDRef + - MEASUrement:GATing:MIDRef? + ``` + + Info: + - ```` is the mid ref value for gating. + """ + + +class MeasurementGatingLogicsource(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:GATing:LOGICSource`` command. + + Description: + - This command sets or queries the gating data source used for logic gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:LOGICSource?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:LOGICSource?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:LOGICSource value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:LOGICSource {S_Ch|CH|MATH|REF} + - MEASUrement:GATing:LOGICSource? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class MeasurementGatingHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:GATing:HYSTeresis`` command. + + Description: + - This command sets or queries the global gating hysteresis value used for logic gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:HYSTeresis?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:HYSTeresis value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:HYSTeresis + - MEASUrement:GATing:HYSTeresis? + ``` + + Info: + - ```` is the gating hysteresis. + """ + + +class MeasurementGatingEndtime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:GATing:ENDtime`` command. + + Description: + - Sets or queries the end gate time for all measurements that use Global gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:ENDtime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:ENDtime?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:ENDtime value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:ENDtime + - MEASUrement:GATing:ENDtime? + ``` + + Info: + - ```` is the time gating end gate time in seconds. The valid range is -10000 s to + 10000 s. + """ + + +class MeasurementGatingActive(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:GATing:ACTive`` command. + + Description: + - This command sets or queries the global gating active level used for logic gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:ACTive?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:ACTive?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:ACTive value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:ACTive {HIGH|LOW} + - MEASUrement:GATing:ACTive? + ``` + + Info: + - ``HIGH`` specifies the gate is HIGH. + - ``LOW`` specifies the gate is LOW. + """ + + +class MeasurementGating(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:GATing`` command. + + Description: + - This command sets or queries the global gating type for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:GATing {NONE|SCREEN|CURSor|LOGic|SEARch|TIMe} + - MEASUrement:GATing? + ``` + + Info: + - ``NONE`` turns off measurement gating. + - ``SCREen`` turns on gating, using the left and right edges of the screen. + - ``CURSor`` limits measurements to the portion of the waveform between the vertical bar + cursors, even if they are off screen. + - ``LOGic`` specifies that measurements are taken only on the portion of the waveform where + the logic source is in the active state. + - ``SEARCH`` specifies that measurements are taken based on search criteria. + - ``TIMe`` limits measurements to the portion of the waveform between the Start and End gate + times. + + Properties: + - ``.active``: The ``MEASUrement:GATing:ACTive`` command. + - ``.endtime``: The ``MEASUrement:GATing:ENDtime`` command. + - ``.hysteresis``: The ``MEASUrement:GATing:HYSTeresis`` command. + - ``.logicsource``: The ``MEASUrement:GATing:LOGICSource`` command. + - ``.midref``: The ``MEASUrement:GATing:MIDRef`` command. + - ``.searchsource``: The ``MEASUrement:GATing:SEARCHSource`` command. + - ``.starttime``: The ``MEASUrement:GATing:STARTtime`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._active = MeasurementGatingActive(device, f"{self._cmd_syntax}:ACTive") + self._endtime = MeasurementGatingEndtime(device, f"{self._cmd_syntax}:ENDtime") + self._hysteresis = MeasurementGatingHysteresis(device, f"{self._cmd_syntax}:HYSTeresis") + self._logicsource = MeasurementGatingLogicsource(device, f"{self._cmd_syntax}:LOGICSource") + self._midref = MeasurementGatingMidref(device, f"{self._cmd_syntax}:MIDRef") + self._searchsource = MeasurementGatingSearchsource( + device, f"{self._cmd_syntax}:SEARCHSource" + ) + self._starttime = MeasurementGatingStarttime(device, f"{self._cmd_syntax}:STARTtime") + + @property + def active(self) -> MeasurementGatingActive: + """Return the ``MEASUrement:GATing:ACTive`` command. + + Description: + - This command sets or queries the global gating active level used for logic gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:ACTive?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:ACTive?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:ACTive value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:ACTive {HIGH|LOW} + - MEASUrement:GATing:ACTive? + ``` + + Info: + - ``HIGH`` specifies the gate is HIGH. + - ``LOW`` specifies the gate is LOW. + """ + return self._active + + @property + def endtime(self) -> MeasurementGatingEndtime: + """Return the ``MEASUrement:GATing:ENDtime`` command. + + Description: + - Sets or queries the end gate time for all measurements that use Global gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:ENDtime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:ENDtime?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:ENDtime value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:ENDtime + - MEASUrement:GATing:ENDtime? + ``` + + Info: + - ```` is the time gating end gate time in seconds. The valid range is -10000 s to + 10000 s. + """ + return self._endtime + + @property + def hysteresis(self) -> MeasurementGatingHysteresis: + """Return the ``MEASUrement:GATing:HYSTeresis`` command. + + Description: + - This command sets or queries the global gating hysteresis value used for logic gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:HYSTeresis?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:GATing:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:HYSTeresis + - MEASUrement:GATing:HYSTeresis? + ``` + + Info: + - ```` is the gating hysteresis. + """ + return self._hysteresis + + @property + def logicsource(self) -> MeasurementGatingLogicsource: + """Return the ``MEASUrement:GATing:LOGICSource`` command. + + Description: + - This command sets or queries the gating data source used for logic gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:LOGICSource?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:LOGICSource?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:GATing:LOGICSource value`` command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:LOGICSource {S_Ch|CH|MATH|REF} + - MEASUrement:GATing:LOGICSource? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._logicsource + + @property + def midref(self) -> MeasurementGatingMidref: + """Return the ``MEASUrement:GATing:MIDRef`` command. + + Description: + - This command sets or queries the global gating mid ref value used for logic gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:MIDRef?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:MIDRef?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing:MIDRef value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:MIDRef + - MEASUrement:GATing:MIDRef? + ``` + + Info: + - ```` is the mid ref value for gating. + """ + return self._midref + + @property + def searchsource(self) -> MeasurementGatingSearchsource: + """Return the ``MEASUrement:GATing:SEARCHSource`` command. + + Description: + - This command sets or queries the global gating search source when the gating type is + search. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:SEARCHSource?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:SEARCHSource?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:GATing:SEARCHSource value`` command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:SEARCHSource SEARCH1 + - MEASUrement:GATing:SEARCHSource? + ``` + """ + return self._searchsource + + @property + def starttime(self) -> MeasurementGatingStarttime: + """Return the ``MEASUrement:GATing:STARTtime`` command. + + Description: + - Sets or queries the start gate time for all measurements that use Global gating. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing:STARTtime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing:STARTtime?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:GATing:STARTtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:GATing:STARTtime + - MEASUrement:GATing:STARTtime? + ``` + + Info: + - ```` is the time gating start gate time in seconds. The valid range is -10000 s + to 10000 s. + """ + return self._starttime + + +class MeasurementFiltersRamptime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:FILTers:RAMPtime`` command. + + Description: + - This command sets or queries the global filter ramp time for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:RAMPtime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:RAMPtime?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:FILTers:RAMPtime value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:RAMPtime + - MEASUrement:FILTers:RAMPtime? + ``` + + Info: + - ```` is the current filter ramp time. + """ + + +class MeasurementFiltersLowpassSpec(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:FILTers:LOWPass:SPEC`` command. + + Description: + - This command sets or queries the global low pass filter order for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:LOWPass:SPEC?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:LOWPass:SPEC?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:LOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:FILTers:LOWPass:SPEC? + ``` + + Info: + - ``NONE`` specifies no low pass filter. + - ``FIRST`` specifies a first order low pass filter. + - ``SECOND`` specifies a second order low pass filter. + - ``THIRD`` specifies a third order low pass filter. + """ + + +class MeasurementFiltersLowpassFreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:FILTers:LOWPass:FREQ`` command. + + Description: + - This command sets or queries the global low pass filter cutoff frequency for the + measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:LOWPass:FREQ?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:LOWPass:FREQ?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:LOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:LOWPass:FREQ + - MEASUrement:FILTers:LOWPass:FREQ? + ``` + + Info: + - ```` is the current low pass filter frequency. + """ + + +class MeasurementFiltersLowpass(SCPICmdRead): + """The ``MEASUrement:FILTers:LOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:LOWPass?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:LOWPass?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.freq``: The ``MEASUrement:FILTers:LOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:FILTers:LOWPass:SPEC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._freq = MeasurementFiltersLowpassFreq(device, f"{self._cmd_syntax}:FREQ") + self._spec = MeasurementFiltersLowpassSpec(device, f"{self._cmd_syntax}:SPEC") + + @property + def freq(self) -> MeasurementFiltersLowpassFreq: + """Return the ``MEASUrement:FILTers:LOWPass:FREQ`` command. + + Description: + - This command sets or queries the global low pass filter cutoff frequency for the + measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:LOWPass:FREQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:FILTers:LOWPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:LOWPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:LOWPass:FREQ + - MEASUrement:FILTers:LOWPass:FREQ? + ``` + + Info: + - ```` is the current low pass filter frequency. + """ + return self._freq + + @property + def spec(self) -> MeasurementFiltersLowpassSpec: + """Return the ``MEASUrement:FILTers:LOWPass:SPEC`` command. + + Description: + - This command sets or queries the global low pass filter order for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:LOWPass:SPEC?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:FILTers:LOWPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:LOWPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:LOWPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:FILTers:LOWPass:SPEC? + ``` + + Info: + - ``NONE`` specifies no low pass filter. + - ``FIRST`` specifies a first order low pass filter. + - ``SECOND`` specifies a second order low pass filter. + - ``THIRD`` specifies a third order low pass filter. + """ + return self._spec + + +class MeasurementFiltersHighpassSpec(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:FILTers:HIGHPass:SPEC`` command. + + Description: + - This command sets or queries the global high pass filter order for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:HIGHPass:SPEC?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:HIGHPass:SPEC?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:HIGHPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:HIGHPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:FILTers:HIGHPass:SPEC? + ``` + + Info: + - ``NONE`` specifies no high pass filter. + - ``FIRST`` specifies a first order high pass filter. + - ``SECOND`` specifies a second order high pass filter. + - ``THIRD`` specifies a third order high pass filter. + """ + + +class MeasurementFiltersHighpassFreq(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:FILTers:HIGHPass:FREQ`` command. + + Description: + - This command sets or queries the global high pass filter frequency for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:HIGHPass:FREQ?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:HIGHPass:FREQ?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:HIGHPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:HIGHPass:FREQ + - MEASUrement:FILTers:HIGHPass:FREQ? + ``` + + Info: + - ```` is the current high pass filter frequency. + """ + + +class MeasurementFiltersHighpass(SCPICmdRead): + """The ``MEASUrement:FILTers:HIGHPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:HIGHPass?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:HIGHPass?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.freq``: The ``MEASUrement:FILTers:HIGHPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:FILTers:HIGHPass:SPEC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._freq = MeasurementFiltersHighpassFreq(device, f"{self._cmd_syntax}:FREQ") + self._spec = MeasurementFiltersHighpassSpec(device, f"{self._cmd_syntax}:SPEC") + + @property + def freq(self) -> MeasurementFiltersHighpassFreq: + """Return the ``MEASUrement:FILTers:HIGHPass:FREQ`` command. + + Description: + - This command sets or queries the global high pass filter frequency for the + measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:HIGHPass:FREQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:FILTers:HIGHPass:FREQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:HIGHPass:FREQ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:HIGHPass:FREQ + - MEASUrement:FILTers:HIGHPass:FREQ? + ``` + + Info: + - ```` is the current high pass filter frequency. + """ + return self._freq + + @property + def spec(self) -> MeasurementFiltersHighpassSpec: + """Return the ``MEASUrement:FILTers:HIGHPass:SPEC`` command. + + Description: + - This command sets or queries the global high pass filter order for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:HIGHPass:SPEC?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:FILTers:HIGHPass:SPEC?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:HIGHPass:SPEC value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:HIGHPass:SPEC {NONE|FIRST|SECOND|THIRD} + - MEASUrement:FILTers:HIGHPass:SPEC? + ``` + + Info: + - ``NONE`` specifies no high pass filter. + - ``FIRST`` specifies a first order high pass filter. + - ``SECOND`` specifies a second order high pass filter. + - ``THIRD`` specifies a third order high pass filter. + """ + return self._spec + + +class MeasurementFiltersBlankingtime(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:FILTers:BLANKingtime`` command. + + Description: + - This command sets or queries the global filter blanking time. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:BLANKingtime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:BLANKingtime?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:BLANKingtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:BLANKingtime + - MEASUrement:FILTers:BLANKingtime? + ``` + + Info: + - ```` is the current filter blanking time. + """ + + +class MeasurementFilters(SCPICmdRead): + """The ``MEASUrement:FILTers`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.blankingtime``: The ``MEASUrement:FILTers:BLANKingtime`` command. + - ``.highpass``: The ``MEASUrement:FILTers:HIGHPass`` command tree. + - ``.lowpass``: The ``MEASUrement:FILTers:LOWPass`` command tree. + - ``.ramptime``: The ``MEASUrement:FILTers:RAMPtime`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._blankingtime = MeasurementFiltersBlankingtime( + device, f"{self._cmd_syntax}:BLANKingtime" + ) + self._highpass = MeasurementFiltersHighpass(device, f"{self._cmd_syntax}:HIGHPass") + self._lowpass = MeasurementFiltersLowpass(device, f"{self._cmd_syntax}:LOWPass") + self._ramptime = MeasurementFiltersRamptime(device, f"{self._cmd_syntax}:RAMPtime") + + @property + def blankingtime(self) -> MeasurementFiltersBlankingtime: + """Return the ``MEASUrement:FILTers:BLANKingtime`` command. + + Description: + - This command sets or queries the global filter blanking time. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:BLANKingtime?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:FILTers:BLANKingtime?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:BLANKingtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:BLANKingtime + - MEASUrement:FILTers:BLANKingtime? + ``` + + Info: + - ```` is the current filter blanking time. + """ + return self._blankingtime + + @property + def highpass(self) -> MeasurementFiltersHighpass: + """Return the ``MEASUrement:FILTers:HIGHPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:HIGHPass?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:HIGHPass?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.freq``: The ``MEASUrement:FILTers:HIGHPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:FILTers:HIGHPass:SPEC`` command. + """ + return self._highpass + + @property + def lowpass(self) -> MeasurementFiltersLowpass: + """Return the ``MEASUrement:FILTers:LOWPass`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:LOWPass?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:LOWPass?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.freq``: The ``MEASUrement:FILTers:LOWPass:FREQ`` command. + - ``.spec``: The ``MEASUrement:FILTers:LOWPass:SPEC`` command. + """ + return self._lowpass + + @property + def ramptime(self) -> MeasurementFiltersRamptime: + """Return the ``MEASUrement:FILTers:RAMPtime`` command. + + Description: + - This command sets or queries the global filter ramp time for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers:RAMPtime?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers:RAMPtime?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:FILTers:RAMPtime value`` command. + + SCPI Syntax: + ``` + - MEASUrement:FILTers:RAMPtime + - MEASUrement:FILTers:RAMPtime? + ``` + + Info: + - ```` is the current filter ramp time. + """ + return self._ramptime + + +class MeasurementEyerender(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:EYERENDER`` command. + + Description: + - This command sets or queries the state of high-performance eye rendering for an eye + diagram. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:EYERENDER?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:EYERENDER?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:EYERENDER value`` command. + + SCPI Syntax: + ``` + - MEASUrement:EYERENDER {ON|OFF|} + - MEASUrement:EYERENDER? + ``` + + Info: + - ```` = 0 disables high-performance eye rendering for an eye diagram; any other value + turns this feature on. + - ``OFF`` disables high-performance eye rendering for an eye diagram. + - ``ON`` enables high-performance eye rendering for an eye diagram. + """ + + +class MeasurementEdgeItem(ValidatedDynamicNumberCmd, SCPICmdWrite): + """The ``MEASUrement:EDGE`` command. + + Description: + - This command sets or queries the type of the edge for the measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:EDGE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:EDGE {RISE|FALL|BOTH} + ``` + + Info: + - ``FALL`` specifies the falling edge of the waveform. + - ``RISE`` specifies the rising edge of the waveform. + - ``BOTH`` specifies both a rising and falling edge of the waveform. + """ + + +class MeasurementDisplayunits(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:DISPLAYUnits`` command. + + Description: + - This command sets or queries the display units used for jitter summary measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:DISPLAYUnits?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:DISPLAYUnits?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:DISPLAYUnits value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:DISPLAYUnits {SEConds|UNITINtervals} + - MEASUrement:DISPLAYUnits? + ``` + + Info: + - ``SEConds`` set the display units to seconds. + - ``UNITINtervals`` set the display units to unit intervals. + """ + + +class MeasurementDiracmodel(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:DIRacmodel`` command. + + Description: + - This command sets or queries the dirac model used to separate random from deterministic + jitter for jitter measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:DIRacmodel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:DIRacmodel?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:DIRacmodel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:DIRacmodel {PCIExpress|FIBREchannel} + - MEASUrement:DIRacmodel? + ``` + + Info: + - ``PCIExpress`` specifies the PCIExpress dirac model. + - ``FIBREchannel`` specifies the FIBREchannel dirac model. + """ + + +class MeasurementDelete(SCPICmdWrite): + """The ``MEASUrement:DELete`` command. + + Description: + - The command deletes the specified measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:DELete value`` command. + + SCPI Syntax: + ``` + - MEASUrement:DELete + ``` + + Info: + - ```` is the measurement to delete. Argument is of the form 'MEAS' where + is ≥1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MeasurementDeleteall(SCPICmdWriteNoArguments): + """The ``MEASUrement:DELETEALL`` command. + + Description: + - This command deletes all the active instances of measurements defined in the scope + application. + + Usage: + - Using the ``.write()`` method will send the ``MEASUrement:DELETEALL`` command. + + SCPI Syntax: + ``` + - MEASUrement:DELETEALL + ``` + """ + + +class MeasurementClockrecoveryStandard(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:STAndard`` command. + + Description: + - This command sets or queries the global communications standard used when PLL clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:STAndard?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery:STAndard?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:STAndard value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:STAndard {CUSTom|ENET100|FW1394BS400B|FW1394BS800B|FW1394BS1600B|FBD1|FBD2|FBD3|FC133|FC266|FC531|FC1063|FC2125|FC4250|FC8500|ENET1000|IBA2500|IBA_GEN2|OC1|OC3|OC12|OC48|PCIE_GEN1|PCIE_GEN2|PCIE_GEN3|RIO125|RIO250|RIO3125|SAS15_NOSSC|SAS3_NOSSC|SAS6_NOSSC|SAS12_NOSSC|SAS15_SSC|SAS3_SSC|SAS6_SSC|SAS12_SSC|SATA_GEN1|SATA_GEN2|SATA_GEN3|USB3|XAUI|XAUI_GEN2} + - MEASUrement:CLOCKRecovery:STAndard? + ``` + + Info: + - ``CUSTom`` sets a custom standard. + - ``ENET100`` sets the standard to ENET100. + - ``FW1394BS400B`` sets the standard to FW1394BS400B. + - ``FW1394BS800B`` sets the standard to FW1394BS800B. + - ``FW1394BS1600B`` sets the standard to FW1394BS1600B. + - ``FBD1`` sets the standard to FBD1. + - ``FBD2`` sets the standard to FBD2. + - ``FBD3`` sets the standard to FBD3. + - ``FC133`` sets the standard to FC133. + - ``FC266`` sets the standard to FC266. + - ``FC531`` sets the standard to FC531. + - ``FC1063`` sets the standard to FC1063. + - ``FC2125`` sets the standard to FC2125. + - ``FC4250`` sets the standard to FC4250. + - ``FC8500`` sets the standard to FC8500. + - ``ENET1000`` sets the standard to ENET1000. + - ``IBA2500`` sets the standard to IBA2500. + - ``IBA_GEN2`` sets the standard to ``IBA_GEN2``. + - ``OC1`` sets the standard to OC1. + - ``OC3`` sets the standard to OC3. + - ``OC12`` sets the standard to OC12. + - ``OC48`` sets the standard to OC48. + - ``PCIE_GEN1`` sets the standard to ``PCIE_GEN1``. + - ``PCIE_GEN2`` sets the standard to ``PCIE_GEN2``. + - ``PCIE_GEN3`` sets the standard to ``PCIE_GEN3``. + - ``RIO125`` sets the standard to RIO125. + - ``RIO250`` sets the standard to RIO250. + - ``RIO3125`` sets the standard to RIO3125. + - ``SAS15_NOSSC`` sets the standard to ``SAS15_NOSSC``. + - ``SAS3_NOSSC`` sets the standard to ``SAS3_NOSSC``. + - ``SAS6_NOSSC`` sets the standard to ``SAS6_NOSSC``. + - ``SAS12_NOSSC`` sets the standard to ``SAS12_NOSSC``. + - ``SAS15_SSC`` sets the standard to ``SAS15_SSC``. + - ``SAS3_SSC`` sets the standard to ``SAS3_SSC``. + - ``SAS6_SSC`` sets the standard to ``SAS6_SSC``. + - ``SAS12_SSC`` sets the standard to ``SAS12_SSC``. + - ``SATA_GEN1`` sets the standard to ``SATA_GEN1``. + - ``SATA_GEN2`` sets the standard to ``SATA_GEN2``. + - ``SATA_GEN3`` sets the standard to ``SATA_GEN3``. + - ``USB3`` sets the standard to USB3. + - ``XAUI`` sets the standard to XAUI. + - ``XAUI_GEN2`` sets the standard to ``XAUI_GEN2``. + """ # noqa: E501 + + +class MeasurementClockrecoveryNominaloffsetSelectiontype(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype`` command. + + Description: + - This command sets or queries the global offset type used when explicit clock recovery is + used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype {AUTO|MANUAL} + - MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype? + ``` + + Info: + - ``AUTO`` sets the selection type to AUTO. + - ``MANUAL`` sets the selection type to MANUAL. + """ + + +class MeasurementClockrecoveryNominaloffset(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:NOMINALOFFset`` command. + + Description: + - This command sets or queries the global offset value used when explicit clock recovery is + used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:NOMINALOFFset?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:NOMINALOFFset + - MEASUrement:CLOCKRecovery:NOMINALOFFset? + ``` + + Info: + - ```` is the global clock offset. + + Properties: + - ``.selectiontype``: The ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._selectiontype = MeasurementClockrecoveryNominaloffsetSelectiontype( + device, f"{self._cmd_syntax}:SELECTIONtype" + ) + + @property + def selectiontype(self) -> MeasurementClockrecoveryNominaloffsetSelectiontype: + """Return the ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype`` command. + + Description: + - This command sets or queries the global offset type used when explicit clock recovery + is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype {AUTO|MANUAL} + - MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype? + ``` + + Info: + - ``AUTO`` sets the selection type to AUTO. + - ``MANUAL`` sets the selection type to MANUAL. + """ + return self._selectiontype + + +class MeasurementClockrecoveryModel(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:MODel`` command. + + Description: + - This command sets or queries the global phase locked loop (PLL) clock recovery model used + when PLL clock recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:MODel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery:MODel?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:CLOCKRecovery:MODel value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:MODel {TYPE} + - MEASUrement:CLOCKRecovery:MODel? + ``` + + Info: + - ``TYPE1`` PLL clock recovery uses PLL model type I. + - ``TYPE2`` PLL clock recovery uses PLL model type II. + """ + + +class MeasurementClockrecoveryMethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:METHod`` command. + + Description: + - This command sets or queries the global clock recovery method for the measurement. This + will affect measurements whose ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set + to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:METHod?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery:METHod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:METHod {PLL|CONSTANTCLOCK|EXPLICITCLOCK} + - MEASUrement:CLOCKRecovery:METHod? + ``` + + Info: + - ``PLL`` specifies using the phase locked loop. + - ``CONSTANTCLOCK`` specifies using a constant clock. + - ``EXPLICITCLOCK`` specifies using an explicit clock. + """ + + +class MeasurementClockrecoveryMeanautocalculate(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate`` command. + + Description: + - This command sets or queries how often the clock is calculated when constant clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:MEANAUTOCalculate {FIRST|EVERY} + - MEASUrement:CLOCKRecovery:MEANAUTOCalculate? + ``` + + Info: + - ``FIRST`` calculates the clock on the first acquisition. + - ``EVERY`` calculates the clock on every acquisition. + """ + + +class MeasurementClockrecoveryLoopbandwidth(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:LOOPBandwidth`` command. + + Description: + - This command sets or queries the global loop bandwidth used when PLL clock recovery is + used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:LOOPBandwidth?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:LOOPBandwidth?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:LOOPBandwidth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:LOOPBandwidth + - MEASUrement:CLOCKRecovery:LOOPBandwidth? + ``` + + Info: + - ```` is the global loop bandwidth. + """ + + +class MeasurementClockrecoveryJtfbandwidth(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:JTFBandwidth`` command. + + Description: + - This command sets or queries the global JTF bandwidth used when PLL clock recovery is used + for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:JTFBandwidth?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:JTFBandwidth?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:JTFBandwidth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:JTFBandwidth + - MEASUrement:CLOCKRecovery:JTFBandwidth? + ``` + + Info: + - ```` is the global clock recovery JTF bandwidth. + """ + + +class MeasurementClockrecoveryExplicitclockmode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe`` command. + + Description: + - This command sets or queries the global explicit clock mode used when explicit clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe {EDGE|PLL} + - MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe? + ``` + + Info: + - ``EDGE`` sets the clock mode to clock edge. + - ``PLL`` sets the clock mode to phase locked loop. + """ + + +class MeasurementClockrecoveryDatarate(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:DATARate`` command. + + Description: + - This command sets or queries the global nominal data bit rate used when nominal data rate + clock recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:DATARate?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery:DATARate?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:DATARate value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:DATARate + - MEASUrement:CLOCKRecovery:DATARate? + ``` + + Info: + - ```` is the global value for the Nominal data rate. + """ + + +class MeasurementClockrecoveryDatapath(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:DATAPath`` command. + + Description: + - This command sets or queries the global file containing the data pattern used when known + data pattern clock recovery is used for the measurement. This will affect measurements + whose ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:DATAPath?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery:DATAPath?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:DATAPath value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:DATAPath + - MEASUrement:CLOCKRecovery:DATAPath? + ``` + + Info: + - ```` is the path and filename, in quotes, of the file containing the data + pattern. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class MeasurementClockrecoveryDamping(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:DAMPing`` command. + + Description: + - This command sets or queries the global damping value used when PLL clock recovery is used + for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:DAMPing?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery:DAMPing?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:DAMPing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:DAMPing + - MEASUrement:CLOCKRecovery:DAMPing? + ``` + + Info: + - ```` is the global clock recovery damping value. + """ + + +class MeasurementClockrecoveryConstclockmode(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe`` command. + + Description: + - This command sets or queries the global constant clock mode used when constant clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:CONSTCLOCKMODe {MEAN|MEDian|FIXed} + - MEASUrement:CLOCKRecovery:CONSTCLOCKMODe? + ``` + + Info: + - ``MEAN`` sets the constant clock mode to MEAN. + - ``MEDian`` sets the constant clock mode to MEDian. + - ``FIXed`` sets the constant clock mode to FIXed. + """ + + +class MeasurementClockrecoveryClockmultiplier(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:CLOCKMultiplier`` command. + + Description: + - This command sets or queries the global clock multiplier used when explicit clock recovery + is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:CLOCKMultiplier?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKMultiplier?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKMultiplier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:CLOCKMultiplier + - MEASUrement:CLOCKRecovery:CLOCKMultiplier? + ``` + + Info: + - ```` is the global clock multiplier. + """ + + +class MeasurementClockrecoveryClockfrequency(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:CLOCKFrequency`` command. + + Description: + - This command sets or queries the global clock frequency used when fixed constant clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:CLOCKFrequency?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKFrequency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKFrequency value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:CLOCKFrequency + - MEASUrement:CLOCKRecovery:CLOCKFrequency? + ``` + + Info: + - ```` is the global clock frequency used with Constant Clock - Fixed clock recovery + method. + """ + + +class MeasurementClockrecoveryAdvancedMethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:ADVanced:METHod`` command. + + Description: + - This command sets or queries the global advanced clock recovery method. This will affect + measurements whose ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:ADVanced:METHod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:ADVanced:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:ADVanced:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:ADVanced:METHod {NONE|NOMinal|PATTern} + - MEASUrement:CLOCKRecovery:ADVanced:METHod? + ``` + + Info: + - ``NONE`` sets to use no advanced CRD method. + - ``NOMinal`` sets the advanced CRD method to Nominal Data Rate. + - ``PATTern`` sets the advanced CDR method to use a Known Data Pattern. + """ + + +class MeasurementClockrecoveryAdvanced(SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery:ADVanced`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:ADVanced?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery:ADVanced?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.method``: The ``MEASUrement:CLOCKRecovery:ADVanced:METHod`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._method = MeasurementClockrecoveryAdvancedMethod(device, f"{self._cmd_syntax}:METHod") + + @property + def method(self) -> MeasurementClockrecoveryAdvancedMethod: + """Return the ``MEASUrement:CLOCKRecovery:ADVanced:METHod`` command. + + Description: + - This command sets or queries the global advanced clock recovery method. This will + affect measurements whose ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to + 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:ADVanced:METHod?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:ADVanced:METHod?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:ADVanced:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:ADVanced:METHod {NONE|NOMinal|PATTern} + - MEASUrement:CLOCKRecovery:ADVanced:METHod? + ``` + + Info: + - ``NONE`` sets to use no advanced CRD method. + - ``NOMinal`` sets the advanced CRD method to Nominal Data Rate. + - ``PATTern`` sets the advanced CDR method to use a Known Data Pattern. + """ + return self._method + + +# pylint: disable=too-many-instance-attributes +class MeasurementClockrecovery(SCPICmdRead): + """The ``MEASUrement:CLOCKRecovery`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.advanced``: The ``MEASUrement:CLOCKRecovery:ADVanced`` command tree. + - ``.clockfrequency``: The ``MEASUrement:CLOCKRecovery:CLOCKFrequency`` command. + - ``.clockmultiplier``: The ``MEASUrement:CLOCKRecovery:CLOCKMultiplier`` command. + - ``.constclockmode``: The ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe`` command. + - ``.damping``: The ``MEASUrement:CLOCKRecovery:DAMPing`` command. + - ``.datapath``: The ``MEASUrement:CLOCKRecovery:DATAPath`` command. + - ``.datarate``: The ``MEASUrement:CLOCKRecovery:DATARate`` command. + - ``.explicitclockmode``: The ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe`` command. + - ``.jtfbandwidth``: The ``MEASUrement:CLOCKRecovery:JTFBandwidth`` command. + - ``.loopbandwidth``: The ``MEASUrement:CLOCKRecovery:LOOPBandwidth`` command. + - ``.meanautocalculate``: The ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate`` command. + - ``.method``: The ``MEASUrement:CLOCKRecovery:METHod`` command. + - ``.model``: The ``MEASUrement:CLOCKRecovery:MODel`` command. + - ``.nominaloffset``: The ``MEASUrement:CLOCKRecovery:NOMINALOFFset`` command. + - ``.standard``: The ``MEASUrement:CLOCKRecovery:STAndard`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._advanced = MeasurementClockrecoveryAdvanced(device, f"{self._cmd_syntax}:ADVanced") + self._clockfrequency = MeasurementClockrecoveryClockfrequency( + device, f"{self._cmd_syntax}:CLOCKFrequency" + ) + self._clockmultiplier = MeasurementClockrecoveryClockmultiplier( + device, f"{self._cmd_syntax}:CLOCKMultiplier" + ) + self._constclockmode = MeasurementClockrecoveryConstclockmode( + device, f"{self._cmd_syntax}:CONSTCLOCKMODe" + ) + self._damping = MeasurementClockrecoveryDamping(device, f"{self._cmd_syntax}:DAMPing") + self._datapath = MeasurementClockrecoveryDatapath(device, f"{self._cmd_syntax}:DATAPath") + self._datarate = MeasurementClockrecoveryDatarate(device, f"{self._cmd_syntax}:DATARate") + self._explicitclockmode = MeasurementClockrecoveryExplicitclockmode( + device, f"{self._cmd_syntax}:EXPLICITCLOCKMODe" + ) + self._jtfbandwidth = MeasurementClockrecoveryJtfbandwidth( + device, f"{self._cmd_syntax}:JTFBandwidth" + ) + self._loopbandwidth = MeasurementClockrecoveryLoopbandwidth( + device, f"{self._cmd_syntax}:LOOPBandwidth" + ) + self._meanautocalculate = MeasurementClockrecoveryMeanautocalculate( + device, f"{self._cmd_syntax}:MEANAUTOCalculate" + ) + self._method = MeasurementClockrecoveryMethod(device, f"{self._cmd_syntax}:METHod") + self._model = MeasurementClockrecoveryModel(device, f"{self._cmd_syntax}:MODel") + self._nominaloffset = MeasurementClockrecoveryNominaloffset( + device, f"{self._cmd_syntax}:NOMINALOFFset" + ) + self._standard = MeasurementClockrecoveryStandard(device, f"{self._cmd_syntax}:STAndard") + + @property + def advanced(self) -> MeasurementClockrecoveryAdvanced: + """Return the ``MEASUrement:CLOCKRecovery:ADVanced`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:ADVanced?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:ADVanced?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.method``: The ``MEASUrement:CLOCKRecovery:ADVanced:METHod`` command. + """ + return self._advanced + + @property + def clockfrequency(self) -> MeasurementClockrecoveryClockfrequency: + """Return the ``MEASUrement:CLOCKRecovery:CLOCKFrequency`` command. + + Description: + - This command sets or queries the global clock frequency used when fixed constant clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKFrequency?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKFrequency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKFrequency value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:CLOCKFrequency + - MEASUrement:CLOCKRecovery:CLOCKFrequency? + ``` + + Info: + - ```` is the global clock frequency used with Constant Clock - Fixed clock + recovery method. + """ + return self._clockfrequency + + @property + def clockmultiplier(self) -> MeasurementClockrecoveryClockmultiplier: + """Return the ``MEASUrement:CLOCKRecovery:CLOCKMultiplier`` command. + + Description: + - This command sets or queries the global clock multiplier used when explicit clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKMultiplier?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKMultiplier?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CLOCKMultiplier value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:CLOCKMultiplier + - MEASUrement:CLOCKRecovery:CLOCKMultiplier? + ``` + + Info: + - ```` is the global clock multiplier. + """ + return self._clockmultiplier + + @property + def constclockmode(self) -> MeasurementClockrecoveryConstclockmode: + """Return the ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe`` command. + + Description: + - This command sets or queries the global constant clock mode used when constant clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:CONSTCLOCKMODe {MEAN|MEDian|FIXed} + - MEASUrement:CLOCKRecovery:CONSTCLOCKMODe? + ``` + + Info: + - ``MEAN`` sets the constant clock mode to MEAN. + - ``MEDian`` sets the constant clock mode to MEDian. + - ``FIXed`` sets the constant clock mode to FIXed. + """ + return self._constclockmode + + @property + def damping(self) -> MeasurementClockrecoveryDamping: + """Return the ``MEASUrement:CLOCKRecovery:DAMPing`` command. + + Description: + - This command sets or queries the global damping value used when PLL clock recovery is + used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:DAMPing?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:DAMPing?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:DAMPing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:DAMPing + - MEASUrement:CLOCKRecovery:DAMPing? + ``` + + Info: + - ```` is the global clock recovery damping value. + """ + return self._damping + + @property + def datapath(self) -> MeasurementClockrecoveryDatapath: + """Return the ``MEASUrement:CLOCKRecovery:DATAPath`` command. + + Description: + - This command sets or queries the global file containing the data pattern used when + known data pattern clock recovery is used for the measurement. This will affect + measurements whose ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:DATAPath?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:DATAPath?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:DATAPath value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:DATAPath + - MEASUrement:CLOCKRecovery:DATAPath? + ``` + + Info: + - ```` is the path and filename, in quotes, of the file containing the data + pattern. + """ + return self._datapath + + @property + def datarate(self) -> MeasurementClockrecoveryDatarate: + """Return the ``MEASUrement:CLOCKRecovery:DATARate`` command. + + Description: + - This command sets or queries the global nominal data bit rate used when nominal data + rate clock recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:DATARate?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:DATARate?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:DATARate value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:DATARate + - MEASUrement:CLOCKRecovery:DATARate? + ``` + + Info: + - ```` is the global value for the Nominal data rate. + """ + return self._datarate + + @property + def explicitclockmode(self) -> MeasurementClockrecoveryExplicitclockmode: + """Return the ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe`` command. + + Description: + - This command sets or queries the global explicit clock mode used when explicit clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe {EDGE|PLL} + - MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe? + ``` + + Info: + - ``EDGE`` sets the clock mode to clock edge. + - ``PLL`` sets the clock mode to phase locked loop. + """ + return self._explicitclockmode + + @property + def jtfbandwidth(self) -> MeasurementClockrecoveryJtfbandwidth: + """Return the ``MEASUrement:CLOCKRecovery:JTFBandwidth`` command. + + Description: + - This command sets or queries the global JTF bandwidth used when PLL clock recovery is + used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:JTFBandwidth?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:JTFBandwidth?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:JTFBandwidth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:JTFBandwidth + - MEASUrement:CLOCKRecovery:JTFBandwidth? + ``` + + Info: + - ```` is the global clock recovery JTF bandwidth. + """ + return self._jtfbandwidth + + @property + def loopbandwidth(self) -> MeasurementClockrecoveryLoopbandwidth: + """Return the ``MEASUrement:CLOCKRecovery:LOOPBandwidth`` command. + + Description: + - This command sets or queries the global loop bandwidth used when PLL clock recovery is + used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:LOOPBandwidth?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:LOOPBandwidth?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:LOOPBandwidth value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:LOOPBandwidth + - MEASUrement:CLOCKRecovery:LOOPBandwidth? + ``` + + Info: + - ```` is the global loop bandwidth. + """ + return self._loopbandwidth + + @property + def meanautocalculate(self) -> MeasurementClockrecoveryMeanautocalculate: + """Return the ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate`` command. + + Description: + - This command sets or queries how often the clock is calculated when constant clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:MEANAUTOCalculate {FIRST|EVERY} + - MEASUrement:CLOCKRecovery:MEANAUTOCalculate? + ``` + + Info: + - ``FIRST`` calculates the clock on the first acquisition. + - ``EVERY`` calculates the clock on every acquisition. + """ + return self._meanautocalculate + + @property + def method(self) -> MeasurementClockrecoveryMethod: + """Return the ``MEASUrement:CLOCKRecovery:METHod`` command. + + Description: + - This command sets or queries the global clock recovery method for the measurement. + This will affect measurements whose ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag + is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:METHod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:METHod {PLL|CONSTANTCLOCK|EXPLICITCLOCK} + - MEASUrement:CLOCKRecovery:METHod? + ``` + + Info: + - ``PLL`` specifies using the phase locked loop. + - ``CONSTANTCLOCK`` specifies using a constant clock. + - ``EXPLICITCLOCK`` specifies using an explicit clock. + """ + return self._method + + @property + def model(self) -> MeasurementClockrecoveryModel: + """Return the ``MEASUrement:CLOCKRecovery:MODel`` command. + + Description: + - This command sets or queries the global phase locked loop (PLL) clock recovery model + used when PLL clock recovery is used for the measurement. This will affect + measurements whose ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:MODel?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery:MODel?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:MODel value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:MODel {TYPE} + - MEASUrement:CLOCKRecovery:MODel? + ``` + + Info: + - ``TYPE1`` PLL clock recovery uses PLL model type I. + - ``TYPE2`` PLL clock recovery uses PLL model type II. + """ + return self._model + + @property + def nominaloffset(self) -> MeasurementClockrecoveryNominaloffset: + """Return the ``MEASUrement:CLOCKRecovery:NOMINALOFFset`` command. + + Description: + - This command sets or queries the global offset value used when explicit clock recovery + is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:NOMINALOFFset value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:NOMINALOFFset + - MEASUrement:CLOCKRecovery:NOMINALOFFset? + ``` + + Info: + - ```` is the global clock offset. + + Sub-properties: + - ``.selectiontype``: The ``MEASUrement:CLOCKRecovery:NOMINALOFFset:SELECTIONtype`` + command. + """ + return self._nominaloffset + + @property + def standard(self) -> MeasurementClockrecoveryStandard: + """Return the ``MEASUrement:CLOCKRecovery:STAndard`` command. + + Description: + - This command sets or queries the global communications standard used when PLL clock + recovery is used for the measurement. This will affect measurements whose + ``:MEASUrement:MEAS:CLOCKRecovery:GLOBal`` flag is set to 1. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery:STAndard?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CLOCKRecovery:STAndard?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CLOCKRecovery:STAndard value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CLOCKRecovery:STAndard {CUSTom|ENET100|FW1394BS400B|FW1394BS800B|FW1394BS1600B|FBD1|FBD2|FBD3|FC133|FC266|FC531|FC1063|FC2125|FC4250|FC8500|ENET1000|IBA2500|IBA_GEN2|OC1|OC3|OC12|OC48|PCIE_GEN1|PCIE_GEN2|PCIE_GEN3|RIO125|RIO250|RIO3125|SAS15_NOSSC|SAS3_NOSSC|SAS6_NOSSC|SAS12_NOSSC|SAS15_SSC|SAS3_SSC|SAS6_SSC|SAS12_SSC|SATA_GEN1|SATA_GEN2|SATA_GEN3|USB3|XAUI|XAUI_GEN2} + - MEASUrement:CLOCKRecovery:STAndard? + ``` + + Info: + - ``CUSTom`` sets a custom standard. + - ``ENET100`` sets the standard to ENET100. + - ``FW1394BS400B`` sets the standard to FW1394BS400B. + - ``FW1394BS800B`` sets the standard to FW1394BS800B. + - ``FW1394BS1600B`` sets the standard to FW1394BS1600B. + - ``FBD1`` sets the standard to FBD1. + - ``FBD2`` sets the standard to FBD2. + - ``FBD3`` sets the standard to FBD3. + - ``FC133`` sets the standard to FC133. + - ``FC266`` sets the standard to FC266. + - ``FC531`` sets the standard to FC531. + - ``FC1063`` sets the standard to FC1063. + - ``FC2125`` sets the standard to FC2125. + - ``FC4250`` sets the standard to FC4250. + - ``FC8500`` sets the standard to FC8500. + - ``ENET1000`` sets the standard to ENET1000. + - ``IBA2500`` sets the standard to IBA2500. + - ``IBA_GEN2`` sets the standard to ``IBA_GEN2``. + - ``OC1`` sets the standard to OC1. + - ``OC3`` sets the standard to OC3. + - ``OC12`` sets the standard to OC12. + - ``OC48`` sets the standard to OC48. + - ``PCIE_GEN1`` sets the standard to ``PCIE_GEN1``. + - ``PCIE_GEN2`` sets the standard to ``PCIE_GEN2``. + - ``PCIE_GEN3`` sets the standard to ``PCIE_GEN3``. + - ``RIO125`` sets the standard to RIO125. + - ``RIO250`` sets the standard to RIO250. + - ``RIO3125`` sets the standard to RIO3125. + - ``SAS15_NOSSC`` sets the standard to ``SAS15_NOSSC``. + - ``SAS3_NOSSC`` sets the standard to ``SAS3_NOSSC``. + - ``SAS6_NOSSC`` sets the standard to ``SAS6_NOSSC``. + - ``SAS12_NOSSC`` sets the standard to ``SAS12_NOSSC``. + - ``SAS15_SSC`` sets the standard to ``SAS15_SSC``. + - ``SAS3_SSC`` sets the standard to ``SAS3_SSC``. + - ``SAS6_SSC`` sets the standard to ``SAS6_SSC``. + - ``SAS12_SSC`` sets the standard to ``SAS12_SSC``. + - ``SATA_GEN1`` sets the standard to ``SATA_GEN1``. + - ``SATA_GEN2`` sets the standard to ``SATA_GEN2``. + - ``SATA_GEN3`` sets the standard to ``SATA_GEN3``. + - ``USB3`` sets the standard to USB3. + - ``XAUI`` sets the standard to XAUI. + - ``XAUI_GEN2`` sets the standard to ``XAUI_GEN2``. + """ # noqa: E501 + return self._standard + + +class MeasurementChannelReflevelsPercentType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:PERCent:TYPE`` command. + + Description: + - This command specifies or queries the reference level percent type for the measurement. + The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:PERCent:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:CH:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``TENNinety`` specifies reference levels at the 10 and 90% levels. + - ``TWENtyeighty`` specifies reference levels at the 20 and 80% levels. + - ``CUSTom`` specifies custom reference levels. + """ + + +class MeasurementChannelReflevelsPercentRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the rising edge when the measurement + ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:RISEMid + - MEASUrement:CH:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + + +class MeasurementChannelReflevelsPercentRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the low reference level of the rising edge when the measurement + ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:RISELow + - MEASUrement:CH:REFLevels:PERCent:RISELow? + ``` + + Info: + - ```` is the percentage (where 100% is equal to TOP) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + + +class MeasurementChannelReflevelsPercentRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the rising edge when the measurement + ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:RISEHigh + - MEASUrement:CH:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ```` is the percentage (where 100% is equal to TOP) used to calculate the high + reference level when the measurement's Ref level method is set to Percent. + """ + + +class MeasurementChannelReflevelsPercentHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 100% is equal to MAX and 0% is equal to + MIN) used to calculate the hysteresis of the reference level when the measurement ref + level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:HYSTeresis + - MEASUrement:CH:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ```` is the hysteresis value used for the autoset. + """ + + +class MeasurementChannelReflevelsPercentFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the mid reference level of the falling edge when the source ref + level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:FALLMid + - MEASUrement:CH:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + + +class MeasurementChannelReflevelsPercentFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the low reference level of the falling edge when the source ref + level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:FALLLow + - MEASUrement:CH:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ```` is the percentage (where 100% is equal to TOP) used to calculate the low + reference level when the measurement Ref level method is set to Percent. + """ + + +class MeasurementChannelReflevelsPercentFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal to + BASE) used to calculate the high reference level of the falling edge when the source ref + level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:FALLHigh + - MEASUrement:CH:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ```` is the percentage (where 100% is equal to TOP) used to calculate the high + reference level when the measurement's Ref level method is set to Percent. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementChannelReflevelsPercent(SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:PERCent?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CH:REFLevels:PERCent?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.fallhigh``: The ``MEASUrement:CH:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:CH:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:CH:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:CH:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:CH:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:CH:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:CH:REFLevels:PERCent:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementChannelReflevelsPercentFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = MeasurementChannelReflevelsPercentFalllow( + device, f"{self._cmd_syntax}:FALLLow" + ) + self._fallmid = MeasurementChannelReflevelsPercentFallmid( + device, f"{self._cmd_syntax}:FALLMid" + ) + self._hysteresis = MeasurementChannelReflevelsPercentHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementChannelReflevelsPercentRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = MeasurementChannelReflevelsPercentRiselow( + device, f"{self._cmd_syntax}:RISELow" + ) + self._risemid = MeasurementChannelReflevelsPercentRisemid( + device, f"{self._cmd_syntax}:RISEMid" + ) + self._type = MeasurementChannelReflevelsPercentType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> MeasurementChannelReflevelsPercentFallhigh: + """Return the ``MEASUrement:CH:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the falling edge when the + source ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:FALLHigh + - MEASUrement:CH:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ```` is the percentage (where 100% is equal to TOP) used to calculate the high + reference level when the measurement's Ref level method is set to Percent. + """ + return self._fallhigh + + @property + def falllow(self) -> MeasurementChannelReflevelsPercentFalllow: + """Return the ``MEASUrement:CH:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the low reference level of the falling edge when the source + ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:FALLLow + - MEASUrement:CH:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ```` is the percentage (where 100% is equal to TOP) used to calculate the low + reference level when the measurement Ref level method is set to Percent. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementChannelReflevelsPercentFallmid: + """Return the ``MEASUrement:CH:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the falling edge when the source + ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:FALLMid + - MEASUrement:CH:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementChannelReflevelsPercentHysteresis: + """Return the ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the percentage (where 100% is equal to MAX and 0% is + equal to MIN) used to calculate the hysteresis of the reference level when the + measurement ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:HYSTeresis + - MEASUrement:CH:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ```` is the hysteresis value used for the autoset. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementChannelReflevelsPercentRisehigh: + """Return the ``MEASUrement:CH:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the high reference level of the rising edge when the + measurement ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:RISEHigh + - MEASUrement:CH:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ```` is the percentage (where 100% is equal to TOP) used to calculate the high + reference level when the measurement's Ref level method is set to Percent. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementChannelReflevelsPercentRiselow: + """Return the ``MEASUrement:CH:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the low reference level of the rising edge when the + measurement ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISELow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:RISELow + - MEASUrement:CH:REFLevels:PERCent:RISELow? + ``` + + Info: + - ```` is the percentage (where 100% is equal to TOP) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementChannelReflevelsPercentRisemid: + """Return the ``MEASUrement:CH:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the percentage (where 99% is equal to TOP and 1% is equal + to BASE) used to calculate the mid reference level of the rising edge when the + measurement ref level method is set to percent. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:RISEMid + - MEASUrement:CH:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ```` is the percentage (where 50% is equal to MID) used to calculate the mid + reference level when the measurement's Ref level method is set to Percent. + """ + return self._risemid + + @property + def type(self) -> MeasurementChannelReflevelsPercentType: + """Return the ``MEASUrement:CH:REFLevels:PERCent:TYPE`` command. + + Description: + - This command specifies or queries the reference level percent type for the + measurement. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - MEASUrement:CH:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``TENNinety`` specifies reference levels at the 10 and 90% levels. + - ``TWENtyeighty`` specifies reference levels at the 20 and 80% levels. + - ``CUSTom`` specifies custom reference levels. + """ + return self._type + + +class MeasurementChannelReflevelsMethod(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:METHod?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CH:REFLevels:METHod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:CH:REFLevels:METHod? + ``` + + Info: + - ``PERCent`` specifies percent reference level units. + - ``ABSolute`` specifies absolute reference level units. + """ + + +class MeasurementChannelReflevelsBasetop(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE, used to + calculate reference levels for the measurement. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:BASETop?`` + query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CH:REFLevels:BASETop?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:BASETop value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:CH:REFLevels:BASETop? + ``` + + Info: + - ``AUTO`` automatically chooses a reference level method. + - ``MINMax`` specifies that reference levels are relative to the measurement MIN and MAX. + - ``MEANhistogram`` specifies that reference levels are relative to the histogram mean BASE + and TOP. + - ``MODEhistogram`` specifies that reference levels are relative to the histogram mode BASE + and TOP. + - ``EYEhistogram`` specifies that reverence levels are relative to the eye histogram BASE + and TOP. + """ + + +class MeasurementChannelReflevelsAbsoluteType(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the source. The channel number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:ABSolute:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:CH:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``SAME`` specifies that the absolute reference levels for the specified measurement + channel are the same. + - ``UNIQue`` specifies that the absolute reference levels for the specified measurement + channel are not the same. + """ + + +class MeasurementChannelReflevelsAbsoluteRisemid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising edge + when the source ref level method is set to absolute. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:RISEMid + - MEASUrement:CH:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ```` is the mid reference level of the rising edge when the source ref level method + is set to absolute. + """ + + +class MeasurementChannelReflevelsAbsoluteRiselow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising edge + when the source ref level method is set to absolute. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:RISELow + - MEASUrement:CH:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ```` is the low reference level of the rising edge when the source ref level method + is set to absolute. + """ + + +class MeasurementChannelReflevelsAbsoluteRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising edge + when the source ref level method is set to absolute. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:RISEHigh + - MEASUrement:CH:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ```` is the high reference level of the rising edge when the source ref level method + is set to absolute. + """ + + +class MeasurementChannelReflevelsAbsoluteHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when the + source ref level method is set to absolute. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:HYSTeresis + - MEASUrement:CH:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ```` is the hysteresis value used for autoset. + """ + + +class MeasurementChannelReflevelsAbsoluteFallmid(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling edge + when the source ref level method is set to absolute. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:FALLMid + - MEASUrement:CH:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ```` is the mid reference level used to calculate the mid reference level when the + measurement's Ref level method is set to Absolute. + """ + + +class MeasurementChannelReflevelsAbsoluteFalllow(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling edge + when the source ref level method is set to absolute. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:FALLLow + - MEASUrement:CH:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + + +class MeasurementChannelReflevelsAbsoluteFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the source ref level method is set to absolute. The channel number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:FALLHigh + - MEASUrement:CH:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + + +# pylint: disable=too-many-instance-attributes +class MeasurementChannelReflevelsAbsolute(SCPICmdRead): + """The ``MEASUrement:CH:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:ABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.fallhigh``: The ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:CH:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:CH:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:CH:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:CH:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:CH:REFLevels:ABSolute:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = MeasurementChannelReflevelsAbsoluteFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = MeasurementChannelReflevelsAbsoluteFalllow( + device, f"{self._cmd_syntax}:FALLLow" + ) + self._fallmid = MeasurementChannelReflevelsAbsoluteFallmid( + device, f"{self._cmd_syntax}:FALLMid" + ) + self._hysteresis = MeasurementChannelReflevelsAbsoluteHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = MeasurementChannelReflevelsAbsoluteRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = MeasurementChannelReflevelsAbsoluteRiselow( + device, f"{self._cmd_syntax}:RISELow" + ) + self._risemid = MeasurementChannelReflevelsAbsoluteRisemid( + device, f"{self._cmd_syntax}:RISEMid" + ) + self._type = MeasurementChannelReflevelsAbsoluteType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> MeasurementChannelReflevelsAbsoluteFallhigh: + """Return the ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the falling + edge when the source ref level method is set to absolute. The channel number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:FALLHigh + - MEASUrement:CH:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + return self._fallhigh + + @property + def falllow(self) -> MeasurementChannelReflevelsAbsoluteFalllow: + """Return the ``MEASUrement:CH:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the falling + edge when the source ref level method is set to absolute. The channel number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:FALLLow + - MEASUrement:CH:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ```` is the high reference level, and is the zero percent level when + ``MEASUrement:IMMed:REFLevel:METHod`` is set to Absolute. + """ + return self._falllow + + @property + def fallmid(self) -> MeasurementChannelReflevelsAbsoluteFallmid: + """Return the ``MEASUrement:CH:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the falling + edge when the source ref level method is set to absolute. The channel number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:FALLMid + - MEASUrement:CH:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ```` is the mid reference level used to calculate the mid reference level when + the measurement's Ref level method is set to Absolute. + """ + return self._fallmid + + @property + def hysteresis(self) -> MeasurementChannelReflevelsAbsoluteHysteresis: + """Return the ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the value of the hysteresis of the reference level when + the source ref level method is set to absolute. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:HYSTeresis + - MEASUrement:CH:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ```` is the hysteresis value used for autoset. + """ + return self._hysteresis + + @property + def risehigh(self) -> MeasurementChannelReflevelsAbsoluteRisehigh: + """Return the ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the value used as the high reference level of the rising + edge when the source ref level method is set to absolute. The channel number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:RISEHigh + - MEASUrement:CH:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ```` is the high reference level of the rising edge when the source ref level + method is set to absolute. + """ + return self._risehigh + + @property + def riselow(self) -> MeasurementChannelReflevelsAbsoluteRiselow: + """Return the ``MEASUrement:CH:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the value used as the low reference level of the rising + edge when the source ref level method is set to absolute. The channel number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:RISELow + - MEASUrement:CH:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ```` is the low reference level of the rising edge when the source ref level + method is set to absolute. + """ + return self._riselow + + @property + def risemid(self) -> MeasurementChannelReflevelsAbsoluteRisemid: + """Return the ``MEASUrement:CH:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the value used as the mid reference level of the rising + edge when the source ref level method is set to absolute. The channel number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:RISEMid + - MEASUrement:CH:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ```` is the mid reference level of the rising edge when the source ref level + method is set to absolute. + """ + return self._risemid + + @property + def type(self) -> MeasurementChannelReflevelsAbsoluteType: + """Return the ``MEASUrement:CH:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the reference level type for the source. The channel + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:TYPE?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - MEASUrement:CH:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``SAME`` specifies that the absolute reference levels for the specified measurement + channel are the same. + - ``UNIQue`` specifies that the absolute reference levels for the specified measurement + channel are not the same. + """ + return self._type + + +class MeasurementChannelReflevels(SCPICmdRead): + """The ``MEASUrement:CH:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CH:REFLevels?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.absolute``: The ``MEASUrement:CH:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:CH:REFLevels:BASETop`` command. + - ``.method``: The ``MEASUrement:CH:REFLevels:METHod`` command. + - ``.percent``: The ``MEASUrement:CH:REFLevels:PERCent`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._absolute = MeasurementChannelReflevelsAbsolute(device, f"{self._cmd_syntax}:ABSolute") + self._basetop = MeasurementChannelReflevelsBasetop(device, f"{self._cmd_syntax}:BASETop") + self._method = MeasurementChannelReflevelsMethod(device, f"{self._cmd_syntax}:METHod") + self._percent = MeasurementChannelReflevelsPercent(device, f"{self._cmd_syntax}:PERCent") + + @property + def absolute(self) -> MeasurementChannelReflevelsAbsolute: + """Return the ``MEASUrement:CH:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:ABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:CH:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:CH:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:CH:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:CH:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:CH:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:CH:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``MEASUrement:CH:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``MEASUrement:CH:REFLevels:ABSolute:TYPE`` command. + """ + return self._absolute + + @property + def basetop(self) -> MeasurementChannelReflevelsBasetop: + """Return the ``MEASUrement:CH:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the method used to calculate the TOP and BASE, used to + calculate reference levels for the measurement. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:BASETop?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:BASETop?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:BASETop value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - MEASUrement:CH:REFLevels:BASETop? + ``` + + Info: + - ``AUTO`` automatically chooses a reference level method. + - ``MINMax`` specifies that reference levels are relative to the measurement MIN and + MAX. + - ``MEANhistogram`` specifies that reference levels are relative to the histogram mean + BASE and TOP. + - ``MODEhistogram`` specifies that reference levels are relative to the histogram mode + BASE and TOP. + - ``EYEhistogram`` specifies that reverence levels are relative to the eye histogram + BASE and TOP. + """ # noqa: E501 + return self._basetop + + @property + def method(self) -> MeasurementChannelReflevelsMethod: + """Return the ``MEASUrement:CH:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method used to calculate reference levels for the + measurement. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:METHod?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:METHod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``MEASUrement:CH:REFLevels:METHod value`` command. + + SCPI Syntax: + ``` + - MEASUrement:CH:REFLevels:METHod {PERCent|ABSolute} + - MEASUrement:CH:REFLevels:METHod? + ``` + + Info: + - ``PERCent`` specifies percent reference level units. + - ``ABSolute`` specifies absolute reference level units. + """ + return self._method + + @property + def percent(self) -> MeasurementChannelReflevelsPercent: + """Return the ``MEASUrement:CH:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels:PERCent?`` + query. + - Using the ``.verify(value)`` method will send the + ``MEASUrement:CH:REFLevels:PERCent?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.fallhigh``: The ``MEASUrement:CH:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``MEASUrement:CH:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``MEASUrement:CH:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``MEASUrement:CH:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``MEASUrement:CH:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``MEASUrement:CH:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``MEASUrement:CH:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``MEASUrement:CH:REFLevels:PERCent:TYPE`` command. + """ + return self._percent + + +class MeasurementChannel(ValidatedChannel, SCPICmdRead): + """The ``MEASUrement:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CH?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.reflevels``: The ``MEASUrement:CH:REFLevels`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._reflevels = MeasurementChannelReflevels(device, f"{self._cmd_syntax}:REFLevels") + + @property + def reflevels(self) -> MeasurementChannelReflevels: + """Return the ``MEASUrement:CH:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CH:REFLevels?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.absolute``: The ``MEASUrement:CH:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:CH:REFLevels:BASETop`` command. + - ``.method``: The ``MEASUrement:CH:REFLevels:METHod`` command. + - ``.percent``: The ``MEASUrement:CH:REFLevels:PERCent`` command tree. + """ + return self._reflevels + + +class MeasurementAutoset(SCPICmdWrite): + """The ``MEASUrement:AUTOset`` command. + + Description: + - This command performs an analysis jitter autoset. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:AUTOset value`` command. + + SCPI Syntax: + ``` + - MEASUrement:AUTOset {EXECute|THREEPHASEAUTOset|WBGPREset|DPMAutoset|DPMPReset} + ``` + + Info: + - ``EXECute`` performs an analysis jitter autoset. + - ``THREEPHASEAUTOset`` performs an IMDA 3 phase autoset. + - ``WBGPREset`` performs a measurement specific preset. Requires a WBG-DPT license. + - ``DPMAutoset`` performs a power rail autoset. Requires option 5-DPM (5 Series MSO + instruments) or 6-DPM (6 Series MSO instrument). + - ``DPMPReset`` performs a power rail preset. Requires option 5-DPM (5 Series MSO + instruments) or 6-DPM (6 Series MSO instrument). + """ + + +class MeasurementAnnotate(SCPICmdWrite, SCPICmdRead): + """The ``MEASUrement:ANNOTate`` command. + + Description: + - This command sets or queries the annotation state for measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:ANNOTate?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:ANNOTate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:ANNOTate value`` command. + + SCPI Syntax: + ``` + - MEASUrement:ANNOTate {OFF|AUTO} + - MEASUrement:ANNOTate? + ``` + + Info: + - ``OFF`` turns off measurement annotations. + - ``AUTO`` turns on visible measurement annotations. + """ + + +class MeasurementAddnew(SCPICmdWrite): + """The ``MEASUrement:ADDNew`` command. + + Description: + - This command adds the specified measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:ADDNew value`` command. + + SCPI Syntax: + ``` + - MEASUrement:ADDNew 'QString' + ``` + + Info: + - ``'QString'`` is the measurement to add. The argument is of the form 'MEAS' where NR1 + ≥ 1. + """ + + +class MeasurementAddmeas(SCPICmdWrite): + """The ``MEASUrement:ADDMEAS`` command. + + Description: + - This command adds a measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:ADDMEAS value`` command. + + SCPI Syntax: + ``` + - MEASUrement:ADDMEAS {ACCOMMONMODE|ACRMS|AMPlITUDE|AREA|BASE|BITAMPLITUDE|BITHIGH|BITLOW|BURSTWIDTH|COMMONMODE|CCJITTER|DATARATE|DCD|DDJ|DDRAOS|DDRAOSPERTCK|DDRAOSPERUI|DDRAUS|DDRAUSPERTCK|DDRAUSPERUI|DDRHOLDDIFF|DDRSETUPDIFF|DDRTCHABS|DDRTCHAVERAGE|DDRTCKAVERAGE|DDRTCLABS|DDRTCLAVERAGE|DDRTERRMN|DDRTERRN|DDRTJITCC|DDRTJITDUTY|DDRTJITPER|DDRTPST|DDRTRPRE|DDRTWPRE|DDRVIXAC|DDRTDQSCK|DELAY|DJ|DJDIRAC|EYEHIGH|EYELOW|FALLSLEWRATE|FALLTIME|FREQUENCY|F2|F4|F8|HEIGHT|HEIGHTBER|HIGH|HIGHTIME|HOLD|IMDAPOWERQUALITY|IMDAHARMONICS|IMDAINPUTVOLTAGE|IMDAINPUTCURRENT|IMDAINPUTPOWER|IMDAPHASORDIAGRAM|IMDAEFFICIENCY|IMDALINERIPPLE|IMDASWITCHRIPPLE|IMDADQ0|JITTERSUMMARY|J2|J9|LOW|LOWTIME|MAXIMUM|MEAN|MINIMUM|NDUty|NOVERSHOOT|NPERIOD|NPJ|NWIDTTH|PDUTY|PERIOD|PHASE|PHASENOISE|PJ|PK2Pk|POVERSHOOT|PWIDTH|QFACTOR|RISESLEWRATE|RISETIME|RJ|RJDIRAC|RMS|SETUP|SKEW|SRJ|SSCFREQDEV|SSCMODRATE|TIE|TIMEOUTSIDELEVEL|TIMETOMAX|TIMETOMIN|TJBER|TNTRATIO|TOP|UNITINTERVAL|VDIFFXOVR|WIDTH|WIDTHBER} + ``` + + Info: + - ``ACCOMMONMODE`` AC Common Mode (Pk-Pk) is the peak-to-peak of the common mode voltage of + two sources. This measurement is made across the entire record. This measurement requires + the DJA option and is not available on a 4 Series MSO instrument. + - ``ACRMS`` (AC RMS) is the true Root Mean Square of the data points, about the Mean. This + measurement can be made across the entire record, or on each cycle in the record. + - ``AMPLITUDE`` is the difference between the Top value and the Base value. This measurement + can be made across the entire record, or on each cycle in the record. + - ``Amplitude = High - Low`` + - ``AREA`` is the area under the curve, calculated by integrating the data points. The area + measured above ground is positive. The area measured below ground is negative. This + measurement can be made across the entire record, or on each cycle in the record. + - ``BASE`` is the most common data value below the midpoint of the waveform. This + measurement can be made across the entire record, or on each cycle in the record. + - ``BITAMPLITUDE`` (Bit Amplitude) is the difference between the amplitudes of the 1 bit and + the 0 bit surrounding a transition. The amplitude is measured over a user specified + portion at the center of the recovered unit interval. This measurement is made on each + transition bit in the record (Mean) or across the entire record (Mode). This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BITHIGH`` (Bit High) is the amplitude of a 1 bit. The amplitude is measured over a user + specified portion at the center of the recovered unit interval. This measurement is made + on each high bit in the record (Mean) or across the entire record (Mode). This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BITLOW`` (Bit Low) is the amplitude of a 0 bit. The amplitude is measured over a user + specified portion at the center of the recovered unit interval. This measurement is made + on each high bit in the record (Mean) or across the entire record (Mode). This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BURSTWIDTH`` (Burst Width) is the duration of a series of adjacent crossings of the Mid + reference level (RM). Bursts are separated by a user-defined idle time (tI). This + measurement is made on each burst in the record. + - ``COMMONMODE`` (DC Common Mode) is the arithmetic mean of the common mode voltage of two + sources. This measurement is made across the entire record. This measurement requires the + DJA option and is not available on a 4 Series MSO instrument. + - ``CCJITTER`` (Cycle-to-Cycle jitter) measures how much the clock period changes between + any two adjacent cycles. Cycle-to-Cycle jitter is measured by applying a first order + difference operation to the period jitter. + - ``DATARATE`` (Data Rate) is the reciprocal of Unit Interval. This measurement is made on + each bit in the record. + - ``DCD`` (duty cycle distortion) is the peak-to-peak amplitude of the component of the + deterministic jitter correlated with the signal polarity. This measurement is made across + the entire record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``DDJ`` (data dependent jitter) is the peak-to-peak amplitude of the component of the + deterministic jitter correlated with the data pattern in the waveform. This measurement is + made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``DDRAOS`` (area above signal) is the total area of the signal above a specified reference + level. This measurement is made across the entire record. + - ``DDRAOSPERTCK`` (area over signal for tCK events) is the total area of the signal above a + specified reference level calculated over consecutive tCK intervals. It is applicable to + clock and address/command waveforms. + - ``DDRAOSPERUI`` (area over signal for UI events) is the total area of the signal above a + specified reference level calculated over consecutive unit intervals. It is applicable to + data and data strobe waveforms. + - ``DDRAUS`` (area under signal) is the total area of the signal below a specified reference + level. This measurement is made across the entire record. + - ``DDRAUSPERTCK`` (area under signal for tCK events) is the total area of the signal below + a specified reference level calculated over consecutive tCK intervals. It is applicable to + clock and address/command waveforms. + - ``DDRAUSPERUI`` (area under signal for UI events) is the total area of the signal below a + specified reference level calculated over consecutive unit intervals. It is applicable to + data and data strobe waveforms. + - ``DDRHOLDDIFF`` (hold difference) is the elapsed time between the specified edge of a + single-ended clock waveform and the specified edge of a differential data waveform. The + measurement uses the closest respective waveform edges that fall within the range + limits.This measurement is made across the entire record. + - ``DDRSETUPDIFF`` (setup difference) is the elapsed time between the specified edge of a + single-ended clock waveform and when the specified edge of a differential data waveform + crosses a specified level. The measurement uses the closest respective waveform edges that + fall within the range limits. This measurement is made across the entire record. + - ``DDRTCHABS`` (absolute high pulse width) is the absolute value of the high pulse width as + measured from one rising edge to the next falling edge. + - ``DDRTCHAVERAGE`` (average high pulse width) is the average value of the high pulse width + as measured from one rising edge to the next falling edge, across 200 consecutive cycles. + This measurement is made across the entire record. + - ``DDRTCKAVERAGE`` (average clock period) is the average clock period calculated from + rising edge to rising edge, across 200 consecutive cycles. This measurement is made across + the entire record. + - ``DDRTCLABS`` (absolute low pulse width) is the absolute value of the low pulse width as + measured from a falling edge to the next rising edge. This measurement is made across the + entire record. + - ``DDRTCLAVERAGE`` (average low pulse width) is the average value of the low pulse width as + measured from one falling edge to the next rising edge, across 200 consecutive cycles. + - ``DDRTERRMN`` (cumulative error) is the cumulative error across multiple consecutive + defined cycles from tCK(avg). + - ``DDRTERRN`` (cumulative error) is the cumulative error across specified consecutive + cycles from tCK(avg). In other words, this measures the time difference between the sum of + the clock period from a 200 cycle window and n times tCK(avg). + - ``DDRTJITCC`` (cycle to cycle jitter period) is the absolute difference in clock period + between two consecutive clock cycles. This measurement is made across the entire record. + - ``DDRTJITDUTY`` (half period jitter) is the largest elapsed time between tCH and tCH(avg), + and tCL and tCL(avg), over 200 consecutive cycles. + - ``DDRTJITPER`` (clock period jitter) is the largest deviation of any tCK signal from + tCK(avg). This measurement is made across the entire record. + - ``DDRTPST`` (read/write burst postamble) is the width of the Read or Write burst + postamble, measured from the last falling edge of the mid reference level to the start of + an undriven state. This measurement is made across the entire record. + - ``DDRTRPRE`` (read burst preamble) is the width of the Read burst preamble, measured from + exiting tristate levels to the first driving edge of the differential strobe. This + measurement is made across the entire record. + - ``DDRTWPRE`` is the width of the Write burst preamble, measured from exiting tristate + levels to the first driving edge of the differential strobe. This measurement is made + across the entire record. + - ``DDRVIXAC`` is the differential input cross-point voltage measured from the true state + transition (and it's compliment) to a specified reference level, measured on a + single-ended signal. + - ``DDRTDQSCK`` is the strobe output access time, measured between the rising edge of the + clock and before or after the differential strobe Read preamble time. Signal edges are + determined by the mid-ref threshold level settings. + - ``DELay`` is the time between the specified Mid reference level (RM) crossing on one + source to a specified Mid reference level (RM) crossing on a second source. This + measurement is made on the first occurrence in the record. + - ``DJ`` (deterministic jitter) is the peak-to-peak amplitude of all timing errors that + exhibit deterministic behavior. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``DJDIRAC`` (dual-dirac deterministic jitter) is deterministic jitter based on a + simplifying assumption that the histogram of all deterministic jitter can be modeled as a + pair of equal-magnitude Dirac functions. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``EYEHIGH`` (Eye High) is the amplitude of a high (1) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each high bit in + the record. This measurement requires the DJA option and is not available on a 4 Series + MSO instrument. + - ``EYELOW`` (Eye Low) is the amplitude of a low (0) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each low bit in + the record. This measurement requires the DJA option and is not available on a 4 Series + MSO instrument. + - ``FALLSLEWRATE`` (Falling Slew Rate) is the rate of change in voltage as an edge + transitions from the Top reference level (RT) to the Bottom reference level (RB). This + measurement is made on each cycle in the record. + - ``FALLTIME`` (Fall Time) is the time required for an edge to fall from the Top reference + level (RT) to the Base reference level (RB). This measurement is made on each cycle in the + record. + - ``FREQuency`` is the reciprocal of Period. This measurement is made on each cycle in the + record. + - ``F2`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 2. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``F4`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 4. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``F8`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 8. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``HIGH`` (Eye High) is the amplitude of a high (1) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each high bit in + the record. + - ``HEIGHT`` (Eye Height) is the minimum vertical eye opening at the center of the recovered + unit interval. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``HEIGHTBER`` (Eye Height@BER) is the predicted vertical eye opening that will be violated + with a probability equal to the bit error rate. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``HIGHTIME`` (High Time) is the time the signal remains above the Top reference level + (RT). This measurement is made on each cycle in the record. + - ``HOLD`` (Hold Time) is the time between the specified Mid reference level crossing (RM) + on the Clock source to the closest specified Mid reference level (RM) crossing on the Data + source. This measurement is made on each specified Clock edge in the record. + - ``IMDAPOWERQUALITY`` measures the operating Frequency, RMS values of the voltage and + current, Crest Factors of the voltage and current, Real Power, Reactive Power, Apparent + Power, Power Factor, and Phase Angle of the AC signal. Plots the Phasor diagram. This + measurement requires the IMDA option. + - ``IMDAHARMONICS`` measures the signal amplitudes at the fundamental line frequency and its + harmonics. Measures the RMS amplitude and Total Harmonic Distortion of the signal. Plots + the Harmonics Bar Graph. This measurement requires the IMDA option. + - ``IMDAINPUTVOLTAGE`` measures the RMS value of the input voltage for all phases based on + the configured wiring. This measurement requires the IMDA option. + - ``IMDAINPUTCURRENT`` measures the RMS value of the input current for all phases based on + the configured wiring. This measurement requires the IMDA option. + - ``IMDAINPUTPOWER`` measures the RMS and peak-to-peak values of the AC signal. This + measurement requires the IMDA option. + - ``IMDAPHASORDIAGRAM`` plots Vrms and Irms and phase angles between voltage(s) and + current(s) per winding pair. This measurement requires the IMDA option. + - ``IMDAEFFICIENCY`` measures the ratio of output power to input power per phase for a AC + input and Drive output. Measures the total efficiency of the system. This measurement + requires the IMDA option. + - ``IMDALINERIPPLE`` measures the RMS value of the input power for all phases based on the + configured wiring. Measures the True / Apparent / Reactive Power for all the phases. This + measurement requires the IMDA option. + - ``IMDASWITCHRIPPLEJITTERSUMMARY`` measures the RMS and peak-to-peak values of the + switching signal. This measurement requires the IMDA option. + - ``IMDADQ0`` measures the DQ0 values of the phasor plot. This measurement requires options + IMDA and IMDA-DQ0. + - ``JITTERSUMMARY`` (Jitter Summary) is a group consisting of the following measurements: + TIE, TJ@BER, Eye Width@BER, Eye Height@BER, RJ-δδ, DJ-δδ, PJ, DDJ, DcD, F/2, F/4, F/8. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``J2`` is the total jitter at a bit error rate of 2.5e-3 (TJ@2.5e-3). This measurement is + made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``J9`` is the total jitter at a bit error rate of 2.5e-10 (TJ@2.5e-10). This measurement + is made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``LOW`` (Eye Low) is the amplitude of a low (0) bit measured at a user specified location + within the recovered unit interval. This measurement is made on each low bit in the + record. + - ``LOWTIME`` (Low Time) is the time the signal remains below the Base reference level (RB). + This measurement is made on each cycle in the record. + - ``MAXimum`` is the maximum data point. This measurement can be made across the entire + record, or on each cycle in the record. + - ``MEAN`` is the arithmetic mean of the data points. This measurement can be made across + the entire record, or on each cycle in the record. + - ``MINImum`` is the minimum data point. This measurement can be made across the entire + record, or on each cycle in the record. + - ``NDUty`` (Negative Duty Cycle) is the ratio of the Negative Pulse Width to the Period. + This measurement is made on each cycle in the record. + - ``Negative Duty Cycle = (Negative Width) / Period × 100%`` + - ``NPERIOD`` (Duration N-Periods) is the time required to complete N cycles. A cycle is the + time between two adjacent (same direction) crossings of the Mid reference level (RM). This + measurement is made on each cycle in the record. + - ``NPJ`` (non-periodic jitter) is the portion of the BUJ (bounded uncorrelated jitter) that + is random. BUJ excludes DDJ, DCD and RJ. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``NOVershoot`` (Negative Overshoot) is the difference between Minimum and Base, divided by + the Amplitude. This measurement can be made across the entire record, or on each cycle in + the record. + - ``Negative Overshoot = (Base - Minimum) / Amplitude × 100%)`` + - ``NWIdth`` (Negative Pulse Width) is the time the signal remains below the Mid reference + level (RM). This measurement is made on each cycle in the record. + - ``PDUTY`` (Positive Duty Cycle) is the ratio of the Positive Pulse Width to the Period. + This measurement is made on each cycle in the record. + - ``Positive Duty Cycle = (Positive Width)/Period × 100%`` + - ``PERIOD`` is the time required to complete a cycle. A cycle is the time between two + adjacent (same direction) crossings of the Mid reference level (RM). This measurement is + made on each cycle in the record. + - ``PHASE`` is the ratio of the Skew between two sources to the Period of the first source. + This measurement is made on each cycle in the record. + - ``PHASENOISE`` (Phase Noise) is the RMS magnitude of all integrated jitter falling within + a user specified offset range of the fundamental clock frequency. This measurement is made + across the entire record. This measurement is not available on a 4 Series MSO instrument. + - ``PJ`` (periodic jitter) is the peak-to-peak amplitude of the uncorrelated sinusoidal + components of the deterministic jitter. This measurement is made across the entire record. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``PK2Pk`` (Peak-to-peak) is the difference between Maximum and Minimum. This measurement + can be made across the entire record, or on each cycle in the record. + - ``POVERSHOOT`` (Positive Overshoot) is the difference between Maximum and Top, divided by + the Amplitude. This measurement can be made across the entire record, or on each cycle in + the record. + - ``Positive Overshoot = (Maximum - Top) / Amplitude ×100%`` + - ``PWIDTH`` (Positive Pulse Width) is the time the signal remains above the Mid reference + level (RM). This measurement is made on each cycle in the record. + - ``QFACTOR`` (Q-Factor) is the ratio of the vertical eye opening to RMS vertical noise + measured at a user specified location within the recovered unit interval. This measurement + is made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``RISESLEWRATE`` (Rising Slew Rate) is the rate of change in voltage as an edge + transitions from the Base reference level (RB) to the Top reference level (RT). This + measurement is made on each cycle in the record. + - ``RISETIME`` Rise Time is the time required for an edge to rise from the Base reference + level (RB) to the Top reference level (RT). This measurement is made on each cycle in the + record. + - ``RJ`` (random jitter) is the RMS magnitude of all random timing errors following a + Gaussian distribution. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``RJDIRAC`` (dual-dirac random jitter) is random jitter based on a simplifying assumption + that the histogram of all deterministic jitter can be modeled as a pair of equal-magnitude + Dirac functions. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``RMS`` is the true Root Mean Square of the data points. This measurement can be made + across the entire record, or on each cycle in the record. + - ``SRJ`` (sub-rate jitter) is the composite jitter due to periodic components at 1/2, 1/4 + and 1/8 of the data rate. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``SSCFREQDEV`` (SSC Frequency Deviation) is the spread spectrum clock frequency deviation. + This measurement enables a time trend plot of the spread spectrum clock modulation + profile. This measurement is made on each cycle in the record. This measurement requires + the DJA option and is not available on a 4 Series MSO instrument. + - ``SSCMODRATE`` (SSC Modulation Rate) is the modulating frequency of a spread spectrum + clock. This measurement is made on each cycle in the record. This measurement requires the + DJA option and is not available on a 4 Series MSO instrument. + - ``SETUP`` (Setup Time) is the time between the specified Mid reference level (RM) crossing + on the Data source to the closest specified Mid reference level (RM) crossing on the Clock + source. This measurement is made on each specified Clock edge in the record. + - ``SKEW`` Skew is the time between the specified Mid reference level (RM) crossing on one + source to the following specified Mid reference level (RM) crossing on a second source. + This measurement is made on each cycle in the record. + - ``TIE`` (time interval error) is the difference, in time, between an edge in the source + waveform and the corresponding edge in a recovered reference clock. This measurement is + made on each edge in the waveform. This measurement is not available on a 4 Series MSO + instrument. + - ``TIMEOUTSIDELEVEL`` Time Outside Level is the time the signal remains above the Top + reference level (RT) and/or below the Base reference level (RB). This measurement is made + on each occurrence in the record. + - ``TIMETOMAX`` Time to Max is the amount of time from the trigger point to the maximum data + point. This measurement can be made across the entire record or on each cycle in the + record. + - ``TIMETOMIN`` Time to Min is the amount of time from the trigger point to the minimum data + point. This measurement can be made across the entire record or on each cycle in the + record. + - ``TJBER`` (total jitter at a specified bit error rate) is the predicted peak-to-peak + amplitude of jitter that will only be exceeded with a probability equal to the bit error + rate. This measurement is made across the entire record. This measurement requires the DJA + option and is not available on a 4 Series MSO instrument. + - ``TNTRATIO`` T/nT Ratio is the ratio of a non-transition bit voltage (2nd and subsequent + bit voltage after a transition) to its nearest preceding transition bit voltage (1st bit + voltage after the transition). Bit voltages are measured at the interpolated midpoint of + the recovered unit interval. This measurement is made on each non-transition bit in the + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``TOP`` is the most common data value above the midpoint of the waveform. This measurement + can be made across the entire record, or on each cycle in the record. + - ``UNITINTERVAL`` (Unit Interval) is the time difference between two successive bits. This + measurement is made on each bit in the record. + - ``VDIFFXOVR`` (Differential Crossover) is the voltage level of a differential signal pair + at the crossover points. This measurement is made at each crossover point in the record. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``WIDTH`` (Eye Width) is the minimum horizontal eye opening at the user specified + reference level. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``WIDTHBER`` (Eye Width@BER) is the predicted horizontal eye opening that will be violated + with a probability equal to the bit error rate. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + """ # noqa: E501 + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class Measurement(SCPICmdRead): + """The ``MEASUrement`` command. + + Description: + - This query-only command returns all measurement parameters. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement? + ``` + + Properties: + - ``.addmeas``: The ``MEASUrement:ADDMEAS`` command. + - ``.addnew``: The ``MEASUrement:ADDNew`` command. + - ``.annotate``: The ``MEASUrement:ANNOTate`` command. + - ``.autoset``: The ``MEASUrement:AUTOset`` command. + - ``.ch``: The ``MEASUrement:CH`` command tree. + - ``.clockrecovery``: The ``MEASUrement:CLOCKRecovery`` command tree. + - ``.deleteall``: The ``MEASUrement:DELETEALL`` command. + - ``.delete``: The ``MEASUrement:DELete`` command. + - ``.diracmodel``: The ``MEASUrement:DIRacmodel`` command. + - ``.displayunits``: The ``MEASUrement:DISPLAYUnits`` command. + - ``.edge``: The ``MEASUrement:EDGE`` command. + - ``.eyerender``: The ``MEASUrement:EYERENDER`` command. + - ``.filters``: The ``MEASUrement:FILTers`` command tree. + - ``.gating``: The ``MEASUrement:GATing`` command. + - ``.highlevel``: The ``MEASUrement:HIGHLEVel`` command tree. + - ``.interp``: The ``MEASUrement:INTERp`` command. + - ``.jittermodel``: The ``MEASUrement:JITTermodel`` command. + - ``.list``: The ``MEASUrement:LIST`` command. + - ``.lockrj``: The ``MEASUrement:LOCKRJ`` command. + - ``.lockrjvalue``: The ``MEASUrement:LOCKRJValue`` command. + - ``.math``: The ``MEASUrement:MATH`` command tree. + - ``.meas``: The ``MEASUrement:MEAS`` command tree. + - ``.measrange``: The ``MEASUrement:MEASRange`` command tree. + - ``.mech``: The ``MEASUrement:MECH`` command tree. + - ``.minui``: The ``MEASUrement:MINUI`` command. + - ``.population``: The ``MEASUrement:POPUlation`` command tree. + - ``.ref``: The ``MEASUrement:REF`` command tree. + - ``.reflevels``: The ``MEASUrement:REFLevels`` command tree. + - ``.results``: The ``MEASUrement:RESUlts`` command tree. + - ``.statistics``: The ``MEASUrement:STATIstics`` command tree. + - ``.wbg``: The ``MEASUrement:WBG`` command tree. + """ + + def __init__( + self, device: Optional["PIDevice"] = None, cmd_syntax: str = "MEASUrement" + ) -> None: + super().__init__(device, cmd_syntax) + self._addmeas = MeasurementAddmeas(device, f"{self._cmd_syntax}:ADDMEAS") + self._addnew = MeasurementAddnew(device, f"{self._cmd_syntax}:ADDNew") + self._annotate = MeasurementAnnotate(device, f"{self._cmd_syntax}:ANNOTate") + self._autoset = MeasurementAutoset(device, f"{self._cmd_syntax}:AUTOset") + self._ch: Dict[int, MeasurementChannel] = DefaultDictPassKeyToFactory( + lambda x: MeasurementChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._clockrecovery = MeasurementClockrecovery(device, f"{self._cmd_syntax}:CLOCKRecovery") + self._deleteall = MeasurementDeleteall(device, f"{self._cmd_syntax}:DELETEALL") + self._delete = MeasurementDelete(device, f"{self._cmd_syntax}:DELete") + self._diracmodel = MeasurementDiracmodel(device, f"{self._cmd_syntax}:DIRacmodel") + self._displayunits = MeasurementDisplayunits(device, f"{self._cmd_syntax}:DISPLAYUnits") + self._edge: Dict[int, MeasurementEdgeItem] = DefaultDictPassKeyToFactory( + lambda x: MeasurementEdgeItem(device, f"{self._cmd_syntax}:EDGE{x}") + ) + self._eyerender = MeasurementEyerender(device, f"{self._cmd_syntax}:EYERENDER") + self._filters = MeasurementFilters(device, f"{self._cmd_syntax}:FILTers") + self._gating = MeasurementGating(device, f"{self._cmd_syntax}:GATing") + self._highlevel = MeasurementHighlevel(device, f"{self._cmd_syntax}:HIGHLEVel") + self._interp = MeasurementInterp(device, f"{self._cmd_syntax}:INTERp") + self._jittermodel = MeasurementJittermodel(device, f"{self._cmd_syntax}:JITTermodel") + self._list = MeasurementList(device, f"{self._cmd_syntax}:LIST") + self._lockrj = MeasurementLockrj(device, f"{self._cmd_syntax}:LOCKRJ") + self._lockrjvalue = MeasurementLockrjvalue(device, f"{self._cmd_syntax}:LOCKRJValue") + self._math: Dict[int, MeasurementMathItem] = DefaultDictPassKeyToFactory( + lambda x: MeasurementMathItem(device, f"{self._cmd_syntax}:MATH{x}") + ) + self._meas: Dict[int, MeasurementMeasItem] = DefaultDictPassKeyToFactory( + lambda x: MeasurementMeasItem(device, f"{self._cmd_syntax}:MEAS{x}") + ) + self._measrange = MeasurementMeasrange(device, f"{self._cmd_syntax}:MEASRange") + self._mech = MeasurementMech(device, f"{self._cmd_syntax}:MECH") + self._minui = MeasurementMinui(device, f"{self._cmd_syntax}:MINUI") + self._population = MeasurementPopulation(device, f"{self._cmd_syntax}:POPUlation") + self._ref: Dict[int, MeasurementRefItem] = DefaultDictPassKeyToFactory( + lambda x: MeasurementRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + self._reflevels = MeasurementReflevels(device, f"{self._cmd_syntax}:REFLevels") + self._results = MeasurementResults(device, f"{self._cmd_syntax}:RESUlts") + self._statistics = MeasurementStatistics(device, f"{self._cmd_syntax}:STATIstics") + self._wbg = MeasurementWbg(device, f"{self._cmd_syntax}:WBG") + + @property + def addmeas(self) -> MeasurementAddmeas: + """Return the ``MEASUrement:ADDMEAS`` command. + + Description: + - This command adds a measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:ADDMEAS value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:ADDMEAS {ACCOMMONMODE|ACRMS|AMPlITUDE|AREA|BASE|BITAMPLITUDE|BITHIGH|BITLOW|BURSTWIDTH|COMMONMODE|CCJITTER|DATARATE|DCD|DDJ|DDRAOS|DDRAOSPERTCK|DDRAOSPERUI|DDRAUS|DDRAUSPERTCK|DDRAUSPERUI|DDRHOLDDIFF|DDRSETUPDIFF|DDRTCHABS|DDRTCHAVERAGE|DDRTCKAVERAGE|DDRTCLABS|DDRTCLAVERAGE|DDRTERRMN|DDRTERRN|DDRTJITCC|DDRTJITDUTY|DDRTJITPER|DDRTPST|DDRTRPRE|DDRTWPRE|DDRVIXAC|DDRTDQSCK|DELAY|DJ|DJDIRAC|EYEHIGH|EYELOW|FALLSLEWRATE|FALLTIME|FREQUENCY|F2|F4|F8|HEIGHT|HEIGHTBER|HIGH|HIGHTIME|HOLD|IMDAPOWERQUALITY|IMDAHARMONICS|IMDAINPUTVOLTAGE|IMDAINPUTCURRENT|IMDAINPUTPOWER|IMDAPHASORDIAGRAM|IMDAEFFICIENCY|IMDALINERIPPLE|IMDASWITCHRIPPLE|IMDADQ0|JITTERSUMMARY|J2|J9|LOW|LOWTIME|MAXIMUM|MEAN|MINIMUM|NDUty|NOVERSHOOT|NPERIOD|NPJ|NWIDTTH|PDUTY|PERIOD|PHASE|PHASENOISE|PJ|PK2Pk|POVERSHOOT|PWIDTH|QFACTOR|RISESLEWRATE|RISETIME|RJ|RJDIRAC|RMS|SETUP|SKEW|SRJ|SSCFREQDEV|SSCMODRATE|TIE|TIMEOUTSIDELEVEL|TIMETOMAX|TIMETOMIN|TJBER|TNTRATIO|TOP|UNITINTERVAL|VDIFFXOVR|WIDTH|WIDTHBER} + ``` + + Info: + - ``ACCOMMONMODE`` AC Common Mode (Pk-Pk) is the peak-to-peak of the common mode voltage + of two sources. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``ACRMS`` (AC RMS) is the true Root Mean Square of the data points, about the Mean. + This measurement can be made across the entire record, or on each cycle in the record. + - ``AMPLITUDE`` is the difference between the Top value and the Base value. This + measurement can be made across the entire record, or on each cycle in the record. + - ``Amplitude = High - Low`` + - ``AREA`` is the area under the curve, calculated by integrating the data points. The + area measured above ground is positive. The area measured below ground is negative. + This measurement can be made across the entire record, or on each cycle in the record. + - ``BASE`` is the most common data value below the midpoint of the waveform. This + measurement can be made across the entire record, or on each cycle in the record. + - ``BITAMPLITUDE`` (Bit Amplitude) is the difference between the amplitudes of the 1 bit + and the 0 bit surrounding a transition. The amplitude is measured over a user + specified portion at the center of the recovered unit interval. This measurement is + made on each transition bit in the record (Mean) or across the entire record (Mode). + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``BITHIGH`` (Bit High) is the amplitude of a 1 bit. The amplitude is measured over a + user specified portion at the center of the recovered unit interval. This measurement + is made on each high bit in the record (Mean) or across the entire record (Mode). This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BITLOW`` (Bit Low) is the amplitude of a 0 bit. The amplitude is measured over a + user specified portion at the center of the recovered unit interval. This measurement + is made on each high bit in the record (Mean) or across the entire record (Mode). This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``BURSTWIDTH`` (Burst Width) is the duration of a series of adjacent crossings of the + Mid reference level (RM). Bursts are separated by a user-defined idle time (tI). This + measurement is made on each burst in the record. + - ``COMMONMODE`` (DC Common Mode) is the arithmetic mean of the common mode voltage of + two sources. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``CCJITTER`` (Cycle-to-Cycle jitter) measures how much the clock period changes + between any two adjacent cycles. Cycle-to-Cycle jitter is measured by applying a first + order difference operation to the period jitter. + - ``DATARATE`` (Data Rate) is the reciprocal of Unit Interval. This measurement is made + on each bit in the record. + - ``DCD`` (duty cycle distortion) is the peak-to-peak amplitude of the component of the + deterministic jitter correlated with the signal polarity. This measurement is made + across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``DDJ`` (data dependent jitter) is the peak-to-peak amplitude of the component of the + deterministic jitter correlated with the data pattern in the waveform. This + measurement is made across the entire record. This measurement requires the DJA option + and is not available on a 4 Series MSO instrument. + - ``DDRAOS`` (area above signal) is the total area of the signal above a specified + reference level. This measurement is made across the entire record. + - ``DDRAOSPERTCK`` (area over signal for tCK events) is the total area of the signal + above a specified reference level calculated over consecutive tCK intervals. It is + applicable to clock and address/command waveforms. + - ``DDRAOSPERUI`` (area over signal for UI events) is the total area of the signal above + a specified reference level calculated over consecutive unit intervals. It is + applicable to data and data strobe waveforms. + - ``DDRAUS`` (area under signal) is the total area of the signal below a specified + reference level. This measurement is made across the entire record. + - ``DDRAUSPERTCK`` (area under signal for tCK events) is the total area of the signal + below a specified reference level calculated over consecutive tCK intervals. It is + applicable to clock and address/command waveforms. + - ``DDRAUSPERUI`` (area under signal for UI events) is the total area of the signal + below a specified reference level calculated over consecutive unit intervals. It is + applicable to data and data strobe waveforms. + - ``DDRHOLDDIFF`` (hold difference) is the elapsed time between the specified edge of a + single-ended clock waveform and the specified edge of a differential data waveform. + The measurement uses the closest respective waveform edges that fall within the range + limits.This measurement is made across the entire record. + - ``DDRSETUPDIFF`` (setup difference) is the elapsed time between the specified edge of + a single-ended clock waveform and when the specified edge of a differential data + waveform crosses a specified level. The measurement uses the closest respective + waveform edges that fall within the range limits. This measurement is made across the + entire record. + - ``DDRTCHABS`` (absolute high pulse width) is the absolute value of the high pulse + width as measured from one rising edge to the next falling edge. + - ``DDRTCHAVERAGE`` (average high pulse width) is the average value of the high pulse + width as measured from one rising edge to the next falling edge, across 200 + consecutive cycles. This measurement is made across the entire record. + - ``DDRTCKAVERAGE`` (average clock period) is the average clock period calculated from + rising edge to rising edge, across 200 consecutive cycles. This measurement is made + across the entire record. + - ``DDRTCLABS`` (absolute low pulse width) is the absolute value of the low pulse width + as measured from a falling edge to the next rising edge. This measurement is made + across the entire record. + - ``DDRTCLAVERAGE`` (average low pulse width) is the average value of the low pulse + width as measured from one falling edge to the next rising edge, across 200 + consecutive cycles. + - ``DDRTERRMN`` (cumulative error) is the cumulative error across multiple consecutive + defined cycles from tCK(avg). + - ``DDRTERRN`` (cumulative error) is the cumulative error across specified consecutive + cycles from tCK(avg). In other words, this measures the time difference between the + sum of the clock period from a 200 cycle window and n times tCK(avg). + - ``DDRTJITCC`` (cycle to cycle jitter period) is the absolute difference in clock + period between two consecutive clock cycles. This measurement is made across the + entire record. + - ``DDRTJITDUTY`` (half period jitter) is the largest elapsed time between tCH and + tCH(avg), and tCL and tCL(avg), over 200 consecutive cycles. + - ``DDRTJITPER`` (clock period jitter) is the largest deviation of any tCK signal from + tCK(avg). This measurement is made across the entire record. + - ``DDRTPST`` (read/write burst postamble) is the width of the Read or Write burst + postamble, measured from the last falling edge of the mid reference level to the start + of an undriven state. This measurement is made across the entire record. + - ``DDRTRPRE`` (read burst preamble) is the width of the Read burst preamble, measured + from exiting tristate levels to the first driving edge of the differential strobe. + This measurement is made across the entire record. + - ``DDRTWPRE`` is the width of the Write burst preamble, measured from exiting tristate + levels to the first driving edge of the differential strobe. This measurement is made + across the entire record. + - ``DDRVIXAC`` is the differential input cross-point voltage measured from the true + state transition (and it's compliment) to a specified reference level, measured on a + single-ended signal. + - ``DDRTDQSCK`` is the strobe output access time, measured between the rising edge of + the clock and before or after the differential strobe Read preamble time. Signal edges + are determined by the mid-ref threshold level settings. + - ``DELay`` is the time between the specified Mid reference level (RM) crossing on one + source to a specified Mid reference level (RM) crossing on a second source. This + measurement is made on the first occurrence in the record. + - ``DJ`` (deterministic jitter) is the peak-to-peak amplitude of all timing errors that + exhibit deterministic behavior. This measurement is made across the entire record. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``DJDIRAC`` (dual-dirac deterministic jitter) is deterministic jitter based on a + simplifying assumption that the histogram of all deterministic jitter can be modeled + as a pair of equal-magnitude Dirac functions. This measurement is made across the + entire record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``EYEHIGH`` (Eye High) is the amplitude of a high (1) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each high bit + in the record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``EYELOW`` (Eye Low) is the amplitude of a low (0) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each low bit + in the record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``FALLSLEWRATE`` (Falling Slew Rate) is the rate of change in voltage as an edge + transitions from the Top reference level (RT) to the Bottom reference level (RB). This + measurement is made on each cycle in the record. + - ``FALLTIME`` (Fall Time) is the time required for an edge to fall from the Top + reference level (RT) to the Base reference level (RB). This measurement is made on + each cycle in the record. + - ``FREQuency`` is the reciprocal of Period. This measurement is made on each cycle in + the record. + - ``F2`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 2. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``F4`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 4. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``F8`` is the peak-to-peak amplitude of the periodic jitter occurring at a rate of Fb + (data rate) divided by 8. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``HIGH`` (Eye High) is the amplitude of a high (1) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each high bit + in the record. + - ``HEIGHT`` (Eye Height) is the minimum vertical eye opening at the center of the + recovered unit interval. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``HEIGHTBER`` (Eye Height@BER) is the predicted vertical eye opening that will be + violated with a probability equal to the bit error rate. This measurement is made + across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``HIGHTIME`` (High Time) is the time the signal remains above the Top reference level + (RT). This measurement is made on each cycle in the record. + - ``HOLD`` (Hold Time) is the time between the specified Mid reference level crossing + (RM) on the Clock source to the closest specified Mid reference level (RM) crossing on + the Data source. This measurement is made on each specified Clock edge in the record. + - ``IMDAPOWERQUALITY`` measures the operating Frequency, RMS values of the voltage and + current, Crest Factors of the voltage and current, Real Power, Reactive Power, + Apparent Power, Power Factor, and Phase Angle of the AC signal. Plots the Phasor + diagram. This measurement requires the IMDA option. + - ``IMDAHARMONICS`` measures the signal amplitudes at the fundamental line frequency and + its harmonics. Measures the RMS amplitude and Total Harmonic Distortion of the signal. + Plots the Harmonics Bar Graph. This measurement requires the IMDA option. + - ``IMDAINPUTVOLTAGE`` measures the RMS value of the input voltage for all phases based + on the configured wiring. This measurement requires the IMDA option. + - ``IMDAINPUTCURRENT`` measures the RMS value of the input current for all phases based + on the configured wiring. This measurement requires the IMDA option. + - ``IMDAINPUTPOWER`` measures the RMS and peak-to-peak values of the AC signal. This + measurement requires the IMDA option. + - ``IMDAPHASORDIAGRAM`` plots Vrms and Irms and phase angles between voltage(s) and + current(s) per winding pair. This measurement requires the IMDA option. + - ``IMDAEFFICIENCY`` measures the ratio of output power to input power per phase for a + AC input and Drive output. Measures the total efficiency of the system. This + measurement requires the IMDA option. + - ``IMDALINERIPPLE`` measures the RMS value of the input power for all phases based on + the configured wiring. Measures the True / Apparent / Reactive Power for all the + phases. This measurement requires the IMDA option. + - ``IMDASWITCHRIPPLEJITTERSUMMARY`` measures the RMS and peak-to-peak values of the + switching signal. This measurement requires the IMDA option. + - ``IMDADQ0`` measures the DQ0 values of the phasor plot. This measurement requires + options IMDA and IMDA-DQ0. + - ``JITTERSUMMARY`` (Jitter Summary) is a group consisting of the following + measurements: TIE, TJ@BER, Eye Width@BER, Eye Height@BER, RJ-δδ, DJ-δδ, PJ, DDJ, DcD, + F/2, F/4, F/8. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``J2`` is the total jitter at a bit error rate of 2.5e-3 (TJ@2.5e-3). This measurement + is made across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``J9`` is the total jitter at a bit error rate of 2.5e-10 (TJ@2.5e-10). This + measurement is made across the entire record. This measurement requires the DJA option + and is not available on a 4 Series MSO instrument. + - ``LOW`` (Eye Low) is the amplitude of a low (0) bit measured at a user specified + location within the recovered unit interval. This measurement is made on each low bit + in the record. + - ``LOWTIME`` (Low Time) is the time the signal remains below the Base reference level + (RB). This measurement is made on each cycle in the record. + - ``MAXimum`` is the maximum data point. This measurement can be made across the entire + record, or on each cycle in the record. + - ``MEAN`` is the arithmetic mean of the data points. This measurement can be made + across the entire record, or on each cycle in the record. + - ``MINImum`` is the minimum data point. This measurement can be made across the entire + record, or on each cycle in the record. + - ``NDUty`` (Negative Duty Cycle) is the ratio of the Negative Pulse Width to the + Period. This measurement is made on each cycle in the record. + - ``Negative Duty Cycle = (Negative Width) / Period × 100%`` + - ``NPERIOD`` (Duration N-Periods) is the time required to complete N cycles. A cycle is + the time between two adjacent (same direction) crossings of the Mid reference level + (RM). This measurement is made on each cycle in the record. + - ``NPJ`` (non-periodic jitter) is the portion of the BUJ (bounded uncorrelated jitter) + that is random. BUJ excludes DDJ, DCD and RJ. This measurement is made across the + entire record. This measurement requires the DJA option and is not available on a 4 + Series MSO instrument. + - ``NOVershoot`` (Negative Overshoot) is the difference between Minimum and Base, + divided by the Amplitude. This measurement can be made across the entire record, or on + each cycle in the record. + - ``Negative Overshoot = (Base - Minimum) / Amplitude × 100%)`` + - ``NWIdth`` (Negative Pulse Width) is the time the signal remains below the Mid + reference level (RM). This measurement is made on each cycle in the record. + - ``PDUTY`` (Positive Duty Cycle) is the ratio of the Positive Pulse Width to the + Period. This measurement is made on each cycle in the record. + - ``Positive Duty Cycle = (Positive Width)/Period × 100%`` + - ``PERIOD`` is the time required to complete a cycle. A cycle is the time between two + adjacent (same direction) crossings of the Mid reference level (RM). This measurement + is made on each cycle in the record. + - ``PHASE`` is the ratio of the Skew between two sources to the Period of the first + source. This measurement is made on each cycle in the record. + - ``PHASENOISE`` (Phase Noise) is the RMS magnitude of all integrated jitter falling + within a user specified offset range of the fundamental clock frequency. This + measurement is made across the entire record. This measurement is not available on a 4 + Series MSO instrument. + - ``PJ`` (periodic jitter) is the peak-to-peak amplitude of the uncorrelated sinusoidal + components of the deterministic jitter. This measurement is made across the entire + record. This measurement requires the DJA option and is not available on a 4 Series + MSO instrument. + - ``PK2Pk`` (Peak-to-peak) is the difference between Maximum and Minimum. This + measurement can be made across the entire record, or on each cycle in the record. + - ``POVERSHOOT`` (Positive Overshoot) is the difference between Maximum and Top, divided + by the Amplitude. This measurement can be made across the entire record, or on each + cycle in the record. + - ``Positive Overshoot = (Maximum - Top) / Amplitude ×100%`` + - ``PWIDTH`` (Positive Pulse Width) is the time the signal remains above the Mid + reference level (RM). This measurement is made on each cycle in the record. + - ``QFACTOR`` (Q-Factor) is the ratio of the vertical eye opening to RMS vertical noise + measured at a user specified location within the recovered unit interval. This + measurement is made across the entire record. This measurement requires the DJA option + and is not available on a 4 Series MSO instrument. + - ``RISESLEWRATE`` (Rising Slew Rate) is the rate of change in voltage as an edge + transitions from the Base reference level (RB) to the Top reference level (RT). This + measurement is made on each cycle in the record. + - ``RISETIME`` Rise Time is the time required for an edge to rise from the Base + reference level (RB) to the Top reference level (RT). This measurement is made on each + cycle in the record. + - ``RJ`` (random jitter) is the RMS magnitude of all random timing errors following a + Gaussian distribution. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``RJDIRAC`` (dual-dirac random jitter) is random jitter based on a simplifying + assumption that the histogram of all deterministic jitter can be modeled as a pair of + equal-magnitude Dirac functions. This measurement is made across the entire record. + This measurement requires the DJA option and is not available on a 4 Series MSO + instrument. + - ``RMS`` is the true Root Mean Square of the data points. This measurement can be made + across the entire record, or on each cycle in the record. + - ``SRJ`` (sub-rate jitter) is the composite jitter due to periodic components at 1/2, + 1/4 and 1/8 of the data rate. This measurement is made across the entire record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``SSCFREQDEV`` (SSC Frequency Deviation) is the spread spectrum clock frequency + deviation. This measurement enables a time trend plot of the spread spectrum clock + modulation profile. This measurement is made on each cycle in the record. This + measurement requires the DJA option and is not available on a 4 Series MSO instrument. + - ``SSCMODRATE`` (SSC Modulation Rate) is the modulating frequency of a spread spectrum + clock. This measurement is made on each cycle in the record. This measurement requires + the DJA option and is not available on a 4 Series MSO instrument. + - ``SETUP`` (Setup Time) is the time between the specified Mid reference level (RM) + crossing on the Data source to the closest specified Mid reference level (RM) crossing + on the Clock source. This measurement is made on each specified Clock edge in the + record. + - ``SKEW`` Skew is the time between the specified Mid reference level (RM) crossing on + one source to the following specified Mid reference level (RM) crossing on a second + source. This measurement is made on each cycle in the record. + - ``TIE`` (time interval error) is the difference, in time, between an edge in the + source waveform and the corresponding edge in a recovered reference clock. This + measurement is made on each edge in the waveform. This measurement is not available on + a 4 Series MSO instrument. + - ``TIMEOUTSIDELEVEL`` Time Outside Level is the time the signal remains above the Top + reference level (RT) and/or below the Base reference level (RB). This measurement is + made on each occurrence in the record. + - ``TIMETOMAX`` Time to Max is the amount of time from the trigger point to the maximum + data point. This measurement can be made across the entire record or on each cycle in + the record. + - ``TIMETOMIN`` Time to Min is the amount of time from the trigger point to the minimum + data point. This measurement can be made across the entire record or on each cycle in + the record. + - ``TJBER`` (total jitter at a specified bit error rate) is the predicted peak-to-peak + amplitude of jitter that will only be exceeded with a probability equal to the bit + error rate. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``TNTRATIO`` T/nT Ratio is the ratio of a non-transition bit voltage (2nd and + subsequent bit voltage after a transition) to its nearest preceding transition bit + voltage (1st bit voltage after the transition). Bit voltages are measured at the + interpolated midpoint of the recovered unit interval. This measurement is made on each + non-transition bit in the record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + - ``TOP`` is the most common data value above the midpoint of the waveform. This + measurement can be made across the entire record, or on each cycle in the record. + - ``UNITINTERVAL`` (Unit Interval) is the time difference between two successive bits. + This measurement is made on each bit in the record. + - ``VDIFFXOVR`` (Differential Crossover) is the voltage level of a differential signal + pair at the crossover points. This measurement is made at each crossover point in the + record. This measurement requires the DJA option and is not available on a 4 Series + MSO instrument. + - ``WIDTH`` (Eye Width) is the minimum horizontal eye opening at the user specified + reference level. This measurement is made across the entire record. This measurement + requires the DJA option and is not available on a 4 Series MSO instrument. + - ``WIDTHBER`` (Eye Width@BER) is the predicted horizontal eye opening that will be + violated with a probability equal to the bit error rate. This measurement is made + across the entire record. This measurement requires the DJA option and is not + available on a 4 Series MSO instrument. + """ # noqa: E501 + return self._addmeas + + @property + def addnew(self) -> MeasurementAddnew: + """Return the ``MEASUrement:ADDNew`` command. + + Description: + - This command adds the specified measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:ADDNew value`` command. + + SCPI Syntax: + ``` + - MEASUrement:ADDNew 'QString' + ``` + + Info: + - ``'QString'`` is the measurement to add. The argument is of the form 'MEAS' where + NR1 ≥ 1. + """ + return self._addnew + + @property + def annotate(self) -> MeasurementAnnotate: + """Return the ``MEASUrement:ANNOTate`` command. + + Description: + - This command sets or queries the annotation state for measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:ANNOTate?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:ANNOTate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:ANNOTate value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:ANNOTate {OFF|AUTO} + - MEASUrement:ANNOTate? + ``` + + Info: + - ``OFF`` turns off measurement annotations. + - ``AUTO`` turns on visible measurement annotations. + """ + return self._annotate + + @property + def autoset(self) -> MeasurementAutoset: + """Return the ``MEASUrement:AUTOset`` command. + + Description: + - This command performs an analysis jitter autoset. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:AUTOset value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:AUTOset {EXECute|THREEPHASEAUTOset|WBGPREset|DPMAutoset|DPMPReset} + ``` + + Info: + - ``EXECute`` performs an analysis jitter autoset. + - ``THREEPHASEAUTOset`` performs an IMDA 3 phase autoset. + - ``WBGPREset`` performs a measurement specific preset. Requires a WBG-DPT license. + - ``DPMAutoset`` performs a power rail autoset. Requires option 5-DPM (5 Series MSO + instruments) or 6-DPM (6 Series MSO instrument). + - ``DPMPReset`` performs a power rail preset. Requires option 5-DPM (5 Series MSO + instruments) or 6-DPM (6 Series MSO instrument). + """ + return self._autoset + + @property + def ch(self) -> Dict[int, MeasurementChannel]: + """Return the ``MEASUrement:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CH?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.reflevels``: The ``MEASUrement:CH:REFLevels`` command tree. + """ + return self._ch + + @property + def clockrecovery(self) -> MeasurementClockrecovery: + """Return the ``MEASUrement:CLOCKRecovery`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:CLOCKRecovery?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:CLOCKRecovery?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.advanced``: The ``MEASUrement:CLOCKRecovery:ADVanced`` command tree. + - ``.clockfrequency``: The ``MEASUrement:CLOCKRecovery:CLOCKFrequency`` command. + - ``.clockmultiplier``: The ``MEASUrement:CLOCKRecovery:CLOCKMultiplier`` command. + - ``.constclockmode``: The ``MEASUrement:CLOCKRecovery:CONSTCLOCKMODe`` command. + - ``.damping``: The ``MEASUrement:CLOCKRecovery:DAMPing`` command. + - ``.datapath``: The ``MEASUrement:CLOCKRecovery:DATAPath`` command. + - ``.datarate``: The ``MEASUrement:CLOCKRecovery:DATARate`` command. + - ``.explicitclockmode``: The ``MEASUrement:CLOCKRecovery:EXPLICITCLOCKMODe`` command. + - ``.jtfbandwidth``: The ``MEASUrement:CLOCKRecovery:JTFBandwidth`` command. + - ``.loopbandwidth``: The ``MEASUrement:CLOCKRecovery:LOOPBandwidth`` command. + - ``.meanautocalculate``: The ``MEASUrement:CLOCKRecovery:MEANAUTOCalculate`` command. + - ``.method``: The ``MEASUrement:CLOCKRecovery:METHod`` command. + - ``.model``: The ``MEASUrement:CLOCKRecovery:MODel`` command. + - ``.nominaloffset``: The ``MEASUrement:CLOCKRecovery:NOMINALOFFset`` command. + - ``.standard``: The ``MEASUrement:CLOCKRecovery:STAndard`` command. + """ + return self._clockrecovery + + @property + def deleteall(self) -> MeasurementDeleteall: + """Return the ``MEASUrement:DELETEALL`` command. + + Description: + - This command deletes all the active instances of measurements defined in the scope + application. + + Usage: + - Using the ``.write()`` method will send the ``MEASUrement:DELETEALL`` command. + + SCPI Syntax: + ``` + - MEASUrement:DELETEALL + ``` + """ + return self._deleteall + + @property + def delete(self) -> MeasurementDelete: + """Return the ``MEASUrement:DELete`` command. + + Description: + - The command deletes the specified measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:DELete value`` command. + + SCPI Syntax: + ``` + - MEASUrement:DELete + ``` + + Info: + - ```` is the measurement to delete. Argument is of the form 'MEAS' where + is ≥1. + """ + return self._delete + + @property + def diracmodel(self) -> MeasurementDiracmodel: + """Return the ``MEASUrement:DIRacmodel`` command. + + Description: + - This command sets or queries the dirac model used to separate random from + deterministic jitter for jitter measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:DIRacmodel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:DIRacmodel?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:DIRacmodel value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:DIRacmodel {PCIExpress|FIBREchannel} + - MEASUrement:DIRacmodel? + ``` + + Info: + - ``PCIExpress`` specifies the PCIExpress dirac model. + - ``FIBREchannel`` specifies the FIBREchannel dirac model. + """ + return self._diracmodel + + @property + def displayunits(self) -> MeasurementDisplayunits: + """Return the ``MEASUrement:DISPLAYUnits`` command. + + Description: + - This command sets or queries the display units used for jitter summary measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:DISPLAYUnits?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:DISPLAYUnits?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:DISPLAYUnits value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:DISPLAYUnits {SEConds|UNITINtervals} + - MEASUrement:DISPLAYUnits? + ``` + + Info: + - ``SEConds`` set the display units to seconds. + - ``UNITINtervals`` set the display units to unit intervals. + """ + return self._displayunits + + @property + def edge(self) -> Dict[int, MeasurementEdgeItem]: + """Return the ``MEASUrement:EDGE`` command. + + Description: + - This command sets or queries the type of the edge for the measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``MEASUrement:EDGE value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:EDGE {RISE|FALL|BOTH} + ``` + + Info: + - ``FALL`` specifies the falling edge of the waveform. + - ``RISE`` specifies the rising edge of the waveform. + - ``BOTH`` specifies both a rising and falling edge of the waveform. + """ + return self._edge + + @property + def eyerender(self) -> MeasurementEyerender: + """Return the ``MEASUrement:EYERENDER`` command. + + Description: + - This command sets or queries the state of high-performance eye rendering for an eye + diagram. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:EYERENDER?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:EYERENDER?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:EYERENDER value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:EYERENDER {ON|OFF|} + - MEASUrement:EYERENDER? + ``` + + Info: + - ```` = 0 disables high-performance eye rendering for an eye diagram; any other + value turns this feature on. + - ``OFF`` disables high-performance eye rendering for an eye diagram. + - ``ON`` enables high-performance eye rendering for an eye diagram. + """ + return self._eyerender + + @property + def filters(self) -> MeasurementFilters: + """Return the ``MEASUrement:FILTers`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:FILTers?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:FILTers?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.blankingtime``: The ``MEASUrement:FILTers:BLANKingtime`` command. + - ``.highpass``: The ``MEASUrement:FILTers:HIGHPass`` command tree. + - ``.lowpass``: The ``MEASUrement:FILTers:LOWPass`` command tree. + - ``.ramptime``: The ``MEASUrement:FILTers:RAMPtime`` command. + """ + return self._filters + + @property + def gating(self) -> MeasurementGating: + """Return the ``MEASUrement:GATing`` command. + + Description: + - This command sets or queries the global gating type for the measurement. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:GATing?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:GATing?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:GATing value`` command. + + SCPI Syntax: + ``` + - MEASUrement:GATing {NONE|SCREEN|CURSor|LOGic|SEARch|TIMe} + - MEASUrement:GATing? + ``` + + Info: + - ``NONE`` turns off measurement gating. + - ``SCREen`` turns on gating, using the left and right edges of the screen. + - ``CURSor`` limits measurements to the portion of the waveform between the vertical bar + cursors, even if they are off screen. + - ``LOGic`` specifies that measurements are taken only on the portion of the waveform + where the logic source is in the active state. + - ``SEARCH`` specifies that measurements are taken based on search criteria. + - ``TIMe`` limits measurements to the portion of the waveform between the Start and End + gate times. + + Sub-properties: + - ``.active``: The ``MEASUrement:GATing:ACTive`` command. + - ``.endtime``: The ``MEASUrement:GATing:ENDtime`` command. + - ``.hysteresis``: The ``MEASUrement:GATing:HYSTeresis`` command. + - ``.logicsource``: The ``MEASUrement:GATing:LOGICSource`` command. + - ``.midref``: The ``MEASUrement:GATing:MIDRef`` command. + - ``.searchsource``: The ``MEASUrement:GATing:SEARCHSource`` command. + - ``.starttime``: The ``MEASUrement:GATing:STARTtime`` command. + """ + return self._gating + + @property + def highlevel(self) -> MeasurementHighlevel: + """Return the ``MEASUrement:HIGHLEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:HIGHLEVel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:HIGHLEVel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.configuration``: The ``MEASUrement:HIGHLEVel:CONFIGuration`` command. + - ``.edgequalifier``: The ``MEASUrement:HIGHLEVel:EDGEQUALifier`` command. + - ``.inlowpass``: The ``MEASUrement:HIGHLEVel:INLOWPass`` command tree. + - ``.l2ltol2n``: The ``MEASUrement:HIGHLEVel:L2LTOL2N`` command. + - ``.lineselected``: The ``MEASUrement:HIGHLEVel:LINESelected`` command. + - ``.outedgequalifier``: The ``MEASUrement:HIGHLEVel:OUTEDGEQUALifier`` command. + - ``.outl2ltol2n``: The ``MEASUrement:HIGHLEVel:OUTL2LTOL2N`` command. + - ``.outlineselected``: The ``MEASUrement:HIGHLEVel:OUTLINESelected`` command. + - ``.outlowpass``: The ``MEASUrement:HIGHLEVel:OUTLOWPass`` command tree. + - ``.outsource``: The ``MEASUrement:HIGHLEVel:OUTSOURCE`` command. + - ``.outwiring``: The ``MEASUrement:HIGHLEVel:OUTWIRing`` command. + - ``.source``: The ``MEASUrement:HIGHLEVel:SOURCE`` command. + - ``.wiring``: The ``MEASUrement:HIGHLEVel:WIRing`` command. + """ + return self._highlevel + + @property + def interp(self) -> MeasurementInterp: + """Return the ``MEASUrement:INTERp`` command. + + Description: + - This command sets or queries the interpolation mode used to locate edge crossings. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:INTERp?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:INTERp?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:INTERp value`` command. + + SCPI Syntax: + ``` + - MEASUrement:INTERp {AUTO|SINX|LINear} + - MEASUrement:INTERp? + ``` + + Info: + - ``AUTO`` automatically selects the interpolation mode. + - ``SINX`` specifies sin(x)/x interpolation, where acquired points are fit to a curve. + - ``LINear`` specifies linear interpolation, where acquired points are connected with + straight lines. + """ + return self._interp + + @property + def jittermodel(self) -> MeasurementJittermodel: + """Return the ``MEASUrement:JITTermodel`` command. + + Description: + - This command sets or queries the model used to separate random from deterministic + jitter for jitter measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:JITTermodel?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:JITTermodel?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:JITTermodel value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:JITTermodel {SPECTRAL|SPECTRALBUJ} + - MEASUrement:JITTermodel? + ``` + + Info: + - ``SPECTRAL`` sets the jitter separation model to spectral only. + - ``SPECTRALBUJ`` sets the jitter separation model to spectral plus BUJ. + """ + return self._jittermodel + + @property + def list(self) -> MeasurementList: + """Return the ``MEASUrement:LIST`` command. + + Description: + - This query returns a comma separated list of all currently defined measurements. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:LIST?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement:LIST? + ``` + """ + return self._list + + @property + def lockrj(self) -> MeasurementLockrj: + """Return the ``MEASUrement:LOCKRJ`` command. + + Description: + - This command sets or queries the state of RJ locking. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:LOCKRJ?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:LOCKRJ?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:LOCKRJ value`` command. + + SCPI Syntax: + ``` + - MEASUrement:LOCKRJ {ON|OFF|} + - MEASUrement:LOCKRJ? + ``` + + Info: + - ``MEAS`` specifies the measurement number. + - ``ON`` indicates that RJ locking is active. + - ``OFF`` indicates that RJ locking is off. + - ```` a 0 turns off RJ locking; any other value activates RJ locking. + """ + return self._lockrj + + @property + def lockrjvalue(self) -> MeasurementLockrjvalue: + """Return the ``MEASUrement:LOCKRJValue`` command. + + Description: + - This command sets or queries the RJ lock value. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:LOCKRJValue?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:LOCKRJValue?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:LOCKRJValue value`` + command. + + SCPI Syntax: + ``` + - MEASUrement:LOCKRJValue + - MEASUrement:LOCKRJValue? + ``` + + Info: + - ```` default value = 1e-12; minimum value = 1e-15; maximum value = 1. + """ + return self._lockrjvalue + + @property + def math(self) -> Dict[int, MeasurementMathItem]: + """Return the ``MEASUrement:MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MATH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MATH`` specifies the math number. + + Sub-properties: + - ``.reflevels``: The ``MEASUrement:MATH:REFLevels`` command tree. + """ + return self._math + + @property + def meas(self) -> Dict[int, MeasurementMeasItem]: + """Return the ``MEASUrement:MEAS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEAS?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEAS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``MEAS`` specifies the measurement number. + + Sub-properties: + - ``.ber``: The ``MEASUrement:MEAS:BER`` command. + - ``.bin``: The ``MEASUrement:MEAS:BIN`` command. + - ``.bitcfgmode``: The ``MEASUrement:MEAS:BITCfgmode`` command. + - ``.bitend``: The ``MEASUrement:MEAS:BITEnd`` command. + - ``.bitpcnt``: The ``MEASUrement:MEAS:BITPcnt`` command. + - ``.bitstart``: The ``MEASUrement:MEAS:BITSTart`` command. + - ``.bittype``: The ``MEASUrement:MEAS:BITType`` command. + - ``.burstedgtype``: The ``MEASUrement:MEAS:BURSTEDGTYPe`` command. + - ``.ccresults``: The ``MEASUrement:MEAS:CCRESUlts`` command tree. + - ``.clockrecovery``: The ``MEASUrement:MEAS:CLOCKRecovery`` command tree. + - ``.commonmode``: The ``MEASUrement:MEAS:COMMONMode`` command tree. + - ``.cover``: The ``MEASUrement:MEAS:COVer`` command. + - ``.customlimitsfile``: The ``MEASUrement:MEAS:CUSTOMLIMITSFile`` command. + - ``.cyclemode``: The ``MEASUrement:MEAS:CYCLemode`` command. + - ``.delay``: The ``MEASUrement:MEAS:DELay`` command tree. + - ``.displaystat``: The ``MEASUrement:MEAS:DISPlaystat`` command tree. + - ``.edge``: The ``MEASUrement:MEAS:EDGE`` command. + - ``.edgeincre``: The ``MEASUrement:MEAS:EDGEIncre`` command. + - ``.edgequalone``: The ``MEASUrement:MEAS:EDGEQUALONE`` command. + - ``.edgequaltwo``: The ``MEASUrement:MEAS:EDGEQUALTWO`` command. + - ``.edgequalifier``: The ``MEASUrement:MEAS:EDGEQUALifier`` command. + - ``.edges``: The ``MEASUrement:MEAS:EDGES`` command tree. + - ``.eequal``: The ``MEASUrement:MEAS:EEQUal`` command. + - ``.failcount``: The ``MEASUrement:MEAS:FAILCount`` command. + - ``.filterrangefrom``: The ``MEASUrement:MEAS:FILTERRANGEFROM`` command. + - ``.filterrangeto``: The ``MEASUrement:MEAS:FILTERRANGETO`` command. + - ``.filters``: The ``MEASUrement:MEAS:FILTers`` command tree. + - ``.freq``: The ``MEASUrement:MEAS:FREQ`` command. + - ``.fromedgesearchdirect``: The ``MEASUrement:MEAS:FROMEDGESEARCHDIRect`` command. + - ``.fromsymbol``: The ``MEASUrement:MEAS:FROMSymbol`` command tree. + - ``.fromedge``: The ``MEASUrement:MEAS:FROMedge`` command. + - ``.fundcurrent``: The ``MEASUrement:MEAS:FUNDCURRent`` command. + - ``.gating``: The ``MEASUrement:MEAS:GATing`` command. + - ``.globalref``: The ``MEASUrement:MEAS:GLOBalref`` command. + - ``.harmonicsclass``: The ``MEASUrement:MEAS:HARMONICSCLass`` command. + - ``.harmonicssource``: The ``MEASUrement:MEAS:HARMONICSSOURce`` command. + - ``.harmonicsstd``: The ``MEASUrement:MEAS:HARMONICSStd`` command. + - ``.harmonicsunits``: The ``MEASUrement:MEAS:HARMONICSUNits`` command. + - ``.highlevel``: The ``MEASUrement:MEAS:HIGHLEVel`` command tree. + - ``.highrefvoltage``: The ``MEASUrement:MEAS:HIGHREFVoltage`` command. + - ``.hlevel``: The ``MEASUrement:MEAS:HLEVel`` command tree. + - ``.htorque``: The ``MEASUrement:MEAS:HTORque`` command. + - ``.hvoltage``: The ``MEASUrement:MEAS:HVOLtage`` command. + - ``.idletime``: The ``MEASUrement:MEAS:IDLETime`` command. + - ``.inputlevel``: The ``MEASUrement:MEAS:INPUTLEVel`` command. + - ``.inputpower``: The ``MEASUrement:MEAS:INPUTPOwer`` command. + - ``.jittersummary``: The ``MEASUrement:MEAS:JITTERSummary`` command tree. + - ``.label``: The ``MEASUrement:MEAS:LABel`` command. + - ``.lineselected``: The ``MEASUrement:MEAS:LINESelected`` command. + - ``.lowrefvoltage``: The ``MEASUrement:MEAS:LOWREFVoltage`` command. + - ``.ltorque``: The ``MEASUrement:MEAS:LTORque`` command. + - ``.ltype``: The ``MEASUrement:MEAS:LTYPe`` command. + - ``.lunits``: The ``MEASUrement:MEAS:LUNITs`` command. + - ``.lvoltage``: The ``MEASUrement:MEAS:LVOLtage`` command. + - ``.maxcurrent``: The ``MEASUrement:MEAS:MAXCUrrent`` command. + - ``.maxcycle``: The ``MEASUrement:MEAS:MAXCycle`` command. + - ``.maxgvoltage``: The ``MEASUrement:MEAS:MAXGVoltage`` command. + - ``.maxvoltage``: The ``MEASUrement:MEAS:MAXVoltage`` command. + - ``.measrange``: The ``MEASUrement:MEAS:MEASRange`` command tree. + - ``.mech``: The ``MEASUrement:MEAS:MECH`` command tree. + - ``.mincycle``: The ``MEASUrement:MEAS:MINCycle`` command. + - ``.oddeven``: The ``MEASUrement:MEAS:ODDEVen`` command. + - ``.ofilters``: The ``MEASUrement:MEAS:OFILters`` command tree. + - ``.osangle``: The ``MEASUrement:MEAS:OSANgle`` command. + - ``.outedgequalifier``: The ``MEASUrement:MEAS:OUTEDGEQUALifier`` command. + - ``.outfilters``: The ``MEASUrement:MEAS:OUTFILTers`` command tree. + - ``.outputvoltage``: The ``MEASUrement:MEAS:OUTPUTVOLTage`` command. + - ``.passfailenabled``: The ``MEASUrement:MEAS:PASSFAILENabled`` command. + - ``.passfailhighlimit``: The ``MEASUrement:MEAS:PASSFAILHIGHlimit`` command. + - ``.passfaillimit``: The ``MEASUrement:MEAS:PASSFAILLIMit`` command. + - ``.passfaillowlimit``: The ``MEASUrement:MEAS:PASSFAILLOWlimit`` command. + - ``.passfailmargin``: The ``MEASUrement:MEAS:PASSFAILMARgin`` command. + - ``.passfailwhen``: The ``MEASUrement:MEAS:PASSFAILWHEN`` command. + - ``.patterndetection``: The ``MEASUrement:MEAS:PATTERNDETECTION`` command. + - ``.patternlength``: The ``MEASUrement:MEAS:PATTERNLENgth`` command. + - ``.patterntype``: The ``MEASUrement:MEAS:PATTERNTYPe`` command. + - ``.pcount``: The ``MEASUrement:MEAS:PCOUNt`` command. + - ``.perfreq``: The ``MEASUrement:MEAS:PERFREQ`` command tree. + - ``.polarity``: The ``MEASUrement:MEAS:POLarity`` command. + - ``.population``: The ``MEASUrement:MEAS:POPUlation`` command tree. + - ``.powerfactor``: The ``MEASUrement:MEAS:POWERFACtor`` command. + - ``.pregion``: The ``MEASUrement:MEAS:PREGion`` command. + - ``.pwidth``: The ``MEASUrement:MEAS:PWIDth`` command. + - ``.redge``: The ``MEASUrement:MEAS:REDGe`` command. + - ``.reflevels``: The ``MEASUrement:MEAS:REFLevels`` command tree. + - ``.reflevels1``: The ``MEASUrement:MEAS:REFLevels1`` command tree. + - ``.refmode``: The ``MEASUrement:MEAS:REFMode`` command. + - ``.refvoltageval``: The ``MEASUrement:MEAS:REFVOLTAGEVal`` command. + - ``.refvoltage``: The ``MEASUrement:MEAS:REFVoltage`` command. + - ``.results``: The ``MEASUrement:MEAS:RESUlts`` command tree. + - ``.ripplefreqval``: The ``MEASUrement:MEAS:RIPPLEFREQVal`` command. + - ``.sequence``: The ``MEASUrement:MEAS:SEQuence`` command. + - ``.signalfrequency``: The ``MEASUrement:MEAS:SIGNALFREQUEncy`` command. + - ``.signaltype``: The ``MEASUrement:MEAS:SIGNALType`` command. + - ``.slabs``: The ``MEASUrement:MEAS:SLABs`` command. + - ``.slpct``: The ``MEASUrement:MEAS:SLPCt`` command. + - ``.sltype``: The ``MEASUrement:MEAS:SLTYpe`` command. + - ``.smoothingfilter``: The ``MEASUrement:MEAS:SMOOTHINGFILTER`` command. + - ``.source``: The ``MEASUrement:MEAS:SOURCE`` command. + - ``.source1``: The ``MEASUrement:MEAS:SOUrce1`` command. + - ``.ssc``: The ``MEASUrement:MEAS:SSC`` command tree. + - ``.status``: The ``MEASUrement:MEAS:STATUS`` command. + - ``.stlabs``: The ``MEASUrement:MEAS:STLABs`` command. + - ``.stlpct``: The ``MEASUrement:MEAS:STLPct`` command. + - ``.stype``: The ``MEASUrement:MEAS:STYPe`` command. + - ``.sunits``: The ``MEASUrement:MEAS:SUNits`` command. + - ``.tckavg``: The ``MEASUrement:MEAS:TCKAVG`` command. + - ``.tconstant``: The ``MEASUrement:MEAS:TCONstant`` command. + - ``.timingmode``: The ``MEASUrement:MEAS:TIMINGMode`` command. + - ``.tmethod``: The ``MEASUrement:MEAS:TMEThod`` command. + - ``.toedgesearchdirect``: The ``MEASUrement:MEAS:TOEDGESEARCHDIRect`` command. + - ``.toedge``: The ``MEASUrement:MEAS:TOEdge`` command. + - ``.tosymbol``: The ``MEASUrement:MEAS:TOSYmbol`` command tree. + - ``.transition``: The ``MEASUrement:MEAS:TRANSition`` command. + - ``.type``: The ``MEASUrement:MEAS:TYPe`` command. + - ``.waittime``: The ``MEASUrement:MEAS:WAITTime`` command. + - ``.windowlength``: The ``MEASUrement:MEAS:WINDOWLENgth`` command. + - ``.xunit``: The ``MEASUrement:MEAS:XUNIT`` command. + - ``.yunit``: The ``MEASUrement:MEAS:YUNIT`` command. + - ``.stltype``: The ``MEASUrement:MEAS:STLTYpe`` command. + """ + return self._meas + + @property + def measrange(self) -> MeasurementMeasrange: + """Return the ``MEASUrement:MEASRange`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MEASRange?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MEASRange?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.max``: The ``MEASUrement:MEASRange:MAX`` command. + - ``.min``: The ``MEASUrement:MEASRange:MIN`` command. + - ``.state``: The ``MEASUrement:MEASRange:STATE`` command. + """ + return self._measrange + + @property + def mech(self) -> MeasurementMech: + """Return the ``MEASUrement:MECH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MECH?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MECH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.eindexz``: The ``MEASUrement:MECH:EINDexz`` command. + - ``.gratio``: The ``MEASUrement:MECH:GRATio`` command. + - ``.munits``: The ``MEASUrement:MECH:MUNits`` command. + - ``.ppairs``: The ``MEASUrement:MECH:PPAirs`` command. + - ``.pprotation``: The ``MEASUrement:MECH:PPRotation`` command. + - ``.source1``: The ``MEASUrement:MECH:SOUrce1`` command. + - ``.stype``: The ``MEASUrement:MECH:STYPe`` command. + """ + return self._mech + + @property + def minui(self) -> MeasurementMinui: + """Return the ``MEASUrement:MINUI`` command. + + Description: + - This command sets or queries the minimum number of unit intervals required for BUJ + analysis. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:MINUI?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:MINUI?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MEASUrement:MINUI value`` command. + + SCPI Syntax: + ``` + - MEASUrement:MINUI + - MEASUrement:MINUI? + ``` + + Info: + - ```` is the minimum number of unit intervals required for BUJ analysis. + """ + return self._minui + + @property + def population(self) -> MeasurementPopulation: + """Return the ``MEASUrement:POPUlation`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:POPUlation?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:POPUlation?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.limit``: The ``MEASUrement:POPUlation:LIMIT`` command tree. + """ + return self._population + + @property + def ref(self) -> Dict[int, MeasurementRefItem]: + """Return the ``MEASUrement:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REF?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.reflevels``: The ``MEASUrement:REF:REFLevels`` command tree. + """ + return self._ref + + @property + def reflevels(self) -> MeasurementReflevels: + """Return the ``MEASUrement:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:REFLevels?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.absolute``: The ``MEASUrement:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``MEASUrement:REFLevels:BASETop`` command. + - ``.jittermode``: The ``MEASUrement:REFLevels:JITTERMODE`` command. + - ``.method``: The ``MEASUrement:REFLevels:METHod`` command. + - ``.mode``: The ``MEASUrement:REFLevels:MODE`` command. + - ``.percent``: The ``MEASUrement:REFLevels:PERCent`` command tree. + - ``.type``: The ``MEASUrement:REFLevels:TYPE`` command. + """ + return self._reflevels + + @property + def results(self) -> MeasurementResults: + """Return the ``MEASUrement:RESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:RESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:RESUlts?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.history``: The ``MEASUrement:RESUlts:HISTory`` command tree. + """ + return self._results + + @property + def statistics(self) -> MeasurementStatistics: + """Return the ``MEASUrement:STATIstics`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:STATIstics?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:STATIstics?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.cyclemode``: The ``MEASUrement:STATIstics:CYCLEMode`` command. + """ + return self._statistics + + @property + def wbg(self) -> MeasurementWbg: + """Return the ``MEASUrement:WBG`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement:WBG?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement:WBG?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.pdevice``: The ``MEASUrement:WBG:PDEVice`` command. + """ + return self._wbg diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/plot.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/plot.py new file mode 100644 index 00000000..07eb184e --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/plot.py @@ -0,0 +1,2209 @@ +# pylint: disable=line-too-long +"""The plot commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - PLOT:ADDNew + - PLOT:DELete + - PLOT:LIST? + - PLOT:PLOT:BATHtub:BER + - PLOT:PLOT:BATHtub:BER? + - PLOT:PLOT:BATHtub:XAXISUnits {UNITIntervals|SECOnds} + - PLOT:PLOT:BATHtub:XAXISUnits? + - PLOT:PLOT:BITType {ALLBits|TRANSition|NONTRANsition} + - PLOT:PLOT:BITType? + - PLOT:PLOT:EXPORTRaw? + - PLOT:PLOT:EXTENDuis + - PLOT:PLOT:EXTENDuis? + - PLOT:PLOT:EYERender {FAst|COMPlete} + - PLOT:PLOT:EYERender? + - PLOT:PLOT:IMDA:MEAS {VRMS|IRMS|PHASE|FREQuency|TRPWR|REPWR|APPPWR|TRPWRSUM|REPWRSUM|APPPWRSUM|DCPWR|INPWR|OUTPWR|EFFiciency|TOTALEFFiciency|INPWRSUM|OUTPWRSUM} + - PLOT:PLOT:IMDA:MEAS? + - PLOT:PLOT:IMDAPLOTDisplay {ALL|ONEPAIRVI|ONEPAIRV|ONEPAIRI|PHASEONE|PHASETWO|PHASETHREE|ABC|DQ0} + - PLOT:PLOT:IMDAPLOTDisplay? + - PLOT:PLOT:LABel:COLor + - PLOT:PLOT:LABel:COLor? + - PLOT:PLOT:LABel:FONT:BOLD {ON|OFF|} + - PLOT:PLOT:LABel:FONT:BOLD? + - PLOT:PLOT:LABel:FONT:ITALic {ON|OFF|} + - PLOT:PLOT:LABel:FONT:ITALic? + - PLOT:PLOT:LABel:FONT:SIZE + - PLOT:PLOT:LABel:FONT:SIZE? + - PLOT:PLOT:LABel:FONT:TYPE + - PLOT:PLOT:LABel:FONT:TYPE? + - PLOT:PLOT:LABel:FONT:UNDERline {ON|OFF|} + - PLOT:PLOT:LABel:FONT:UNDERline? + - PLOT:PLOT:LABel:NAMe + - PLOT:PLOT:LABel:NAMe? + - PLOT:PLOT:LABel:XPOS + - PLOT:PLOT:LABel:XPOS? + - PLOT:PLOT:LABel:YPOS + - PLOT:PLOT:LABel:YPOS? + - PLOT:PLOT:MASK? + - PLOT:PLOT:MASKOffset:HORizontal:AUTOfit {ON|OFF} + - PLOT:PLOT:MASKOffset:HORizontal:AUTOfit? + - PLOT:PLOT:MASKOffset:PERCENTui:FROM + - PLOT:PLOT:MASKOffset:PERCENTui:FROM? + - PLOT:PLOT:MASKOffset:PERCENTui:TO + - PLOT:PLOT:MASKOffset:PERCENTui:TO? + - PLOT:PLOT:NUMBins {TWENtyfive|FIFTY|HUNdred|TWOFifty|FIVEHundred|TWOThousand|MAXimum} + - PLOT:PLOT:NUMBins? + - PLOT:PLOT:PTYPe {RMS|MAGNITUDE} + - PLOT:PLOT:PTYPe? + - PLOT:PLOT:RAILNUM RAIL + - PLOT:PLOT:RAILNUM? + - PLOT:PLOT:SOUrce1 MEAS + - PLOT:PLOT:SOUrce1? + - PLOT:PLOT:SPECtrum:BASE + - PLOT:PLOT:SPECtrum:BASE? + - PLOT:PLOT:SPECtrum:DYNRange + - PLOT:PLOT:SPECtrum:DYNRange? + - PLOT:PLOT:TYPe {NONE|BATHTUB|EYEDIAGRAM|HARMONICS|HISTOGRAM|IMDATIMETREND|IMDAACQTREND|INDUCTANCE|IVSINTEGRALV|MAGPROPERTY|PHASENOISE|PHASOR|SOA|SPECTRUM|SSCPROFILE|SWL|TIEHISTOGRAM|TIETIMETREND|TIESPECTRUM|TIMETREND|XY|XYZ} + ``` +""" # noqa: E501 + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class PlotPlotItemType(SCPICmdWrite): + """The ``PLOT:PLOT:TYPe`` command. + + Description: + - This command sets or returns the current plot type of the specified plot. + + Usage: + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:TYPe value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:TYPe {NONE|BATHTUB|EYEDIAGRAM|HARMONICS|HISTOGRAM|IMDATIMETREND|IMDAACQTREND|INDUCTANCE|IVSINTEGRALV|MAGPROPERTY|PHASENOISE|PHASOR|SOA|SPECTRUM|SSCPROFILE|SWL|TIEHISTOGRAM|TIETIMETREND|TIESPECTRUM|TIMETREND|XY|XYZ} + ``` + + Info: + - ```` is the plot number. This is the equivalent of the number shown on a plot heading + in the UI. + - ``NONE`` does not create a plot. + - ``BATHTUB`` creates a bathtub plot. + - ``EYEDIAGRAM`` creates an eye diagram. This plot type is not available on a 4 Series MSO + instrument. + - ``HARMONICS`` creates a harmonics bar graph. + - ``HISTOGRAM`` creates a histogram plot. + - ``IMDATIMETREND`` creates a IMDA time trend plot. This plot type requires option IMDA. + - ``IMDAACQTREND`` creates a IMDA acq trend plot. This plot type requires option IMDA. + - ``INDUCTANCE`` creates a inductance plot. + - ``IVSINTEGRALV`` creates a I vs. ∫V plot. + - ``PHASENOISE`` creates a phase noise plot. + - ``PHASOR`` creates the Phasor Diagram. This plot type requires option 5-DPM on MSO58/56 + series instruments. + - ``MAGPROPERTY`` creates a BH curve. + - ``SOA`` creates an SOA plot. + - ``SPECTRUM`` creates a spectrum plot. + - ``SSCPROFILE`` creates a SSC profile plot. + - ``SWL`` creates a Switching Loss plot. + - ``TIEHISTOGRAM`` creates a TIE histogram plot. + - ``TIESPECTRUM`` creates a TIE spectrum plot. + - ``TIETIMETREND`` creates a TIE time trend plot. + - ``TIMETREND`` creates a time trend plot. + - ``XY`` creates a XY plot. + - ``XYZ`` creates a XYZ plot. + """ # noqa: E501 + + +class PlotPlotItemSpectrumDynrange(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:SPECtrum:DYNRange`` command. + + Description: + - This command sets or queries the dynamic range value. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:SPECtrum:DYNRange?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:SPECtrum:DYNRange?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:SPECtrum:DYNRange value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:SPECtrum:DYNRange + - PLOT:PLOT:SPECtrum:DYNRange? + ``` + + Info: + - ```` is the dynamic range value. + """ + + +class PlotPlotItemSpectrumBase(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:SPECtrum:BASE`` command. + + Description: + - This command sets or queries the spectrum base. Undefined for non-spectrum plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:SPECtrum:BASE?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:SPECtrum:BASE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:SPECtrum:BASE value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:SPECtrum:BASE + - PLOT:PLOT:SPECtrum:BASE? + ``` + + Info: + - ```` is the spectrum base. + """ + + +class PlotPlotItemSpectrum(SCPICmdRead): + """The ``PLOT:PLOT:SPECtrum`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:SPECtrum?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:SPECtrum?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.base``: The ``PLOT:PLOT:SPECtrum:BASE`` command. + - ``.dynrange``: The ``PLOT:PLOT:SPECtrum:DYNRange`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._base = PlotPlotItemSpectrumBase(device, f"{self._cmd_syntax}:BASE") + self._dynrange = PlotPlotItemSpectrumDynrange(device, f"{self._cmd_syntax}:DYNRange") + + @property + def base(self) -> PlotPlotItemSpectrumBase: + """Return the ``PLOT:PLOT:SPECtrum:BASE`` command. + + Description: + - This command sets or queries the spectrum base. Undefined for non-spectrum plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:SPECtrum:BASE?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:SPECtrum:BASE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:SPECtrum:BASE value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:SPECtrum:BASE + - PLOT:PLOT:SPECtrum:BASE? + ``` + + Info: + - ```` is the spectrum base. + """ + return self._base + + @property + def dynrange(self) -> PlotPlotItemSpectrumDynrange: + """Return the ``PLOT:PLOT:SPECtrum:DYNRange`` command. + + Description: + - This command sets or queries the dynamic range value. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:SPECtrum:DYNRange?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:SPECtrum:DYNRange?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:SPECtrum:DYNRange value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:SPECtrum:DYNRange + - PLOT:PLOT:SPECtrum:DYNRange? + ``` + + Info: + - ```` is the dynamic range value. + """ + return self._dynrange + + +class PlotPlotItemSource1(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:SOUrce1`` command. + + Description: + - This command sets or queries the plot source. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:SOUrce1?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:SOUrce1?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:SOUrce1 value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:SOUrce1 MEAS + - PLOT:PLOT:SOUrce1? + ``` + + Info: + - ``MEAS`` is the specified measurement source for the specified plot. + """ + + +class PlotPlotItemRailnum(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:RAILNUM`` command. + + Description: + - Sets the DPM histogram source. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:RAILNUM?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:RAILNUM?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:RAILNUM value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:RAILNUM RAIL + - PLOT:PLOT:RAILNUM? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``Rail`` is the rail number. x has a minimum of 1 and a maximum of 7. + """ + + +class PlotPlotItemPtype(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:PTYPe`` command. + + Description: + - This command sets or returns the phasor type of the phasor diagram plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:PTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:PTYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:PTYPe value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:PTYPe {RMS|MAGNITUDE} + - PLOT:PLOT:PTYPe? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``RMS`` sets the phasor type to RMS. + - ``MAGNITUDE`` sets the phasor type to MAGNITUDE. + """ + + +class PlotPlotItemNumbins(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:NUMBins`` command. + + Description: + - This command sets or queries the current histogram resolution. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:NUMBins?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:NUMBins?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:NUMBins value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:NUMBins {TWENtyfive|FIFTY|HUNdred|TWOFifty|FIVEHundred|TWOThousand|MAXimum} + - PLOT:PLOT:NUMBins? + ``` + + Info: + - ``TWENtyfive`` sets the number of bins to 25. + - ``FIFTY`` sets the number of bins to 50. + - ``HUNdred`` sets the number of bins to 100. + - ``TWOFifty`` sets the number of bins to 250. + - ``FIVEHundred`` sets the number of bins to 500. + - ``TWOThousand`` sets the number of bins to 2000. + - ``MAXimum`` sets the number of bins to the maximum value. + """ + + +class PlotPlotItemMaskoffsetPercentuiTo(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:MASKOffset:PERCENTui:TO`` command. + + Description: + - This command sets or queries the allowed range for the mask to move in the right + direction. Only applies to eye diagram plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASKOffset:PERCENTui:TO?`` + query. + - Using the ``.verify(value)`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui:TO?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui:TO value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:MASKOffset:PERCENTui:TO + - PLOT:PLOT:MASKOffset:PERCENTui:TO? + ``` + + Info: + - ``PLOT`` is the plot number. + - ```` is the allowed range in percentage for the mask to move in the right direction. + """ + + +class PlotPlotItemMaskoffsetPercentuiFrom(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:MASKOffset:PERCENTui:FROM`` command. + + Description: + - This command sets or queries the allowed range for the mask to move in the left direction. + Only applies to eye diagram plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASKOffset:PERCENTui:FROM?`` + query. + - Using the ``.verify(value)`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui:FROM value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:MASKOffset:PERCENTui:FROM + - PLOT:PLOT:MASKOffset:PERCENTui:FROM? + ``` + + Info: + - ``PLOT`` is the plot number. + - ```` is the allowed range in percentage for the mask to move in the left direction. + """ + + +class PlotPlotItemMaskoffsetPercentui(SCPICmdRead): + """The ``PLOT:PLOT:MASKOffset:PERCENTui`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASKOffset:PERCENTui?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:MASKOffset:PERCENTui?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Properties: + - ``.from``: The ``PLOT:PLOT:MASKOffset:PERCENTui:FROM`` command. + - ``.to``: The ``PLOT:PLOT:MASKOffset:PERCENTui:TO`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._from = PlotPlotItemMaskoffsetPercentuiFrom(device, f"{self._cmd_syntax}:FROM") + self._to = PlotPlotItemMaskoffsetPercentuiTo(device, f"{self._cmd_syntax}:TO") + + @property + def from_(self) -> PlotPlotItemMaskoffsetPercentuiFrom: + """Return the ``PLOT:PLOT:MASKOffset:PERCENTui:FROM`` command. + + Description: + - This command sets or queries the allowed range for the mask to move in the left + direction. Only applies to eye diagram plots. + + Usage: + - Using the ``.query()`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui:FROM?`` query. + - Using the ``.verify(value)`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui:FROM?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui:FROM value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:MASKOffset:PERCENTui:FROM + - PLOT:PLOT:MASKOffset:PERCENTui:FROM? + ``` + + Info: + - ``PLOT`` is the plot number. + - ```` is the allowed range in percentage for the mask to move in the left + direction. + """ + return self._from + + @property + def to(self) -> PlotPlotItemMaskoffsetPercentuiTo: + """Return the ``PLOT:PLOT:MASKOffset:PERCENTui:TO`` command. + + Description: + - This command sets or queries the allowed range for the mask to move in the right + direction. Only applies to eye diagram plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASKOffset:PERCENTui:TO?`` + query. + - Using the ``.verify(value)`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui:TO?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui:TO value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:MASKOffset:PERCENTui:TO + - PLOT:PLOT:MASKOffset:PERCENTui:TO? + ``` + + Info: + - ``PLOT`` is the plot number. + - ```` is the allowed range in percentage for the mask to move in the right + direction. + """ + return self._to + + +class PlotPlotItemMaskoffsetHorizontalAutofit(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit`` command. + + Description: + - This command enables or disables eye mask autofit in the specified plot. + + Usage: + - Using the ``.query()`` method will send the + ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit?`` query. + - Using the ``.verify(value)`` method will send the + ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:MASKOffset:HORizontal:AUTOfit {ON|OFF} + - PLOT:PLOT:MASKOffset:HORizontal:AUTOfit? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``ON`` enables eye mask autofit. + - ``OFF`` disables eye mask autofit. + """ + + +class PlotPlotItemMaskoffsetHorizontal(SCPICmdRead): + """The ``PLOT:PLOT:MASKOffset:HORizontal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASKOffset:HORizontal?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:MASKOffset:HORizontal?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Properties: + - ``.autofit``: The ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autofit = PlotPlotItemMaskoffsetHorizontalAutofit( + device, f"{self._cmd_syntax}:AUTOfit" + ) + + @property + def autofit(self) -> PlotPlotItemMaskoffsetHorizontalAutofit: + """Return the ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit`` command. + + Description: + - This command enables or disables eye mask autofit in the specified plot. + + Usage: + - Using the ``.query()`` method will send the + ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit?`` query. + - Using the ``.verify(value)`` method will send the + ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:MASKOffset:HORizontal:AUTOfit {ON|OFF} + - PLOT:PLOT:MASKOffset:HORizontal:AUTOfit? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``ON`` enables eye mask autofit. + - ``OFF`` disables eye mask autofit. + """ + return self._autofit + + +class PlotPlotItemMaskoffset(SCPICmdRead): + """The ``PLOT:PLOT:MASKOffset`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASKOffset?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:MASKOffset?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Properties: + - ``.horizontal``: The ``PLOT:PLOT:MASKOffset:HORizontal`` command tree. + - ``.percentui``: The ``PLOT:PLOT:MASKOffset:PERCENTui`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._horizontal = PlotPlotItemMaskoffsetHorizontal( + device, f"{self._cmd_syntax}:HORizontal" + ) + self._percentui = PlotPlotItemMaskoffsetPercentui(device, f"{self._cmd_syntax}:PERCENTui") + + @property + def horizontal(self) -> PlotPlotItemMaskoffsetHorizontal: + """Return the ``PLOT:PLOT:MASKOffset:HORizontal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASKOffset:HORizontal?`` + query. + - Using the ``.verify(value)`` method will send the + ``PLOT:PLOT:MASKOffset:HORizontal?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Sub-properties: + - ``.autofit``: The ``PLOT:PLOT:MASKOffset:HORizontal:AUTOfit`` command. + """ + return self._horizontal + + @property + def percentui(self) -> PlotPlotItemMaskoffsetPercentui: + """Return the ``PLOT:PLOT:MASKOffset:PERCENTui`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASKOffset:PERCENTui?`` + query. + - Using the ``.verify(value)`` method will send the + ``PLOT:PLOT:MASKOffset:PERCENTui?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Sub-properties: + - ``.from``: The ``PLOT:PLOT:MASKOffset:PERCENTui:FROM`` command. + - ``.to``: The ``PLOT:PLOT:MASKOffset:PERCENTui:TO`` command. + """ + return self._percentui + + +class PlotPlotItemMask(SCPICmdRead): + """The ``PLOT:PLOT:MASK`` command. + + Description: + - This command returns the name of the mask test associated with the specified eye diagram + plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASK?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:MASK?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - PLOT:PLOT:MASK? + ``` + + Info: + - ``PLOT`` is the plot number. + """ + + +class PlotPlotItemLabelYpos(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:YPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:YPOS value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:YPOS + - PLOT:PLOT:LABel:YPOS? + ``` + + Info: + - ```` is the x-position, in pixels relative to the baseline of the waveform, of the + label. + """ + + +class PlotPlotItemLabelXpos(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:LABel:XPOS`` command. + + Description: + - This command sets or queries the x-position of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:XPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:XPOS value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:XPOS + - PLOT:PLOT:LABel:XPOS? + ``` + + Info: + - ```` is the y-position, in pixels relative to the left edge of the display, of the + label. + """ + + +class PlotPlotItemLabelName(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:LABel:NAMe`` command. + + Description: + - This command sets or queries the specified trend's label. This command/query only applies + to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:NAMe + - PLOT:PLOT:LABel:NAMe? + ``` + + Info: + - ```` is the label. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class PlotPlotItemLabelFontUnderline(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:UNDERline?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT:UNDERline?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:UNDERline {ON|OFF|} + - PLOT:PLOT:LABel:FONT:UNDERline? + ``` + + Info: + - ```` = 0 disables underline font; any other value turns this feature on. + - ``OFF`` disables underline font. + - ``ON`` enables underline font. + """ + + +class PlotPlotItemLabelFontType(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified trend label, such as Arial or + Times New Roman. This command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:TYPE + - PLOT:PLOT:LABel:FONT:TYPE? + ``` + + Info: + - ```` is the font type: Times New Roman, Arial, Frutiger LT Std 55 Roman, DejaVu + Sans, DejaVu Sans Mono, Frutiger LT Std, Monospace, Sans Serif, Serif, Ubuntu, Ubuntu + Condensed, and Ubuntu Mono. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class PlotPlotItemLabelFontSize(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT:SIZE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:SIZE + - PLOT:PLOT:LABel:FONT:SIZE? + ``` + + Info: + - ```` is the font size. + """ + + +class PlotPlotItemLabelFontItalic(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT:ITALic?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:ITALic {ON|OFF|} + - PLOT:PLOT:LABel:FONT:ITALic? + ``` + + Info: + - ```` = 0 disables italic font; any other value turns this feature on. + - ``OFF`` disables italic font. + - ``ON`` enables italic font. + """ + + +class PlotPlotItemLabelFontBold(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT:BOLD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:BOLD {ON|OFF|} + - PLOT:PLOT:LABel:FONT:BOLD? + ``` + + Info: + - ```` = 0 disables bold font; any other value turns this feature on. + - ``OFF`` disables bold font. + - ``ON`` enables bold font. + """ + + +class PlotPlotItemLabelFont(SCPICmdRead): + """The ``PLOT:PLOT:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bold``: The ``PLOT:PLOT:LABel:FONT:BOLD`` command. + - ``.italic``: The ``PLOT:PLOT:LABel:FONT:ITALic`` command. + - ``.size``: The ``PLOT:PLOT:LABel:FONT:SIZE`` command. + - ``.type``: The ``PLOT:PLOT:LABel:FONT:TYPE`` command. + - ``.underline``: The ``PLOT:PLOT:LABel:FONT:UNDERline`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = PlotPlotItemLabelFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = PlotPlotItemLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") + self._size = PlotPlotItemLabelFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = PlotPlotItemLabelFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = PlotPlotItemLabelFontUnderline(device, f"{self._cmd_syntax}:UNDERline") + + @property + def bold(self) -> PlotPlotItemLabelFontBold: + """Return the ``PLOT:PLOT:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT:BOLD?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:LABel:FONT:BOLD value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:BOLD {ON|OFF|} + - PLOT:PLOT:LABel:FONT:BOLD? + ``` + + Info: + - ```` = 0 disables bold font; any other value turns this feature on. + - ``OFF`` disables bold font. + - ``ON`` enables bold font. + """ + return self._bold + + @property + def italic(self) -> PlotPlotItemLabelFontItalic: + """Return the ``PLOT:PLOT:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT:ITALic?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:LABel:FONT:ITALic value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:ITALic {ON|OFF|} + - PLOT:PLOT:LABel:FONT:ITALic? + ``` + + Info: + - ```` = 0 disables italic font; any other value turns this feature on. + - ``OFF`` disables italic font. + - ``ON`` enables italic font. + """ + return self._italic + + @property + def size(self) -> PlotPlotItemLabelFontSize: + """Return the ``PLOT:PLOT:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT:SIZE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:LABel:FONT:SIZE value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:SIZE + - PLOT:PLOT:LABel:FONT:SIZE? + ``` + + Info: + - ```` is the font size. + """ + return self._size + + @property + def type(self) -> PlotPlotItemLabelFontType: + """Return the ``PLOT:PLOT:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified trend label, such as Arial + or Times New Roman. This command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:LABel:FONT:TYPE value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:TYPE + - PLOT:PLOT:LABel:FONT:TYPE? + ``` + + Info: + - ```` is the font type: Times New Roman, Arial, Frutiger LT Std 55 Roman, + DejaVu Sans, DejaVu Sans Mono, Frutiger LT Std, Monospace, Sans Serif, Serif, Ubuntu, + Ubuntu Condensed, and Ubuntu Mono. + """ + return self._type + + @property + def underline(self) -> PlotPlotItemLabelFontUnderline: + """Return the ``PLOT:PLOT:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT:UNDERline?`` + query. + - Using the ``.verify(value)`` method will send the + ``PLOT:PLOT:LABel:FONT:UNDERline?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:FONT:UNDERline {ON|OFF|} + - PLOT:PLOT:LABel:FONT:UNDERline? + ``` + + Info: + - ```` = 0 disables underline font; any other value turns this feature on. + - ``OFF`` disables underline font. + - ``ON`` enables underline font. + """ + return self._underline + + +class PlotPlotItemLabelColor(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified trend label. This command/query + only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:COLor?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:COLor + - PLOT:PLOT:LABel:COLor? + ``` + + Info: + - ```` is the label color. The default color is specified by a quoted empty string, + and is the only available color. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class PlotPlotItemLabel(SCPICmdRead): + """The ``PLOT:PLOT:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.color``: The ``PLOT:PLOT:LABel:COLor`` command. + - ``.font``: The ``PLOT:PLOT:LABel:FONT`` command tree. + - ``.name``: The ``PLOT:PLOT:LABel:NAMe`` command. + - ``.xpos``: The ``PLOT:PLOT:LABel:XPOS`` command. + - ``.ypos``: The ``PLOT:PLOT:LABel:YPOS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._color = PlotPlotItemLabelColor(device, f"{self._cmd_syntax}:COLor") + self._font = PlotPlotItemLabelFont(device, f"{self._cmd_syntax}:FONT") + self._name = PlotPlotItemLabelName(device, f"{self._cmd_syntax}:NAMe") + self._xpos = PlotPlotItemLabelXpos(device, f"{self._cmd_syntax}:XPOS") + self._ypos = PlotPlotItemLabelYpos(device, f"{self._cmd_syntax}:YPOS") + + @property + def color(self) -> PlotPlotItemLabelColor: + """Return the ``PLOT:PLOT:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:COLor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:COLor + - PLOT:PLOT:LABel:COLor? + ``` + + Info: + - ```` is the label color. The default color is specified by a quoted empty + string, and is the only available color. + """ + return self._color + + @property + def font(self) -> PlotPlotItemLabelFont: + """Return the ``PLOT:PLOT:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:FONT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bold``: The ``PLOT:PLOT:LABel:FONT:BOLD`` command. + - ``.italic``: The ``PLOT:PLOT:LABel:FONT:ITALic`` command. + - ``.size``: The ``PLOT:PLOT:LABel:FONT:SIZE`` command. + - ``.type``: The ``PLOT:PLOT:LABel:FONT:TYPE`` command. + - ``.underline``: The ``PLOT:PLOT:LABel:FONT:UNDERline`` command. + """ + return self._font + + @property + def name(self) -> PlotPlotItemLabelName: + """Return the ``PLOT:PLOT:LABel:NAMe`` command. + + Description: + - This command sets or queries the specified trend's label. This command/query only + applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:NAMe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:NAMe + - PLOT:PLOT:LABel:NAMe? + ``` + + Info: + - ```` is the label. + """ + return self._name + + @property + def xpos(self) -> PlotPlotItemLabelXpos: + """Return the ``PLOT:PLOT:LABel:XPOS`` command. + + Description: + - This command sets or queries the x-position of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:XPOS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:XPOS value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:XPOS + - PLOT:PLOT:LABel:XPOS? + ``` + + Info: + - ```` is the y-position, in pixels relative to the left edge of the display, of + the label. + """ + return self._xpos + + @property + def ypos(self) -> PlotPlotItemLabelYpos: + """Return the ``PLOT:PLOT:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the specified trend label. This + command/query only applies to Time Trend plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel:YPOS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:LABel:YPOS value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:LABel:YPOS + - PLOT:PLOT:LABel:YPOS? + ``` + + Info: + - ```` is the x-position, in pixels relative to the baseline of the waveform, of + the label. + """ + return self._ypos + + +class PlotPlotItemImdaplotdisplay(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:IMDAPLOTDisplay`` command. + + Description: + - This command sets or returns the IMDA time trend and acq trend plot display configuration. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:IMDAPLOTDisplay?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:IMDAPLOTDisplay?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:IMDAPLOTDisplay value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:IMDAPLOTDisplay {ALL|ONEPAIRVI|ONEPAIRV|ONEPAIRI|PHASEONE|PHASETWO|PHASETHREE|ABC|DQ0} + - PLOT:PLOT:IMDAPLOTDisplay? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``ALL`` sets the IMDA time trend and acq trend plot display configuration to ALL. + - ``ONEPAIRVI`` sets the IMDA time trend and acq trend plot display configuration to + ONEPAIRVI. + - ``ONEPAIRV`` sets the IMDA time trend and acq trend plot display configuration to + ONEPAIRV. + - ``ONEPAIRI`` sets the IMDA time trend and acq trend plot display configuration to + ONEPAIRI. + - ``PHASEONE`` sets the IMDA time trend and acq trend plot display configuration to + PHASEONE. + - ``PHASETWO`` sets the IMDA time trend and acq trend plot display configuration to + PHASETWO. + - ``PHASETHREE`` sets the IMDA time trend and acq trend plot display configuration to + PHASETHREE. + - ``ABC`` sets the IMDA time trend plot display to ABC. + - ``DQ0`` sets the IMDA time trend plot display to DQ0. + """ # noqa: E501 + + +class PlotPlotItemImdaMeas(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:IMDA:MEAS`` command. + + Description: + - This command sets or returns the measurement selection of trend plot and acq trend plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:IMDA:MEAS?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:IMDA:MEAS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:IMDA:MEAS value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:IMDA:MEAS {VRMS|IRMS|PHASE|FREQuency|TRPWR|REPWR|APPPWR|TRPWRSUM|REPWRSUM|APPPWRSUM|DCPWR|INPWR|OUTPWR|EFFiciency|TOTALEFFiciency|INPWRSUM|OUTPWRSUM} + - PLOT:PLOT:IMDA:MEAS? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``VRMS`` sets the IMDA measurement selection to VRMS. + - ``IRMS`` sets the IMDA measurement selection to IRMS. + - ``PHASE`` sets the IMDA measurement selection to PHASE. + - ``FREQuency`` sets the IMDA measurement selection to FREQuency. + - ``TRPWR`` sets the IMDA measurement selection to TRPWR. + - ``REPWR`` sets the IMDA measurement selection to REPWR. + - ``APPPWR`` sets the IMDA measurement selection to APPPWR. + - ``TRPWRSUM`` sets the IMDA measurement selection to TRPWRSUM. + - ``REPWRSUM`` sets the IMDA measurement selection to REPWRSUM. + - ``APPPWRSUM`` sets the IMDA measurement selection to APPPWRSUM. + - ``DCPWR`` sets the IMDA measurement selection to DCPWR. This selection is applicable only + for acq trend plots. + - ``INPWR`` sets the IMDA measurement selection to INPWR. This selection is applicable only + for acq trend plots. + - ``OUTPWR`` sets the IMDA measurement selection to OUTPWR. This selection is applicable + only for acq trend plots. + - ``EFFiciency`` sets the IMDA measurement selection to EFFiciency. + - ``TOTALEFFiciency`` sets the IMDA measurement selection to TOTALEFFiciency. This selection + is applicable only for acq trend plots. + - ``INPWRSUM`` sets the IMDA measurement selection to INPWRSUM. This selection is applicable + only for acq trend plots. + - ``OUTPWRSUM`` sets the IMDA measurement selection to OUTPWRSUM. This selection is + applicable only for acq trend plots. + """ # noqa: E501 + + +class PlotPlotItemImda(SCPICmdRead): + """The ``PLOT:PLOT:IMDA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:IMDA?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:IMDA?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Properties: + - ``.meas``: The ``PLOT:PLOT:IMDA:MEAS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._meas = PlotPlotItemImdaMeas(device, f"{self._cmd_syntax}:MEAS") + + @property + def meas(self) -> PlotPlotItemImdaMeas: + """Return the ``PLOT:PLOT:IMDA:MEAS`` command. + + Description: + - This command sets or returns the measurement selection of trend plot and acq trend + plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:IMDA:MEAS?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:IMDA:MEAS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:IMDA:MEAS value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:IMDA:MEAS {VRMS|IRMS|PHASE|FREQuency|TRPWR|REPWR|APPPWR|TRPWRSUM|REPWRSUM|APPPWRSUM|DCPWR|INPWR|OUTPWR|EFFiciency|TOTALEFFiciency|INPWRSUM|OUTPWRSUM} + - PLOT:PLOT:IMDA:MEAS? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``VRMS`` sets the IMDA measurement selection to VRMS. + - ``IRMS`` sets the IMDA measurement selection to IRMS. + - ``PHASE`` sets the IMDA measurement selection to PHASE. + - ``FREQuency`` sets the IMDA measurement selection to FREQuency. + - ``TRPWR`` sets the IMDA measurement selection to TRPWR. + - ``REPWR`` sets the IMDA measurement selection to REPWR. + - ``APPPWR`` sets the IMDA measurement selection to APPPWR. + - ``TRPWRSUM`` sets the IMDA measurement selection to TRPWRSUM. + - ``REPWRSUM`` sets the IMDA measurement selection to REPWRSUM. + - ``APPPWRSUM`` sets the IMDA measurement selection to APPPWRSUM. + - ``DCPWR`` sets the IMDA measurement selection to DCPWR. This selection is applicable + only for acq trend plots. + - ``INPWR`` sets the IMDA measurement selection to INPWR. This selection is applicable + only for acq trend plots. + - ``OUTPWR`` sets the IMDA measurement selection to OUTPWR. This selection is applicable + only for acq trend plots. + - ``EFFiciency`` sets the IMDA measurement selection to EFFiciency. + - ``TOTALEFFiciency`` sets the IMDA measurement selection to TOTALEFFiciency. This + selection is applicable only for acq trend plots. + - ``INPWRSUM`` sets the IMDA measurement selection to INPWRSUM. This selection is + applicable only for acq trend plots. + - ``OUTPWRSUM`` sets the IMDA measurement selection to OUTPWRSUM. This selection is + applicable only for acq trend plots. + """ # noqa: E501 + return self._meas + + +class PlotPlotItemEyerender(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:EYERender`` command. + + Description: + - This command sets or queries the eye rendering method for the specified plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:EYERender?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:EYERender?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:EYERender value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:EYERender {FAst|COMPlete} + - PLOT:PLOT:EYERender? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``FAst`` sets the eye rendering method to fast. + - ``COMPlete`` sets the eye rendering method to complete. + """ + + +class PlotPlotItemExtenduis(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:EXTENDuis`` command. + + Description: + - This command sets or queries number of UIs surrounding the eye boundary UIs that are used + for fast eye rendering. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:EXTENDuis?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:EXTENDuis?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:EXTENDuis value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:EXTENDuis + - PLOT:PLOT:EXTENDuis? + ``` + + Info: + - ``PLOT`` is the plot number. + - ```` is the number of surrounding UIs. + """ + + +class PlotPlotItemExportraw(SCPICmdRead): + """The ``PLOT:PLOT:EXPORTRaw`` command. + + Description: + - This command returns a binary stream of double values containing the x,y and hits value. + Use this command along with ``MEASUREMENT:ADDMEAS TIE``, ``PLOT:PLOT1:TYPE EYEDIAGRAM``, + ``DISplay:SELect:VIEW`` plotview1 to export the eye diagram plot data. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:EXPORTRaw?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:EXPORTRaw?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - PLOT:PLOT:EXPORTRaw? + ``` + """ + + +class PlotPlotItemBittype(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:BITType`` command. + + Description: + - This command sets or queries the bit type to display for the specified eye diagram plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:BITType?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:BITType?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:BITType value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:BITType {ALLBits|TRANSition|NONTRANsition} + - PLOT:PLOT:BITType? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``ALLBits`` sets the eye diagram plot to show both transition and nontransition bits. + - ``TRANSition`` sets the eye diagram plot to show only bits where a logic level transition + occurs. + - ``NONTRANsition`` sets the eye diagram plot to show only bits where no logic level + transition occurs. + """ + + +class PlotPlotItemBathtubXaxisunits(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:BATHtub:XAXISUnits`` command. + + Description: + - This command sets or queries the X-Axis unit, either unit intervals or seconds. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:BATHtub:XAXISUnits?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:BATHtub:XAXISUnits?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:BATHtub:XAXISUnits value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:BATHtub:XAXISUnits {UNITIntervals|SECOnds} + - PLOT:PLOT:BATHtub:XAXISUnits? + ``` + + Info: + - ``UNITIntervals`` specifies units as unit intervals. + - ``SECOnds`` specifies units as seconds. + """ + + +class PlotPlotItemBathtubBer(SCPICmdWrite, SCPICmdRead): + """The ``PLOT:PLOT:BATHtub:BER`` command. + + Description: + - This command sets or queries the bathtub BER value. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:BATHtub:BER?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:BATHtub:BER?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:BATHtub:BER value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:BATHtub:BER + - PLOT:PLOT:BATHtub:BER? + ``` + + Info: + - ```` is the bathtub BER value. + """ + + +class PlotPlotItemBathtub(SCPICmdRead): + """The ``PLOT:PLOT:BATHtub`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:BATHtub?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:BATHtub?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ber``: The ``PLOT:PLOT:BATHtub:BER`` command. + - ``.xaxisunits``: The ``PLOT:PLOT:BATHtub:XAXISUnits`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ber = PlotPlotItemBathtubBer(device, f"{self._cmd_syntax}:BER") + self._xaxisunits = PlotPlotItemBathtubXaxisunits(device, f"{self._cmd_syntax}:XAXISUnits") + + @property + def ber(self) -> PlotPlotItemBathtubBer: + """Return the ``PLOT:PLOT:BATHtub:BER`` command. + + Description: + - This command sets or queries the bathtub BER value. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:BATHtub:BER?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:BATHtub:BER?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:BATHtub:BER value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:BATHtub:BER + - PLOT:PLOT:BATHtub:BER? + ``` + + Info: + - ```` is the bathtub BER value. + """ + return self._ber + + @property + def xaxisunits(self) -> PlotPlotItemBathtubXaxisunits: + """Return the ``PLOT:PLOT:BATHtub:XAXISUnits`` command. + + Description: + - This command sets or queries the X-Axis unit, either unit intervals or seconds. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:BATHtub:XAXISUnits?`` + query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:BATHtub:XAXISUnits?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:BATHtub:XAXISUnits value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:BATHtub:XAXISUnits {UNITIntervals|SECOnds} + - PLOT:PLOT:BATHtub:XAXISUnits? + ``` + + Info: + - ``UNITIntervals`` specifies units as unit intervals. + - ``SECOnds`` specifies units as seconds. + """ + return self._xaxisunits + + +# pylint: disable=too-many-instance-attributes +class PlotPlotItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``PLOT:PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bathtub``: The ``PLOT:PLOT:BATHtub`` command tree. + - ``.bittype``: The ``PLOT:PLOT:BITType`` command. + - ``.exportraw``: The ``PLOT:PLOT:EXPORTRaw`` command. + - ``.extenduis``: The ``PLOT:PLOT:EXTENDuis`` command. + - ``.eyerender``: The ``PLOT:PLOT:EYERender`` command. + - ``.imda``: The ``PLOT:PLOT:IMDA`` command tree. + - ``.imdaplotdisplay``: The ``PLOT:PLOT:IMDAPLOTDisplay`` command. + - ``.label``: The ``PLOT:PLOT:LABel`` command tree. + - ``.mask``: The ``PLOT:PLOT:MASK`` command. + - ``.maskoffset``: The ``PLOT:PLOT:MASKOffset`` command tree. + - ``.numbins``: The ``PLOT:PLOT:NUMBins`` command. + - ``.ptype``: The ``PLOT:PLOT:PTYPe`` command. + - ``.railnum``: The ``PLOT:PLOT:RAILNUM`` command. + - ``.source1``: The ``PLOT:PLOT:SOUrce1`` command. + - ``.spectrum``: The ``PLOT:PLOT:SPECtrum`` command tree. + - ``.type``: The ``PLOT:PLOT:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bathtub = PlotPlotItemBathtub(device, f"{self._cmd_syntax}:BATHtub") + self._bittype = PlotPlotItemBittype(device, f"{self._cmd_syntax}:BITType") + self._exportraw = PlotPlotItemExportraw(device, f"{self._cmd_syntax}:EXPORTRaw") + self._extenduis = PlotPlotItemExtenduis(device, f"{self._cmd_syntax}:EXTENDuis") + self._eyerender = PlotPlotItemEyerender(device, f"{self._cmd_syntax}:EYERender") + self._imda = PlotPlotItemImda(device, f"{self._cmd_syntax}:IMDA") + self._imdaplotdisplay = PlotPlotItemImdaplotdisplay( + device, f"{self._cmd_syntax}:IMDAPLOTDisplay" + ) + self._label = PlotPlotItemLabel(device, f"{self._cmd_syntax}:LABel") + self._mask = PlotPlotItemMask(device, f"{self._cmd_syntax}:MASK") + self._maskoffset = PlotPlotItemMaskoffset(device, f"{self._cmd_syntax}:MASKOffset") + self._numbins = PlotPlotItemNumbins(device, f"{self._cmd_syntax}:NUMBins") + self._ptype = PlotPlotItemPtype(device, f"{self._cmd_syntax}:PTYPe") + self._railnum = PlotPlotItemRailnum(device, f"{self._cmd_syntax}:RAILNUM") + self._source1 = PlotPlotItemSource1(device, f"{self._cmd_syntax}:SOUrce1") + self._spectrum = PlotPlotItemSpectrum(device, f"{self._cmd_syntax}:SPECtrum") + self._type = PlotPlotItemType(device, f"{self._cmd_syntax}:TYPe") + + @property + def bathtub(self) -> PlotPlotItemBathtub: + """Return the ``PLOT:PLOT:BATHtub`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:BATHtub?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:BATHtub?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ber``: The ``PLOT:PLOT:BATHtub:BER`` command. + - ``.xaxisunits``: The ``PLOT:PLOT:BATHtub:XAXISUnits`` command. + """ + return self._bathtub + + @property + def bittype(self) -> PlotPlotItemBittype: + """Return the ``PLOT:PLOT:BITType`` command. + + Description: + - This command sets or queries the bit type to display for the specified eye diagram + plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:BITType?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:BITType?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:BITType value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:BITType {ALLBits|TRANSition|NONTRANsition} + - PLOT:PLOT:BITType? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``ALLBits`` sets the eye diagram plot to show both transition and nontransition bits. + - ``TRANSition`` sets the eye diagram plot to show only bits where a logic level + transition occurs. + - ``NONTRANsition`` sets the eye diagram plot to show only bits where no logic level + transition occurs. + """ + return self._bittype + + @property + def exportraw(self) -> PlotPlotItemExportraw: + """Return the ``PLOT:PLOT:EXPORTRaw`` command. + + Description: + - This command returns a binary stream of double values containing the x,y and hits + value. Use this command along with ``MEASUREMENT:ADDMEAS TIE``, + ``PLOT:PLOT1:TYPE EYEDIAGRAM``, ``DISplay:SELect:VIEW`` plotview1 to export the eye + diagram plot data. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:EXPORTRaw?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:EXPORTRaw?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - PLOT:PLOT:EXPORTRaw? + ``` + """ + return self._exportraw + + @property + def extenduis(self) -> PlotPlotItemExtenduis: + """Return the ``PLOT:PLOT:EXTENDuis`` command. + + Description: + - This command sets or queries number of UIs surrounding the eye boundary UIs that are + used for fast eye rendering. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:EXTENDuis?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:EXTENDuis?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:EXTENDuis value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:EXTENDuis + - PLOT:PLOT:EXTENDuis? + ``` + + Info: + - ``PLOT`` is the plot number. + - ```` is the number of surrounding UIs. + """ + return self._extenduis + + @property + def eyerender(self) -> PlotPlotItemEyerender: + """Return the ``PLOT:PLOT:EYERender`` command. + + Description: + - This command sets or queries the eye rendering method for the specified plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:EYERender?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:EYERender?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:EYERender value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:EYERender {FAst|COMPlete} + - PLOT:PLOT:EYERender? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``FAst`` sets the eye rendering method to fast. + - ``COMPlete`` sets the eye rendering method to complete. + """ + return self._eyerender + + @property + def imda(self) -> PlotPlotItemImda: + """Return the ``PLOT:PLOT:IMDA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:IMDA?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:IMDA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Sub-properties: + - ``.meas``: The ``PLOT:PLOT:IMDA:MEAS`` command. + """ + return self._imda + + @property + def imdaplotdisplay(self) -> PlotPlotItemImdaplotdisplay: + """Return the ``PLOT:PLOT:IMDAPLOTDisplay`` command. + + Description: + - This command sets or returns the IMDA time trend and acq trend plot display + configuration. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:IMDAPLOTDisplay?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:IMDAPLOTDisplay?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``PLOT:PLOT:IMDAPLOTDisplay value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:IMDAPLOTDisplay {ALL|ONEPAIRVI|ONEPAIRV|ONEPAIRI|PHASEONE|PHASETWO|PHASETHREE|ABC|DQ0} + - PLOT:PLOT:IMDAPLOTDisplay? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``ALL`` sets the IMDA time trend and acq trend plot display configuration to ALL. + - ``ONEPAIRVI`` sets the IMDA time trend and acq trend plot display configuration to + ONEPAIRVI. + - ``ONEPAIRV`` sets the IMDA time trend and acq trend plot display configuration to + ONEPAIRV. + - ``ONEPAIRI`` sets the IMDA time trend and acq trend plot display configuration to + ONEPAIRI. + - ``PHASEONE`` sets the IMDA time trend and acq trend plot display configuration to + PHASEONE. + - ``PHASETWO`` sets the IMDA time trend and acq trend plot display configuration to + PHASETWO. + - ``PHASETHREE`` sets the IMDA time trend and acq trend plot display configuration to + PHASETHREE. + - ``ABC`` sets the IMDA time trend plot display to ABC. + - ``DQ0`` sets the IMDA time trend plot display to DQ0. + """ # noqa: E501 + return self._imdaplotdisplay + + @property + def label(self) -> PlotPlotItemLabel: + """Return the ``PLOT:PLOT:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.color``: The ``PLOT:PLOT:LABel:COLor`` command. + - ``.font``: The ``PLOT:PLOT:LABel:FONT`` command tree. + - ``.name``: The ``PLOT:PLOT:LABel:NAMe`` command. + - ``.xpos``: The ``PLOT:PLOT:LABel:XPOS`` command. + - ``.ypos``: The ``PLOT:PLOT:LABel:YPOS`` command. + """ + return self._label + + @property + def mask(self) -> PlotPlotItemMask: + """Return the ``PLOT:PLOT:MASK`` command. + + Description: + - This command returns the name of the mask test associated with the specified eye + diagram plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASK?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:MASK?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - PLOT:PLOT:MASK? + ``` + + Info: + - ``PLOT`` is the plot number. + """ + return self._mask + + @property + def maskoffset(self) -> PlotPlotItemMaskoffset: + """Return the ``PLOT:PLOT:MASKOffset`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:MASKOffset?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:MASKOffset?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``PLOT`` is the plot number. + + Sub-properties: + - ``.horizontal``: The ``PLOT:PLOT:MASKOffset:HORizontal`` command tree. + - ``.percentui``: The ``PLOT:PLOT:MASKOffset:PERCENTui`` command tree. + """ + return self._maskoffset + + @property + def numbins(self) -> PlotPlotItemNumbins: + """Return the ``PLOT:PLOT:NUMBins`` command. + + Description: + - This command sets or queries the current histogram resolution. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:NUMBins?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:NUMBins?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:NUMBins value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:NUMBins {TWENtyfive|FIFTY|HUNdred|TWOFifty|FIVEHundred|TWOThousand|MAXimum} + - PLOT:PLOT:NUMBins? + ``` + + Info: + - ``TWENtyfive`` sets the number of bins to 25. + - ``FIFTY`` sets the number of bins to 50. + - ``HUNdred`` sets the number of bins to 100. + - ``TWOFifty`` sets the number of bins to 250. + - ``FIVEHundred`` sets the number of bins to 500. + - ``TWOThousand`` sets the number of bins to 2000. + - ``MAXimum`` sets the number of bins to the maximum value. + """ # noqa: E501 + return self._numbins + + @property + def ptype(self) -> PlotPlotItemPtype: + """Return the ``PLOT:PLOT:PTYPe`` command. + + Description: + - This command sets or returns the phasor type of the phasor diagram plot. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:PTYPe?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:PTYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:PTYPe value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:PTYPe {RMS|MAGNITUDE} + - PLOT:PLOT:PTYPe? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``RMS`` sets the phasor type to RMS. + - ``MAGNITUDE`` sets the phasor type to MAGNITUDE. + """ + return self._ptype + + @property + def railnum(self) -> PlotPlotItemRailnum: + """Return the ``PLOT:PLOT:RAILNUM`` command. + + Description: + - Sets the DPM histogram source. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:RAILNUM?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:RAILNUM?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:RAILNUM value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:RAILNUM RAIL + - PLOT:PLOT:RAILNUM? + ``` + + Info: + - ``PLOT`` is the plot number. + - ``Rail`` is the rail number. x has a minimum of 1 and a maximum of 7. + """ + return self._railnum + + @property + def source1(self) -> PlotPlotItemSource1: + """Return the ``PLOT:PLOT:SOUrce1`` command. + + Description: + - This command sets or queries the plot source. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:SOUrce1?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:SOUrce1?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:SOUrce1 value`` + command. + + SCPI Syntax: + ``` + - PLOT:PLOT:SOUrce1 MEAS + - PLOT:PLOT:SOUrce1? + ``` + + Info: + - ``MEAS`` is the specified measurement source for the specified plot. + """ + return self._source1 + + @property + def spectrum(self) -> PlotPlotItemSpectrum: + """Return the ``PLOT:PLOT:SPECtrum`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT:SPECtrum?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT:SPECtrum?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.base``: The ``PLOT:PLOT:SPECtrum:BASE`` command. + - ``.dynrange``: The ``PLOT:PLOT:SPECtrum:DYNRange`` command. + """ + return self._spectrum + + @property + def type(self) -> PlotPlotItemType: + """Return the ``PLOT:PLOT:TYPe`` command. + + Description: + - This command sets or returns the current plot type of the specified plot. + + Usage: + - Using the ``.write(value)`` method will send the ``PLOT:PLOT:TYPe value`` command. + + SCPI Syntax: + ``` + - PLOT:PLOT:TYPe {NONE|BATHTUB|EYEDIAGRAM|HARMONICS|HISTOGRAM|IMDATIMETREND|IMDAACQTREND|INDUCTANCE|IVSINTEGRALV|MAGPROPERTY|PHASENOISE|PHASOR|SOA|SPECTRUM|SSCPROFILE|SWL|TIEHISTOGRAM|TIETIMETREND|TIESPECTRUM|TIMETREND|XY|XYZ} + ``` + + Info: + - ```` is the plot number. This is the equivalent of the number shown on a plot + heading in the UI. + - ``NONE`` does not create a plot. + - ``BATHTUB`` creates a bathtub plot. + - ``EYEDIAGRAM`` creates an eye diagram. This plot type is not available on a 4 Series + MSO instrument. + - ``HARMONICS`` creates a harmonics bar graph. + - ``HISTOGRAM`` creates a histogram plot. + - ``IMDATIMETREND`` creates a IMDA time trend plot. This plot type requires option IMDA. + - ``IMDAACQTREND`` creates a IMDA acq trend plot. This plot type requires option IMDA. + - ``INDUCTANCE`` creates a inductance plot. + - ``IVSINTEGRALV`` creates a I vs. ∫V plot. + - ``PHASENOISE`` creates a phase noise plot. + - ``PHASOR`` creates the Phasor Diagram. This plot type requires option 5-DPM on + MSO58/56 series instruments. + - ``MAGPROPERTY`` creates a BH curve. + - ``SOA`` creates an SOA plot. + - ``SPECTRUM`` creates a spectrum plot. + - ``SSCPROFILE`` creates a SSC profile plot. + - ``SWL`` creates a Switching Loss plot. + - ``TIEHISTOGRAM`` creates a TIE histogram plot. + - ``TIESPECTRUM`` creates a TIE spectrum plot. + - ``TIETIMETREND`` creates a TIE time trend plot. + - ``TIMETREND`` creates a time trend plot. + - ``XY`` creates a XY plot. + - ``XYZ`` creates a XYZ plot. + """ # noqa: E501 + return self._type + + +class PlotList(SCPICmdRead): + """The ``PLOT:LIST`` command. + + Description: + - This command lists all currently defined plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - PLOT:LIST? + ``` + """ + + +class PlotDelete(SCPICmdWrite): + """The ``PLOT:DELete`` command. + + Description: + - This command deletes the specified plot. + + Usage: + - Using the ``.write(value)`` method will send the ``PLOT:DELete value`` command. + + SCPI Syntax: + ``` + - PLOT:DELete + ``` + + Info: + - ```` is the specified plot. Argument is of the form 'PLOT, where is ≥ + 1). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class PlotAddnew(SCPICmdWrite): + """The ``PLOT:ADDNew`` command. + + Description: + - This command adds the specified plot. + + Usage: + - Using the ``.write(value)`` method will send the ``PLOT:ADDNew value`` command. + + SCPI Syntax: + ``` + - PLOT:ADDNew + ``` + + Info: + - ```` is the specified plot. The argument is of the form 'PLOT', where + ≥ 1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class Plot(SCPICmdRead): + """The ``PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.addnew``: The ``PLOT:ADDNew`` command. + - ``.delete``: The ``PLOT:DELete`` command. + - ``.list``: The ``PLOT:LIST`` command. + - ``.plot``: The ``PLOT:PLOT`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "PLOT") -> None: + super().__init__(device, cmd_syntax) + self._addnew = PlotAddnew(device, f"{self._cmd_syntax}:ADDNew") + self._delete = PlotDelete(device, f"{self._cmd_syntax}:DELete") + self._list = PlotList(device, f"{self._cmd_syntax}:LIST") + self._plot: Dict[int, PlotPlotItem] = DefaultDictPassKeyToFactory( + lambda x: PlotPlotItem(device, f"{self._cmd_syntax}:PLOT{x}") + ) + + @property + def addnew(self) -> PlotAddnew: + """Return the ``PLOT:ADDNew`` command. + + Description: + - This command adds the specified plot. + + Usage: + - Using the ``.write(value)`` method will send the ``PLOT:ADDNew value`` command. + + SCPI Syntax: + ``` + - PLOT:ADDNew + ``` + + Info: + - ```` is the specified plot. The argument is of the form 'PLOT', where + ≥ 1. + """ + return self._addnew + + @property + def delete(self) -> PlotDelete: + """Return the ``PLOT:DELete`` command. + + Description: + - This command deletes the specified plot. + + Usage: + - Using the ``.write(value)`` method will send the ``PLOT:DELete value`` command. + + SCPI Syntax: + ``` + - PLOT:DELete + ``` + + Info: + - ```` is the specified plot. Argument is of the form 'PLOT, where + is ≥ 1). + """ + return self._delete + + @property + def list(self) -> PlotList: + """Return the ``PLOT:LIST`` command. + + Description: + - This command lists all currently defined plots. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - PLOT:LIST? + ``` + """ + return self._list + + @property + def plot(self) -> Dict[int, PlotPlotItem]: + """Return the ``PLOT:PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT:PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT:PLOT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bathtub``: The ``PLOT:PLOT:BATHtub`` command tree. + - ``.bittype``: The ``PLOT:PLOT:BITType`` command. + - ``.exportraw``: The ``PLOT:PLOT:EXPORTRaw`` command. + - ``.extenduis``: The ``PLOT:PLOT:EXTENDuis`` command. + - ``.eyerender``: The ``PLOT:PLOT:EYERender`` command. + - ``.imda``: The ``PLOT:PLOT:IMDA`` command tree. + - ``.imdaplotdisplay``: The ``PLOT:PLOT:IMDAPLOTDisplay`` command. + - ``.label``: The ``PLOT:PLOT:LABel`` command tree. + - ``.mask``: The ``PLOT:PLOT:MASK`` command. + - ``.maskoffset``: The ``PLOT:PLOT:MASKOffset`` command tree. + - ``.numbins``: The ``PLOT:PLOT:NUMBins`` command. + - ``.ptype``: The ``PLOT:PLOT:PTYPe`` command. + - ``.railnum``: The ``PLOT:PLOT:RAILNUM`` command. + - ``.source1``: The ``PLOT:PLOT:SOUrce1`` command. + - ``.spectrum``: The ``PLOT:PLOT:SPECtrum`` command tree. + - ``.type``: The ``PLOT:PLOT:TYPe`` command. + """ + return self._plot diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/power.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/power.py new file mode 100644 index 00000000..3c59c095 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/power.py @@ -0,0 +1,22373 @@ +# pylint: disable=line-too-long +"""The power commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - POWer:ADDNew 'POWER' + - POWer:DELete 'POWER' + - POWer:POWer:AUTOSet EXECute + - POWer:POWer:CLRESPONSE:AMP10Val + - POWer:POWer:CLRESPONSE:AMP10Val? + - POWer:POWer:CLRESPONSE:AMP1Val + - POWer:POWer:CLRESPONSE:AMP1Val? + - POWer:POWer:CLRESPONSE:AMP2Val + - POWer:POWer:CLRESPONSE:AMP2Val? + - POWer:POWer:CLRESPONSE:AMP3Val + - POWer:POWer:CLRESPONSE:AMP3Val? + - POWer:POWer:CLRESPONSE:AMP4Val + - POWer:POWer:CLRESPONSE:AMP4Val? + - POWer:POWer:CLRESPONSE:AMP5Val + - POWer:POWer:CLRESPONSE:AMP5Val? + - POWer:POWer:CLRESPONSE:AMP6Val + - POWer:POWer:CLRESPONSE:AMP6Val? + - POWer:POWer:CLRESPONSE:AMP7Val + - POWer:POWer:CLRESPONSE:AMP7Val? + - POWer:POWer:CLRESPONSE:AMP8Val + - POWer:POWer:CLRESPONSE:AMP8Val? + - POWer:POWer:CLRESPONSE:AMP9Val + - POWer:POWer:CLRESPONSE:AMP9Val? + - POWer:POWer:CLRESPONSE:AMPMode {CONSTant|PROFile} + - POWer:POWer:CLRESPONSE:AMPMode? + - POWer:POWer:CLRESPONSE:ANALYSISMethod {SV|FFT} + - POWer:POWer:CLRESPONSE:ANALYSISMethod? + - POWer:POWer:CLRESPONSE:AUTORbw {True|False} + - POWer:POWer:CLRESPONSE:AUTORbw? + - POWer:POWer:CLRESPONSE:CONNECTSTATus? + - POWer:POWer:CLRESPONSE:CONSTAMPlitude + - POWer:POWer:CLRESPONSE:CONSTAMPlitude? + - POWer:POWer:CLRESPONSE:FREQ10Val + - POWer:POWer:CLRESPONSE:FREQ10Val? + - POWer:POWer:CLRESPONSE:FREQ11Val + - POWer:POWer:CLRESPONSE:FREQ11Val? + - POWer:POWer:CLRESPONSE:FREQ1Val + - POWer:POWer:CLRESPONSE:FREQ1Val? + - POWer:POWer:CLRESPONSE:FREQ2Val + - POWer:POWer:CLRESPONSE:FREQ2Val? + - POWer:POWer:CLRESPONSE:FREQ3Val + - POWer:POWer:CLRESPONSE:FREQ3Val? + - POWer:POWer:CLRESPONSE:FREQ4Val + - POWer:POWer:CLRESPONSE:FREQ4Val? + - POWer:POWer:CLRESPONSE:FREQ5Val + - POWer:POWer:CLRESPONSE:FREQ5Val? + - POWer:POWer:CLRESPONSE:FREQ6Val + - POWer:POWer:CLRESPONSE:FREQ6Val? + - POWer:POWer:CLRESPONSE:FREQ7Val + - POWer:POWer:CLRESPONSE:FREQ7Val? + - POWer:POWer:CLRESPONSE:FREQ8Val + - POWer:POWer:CLRESPONSE:FREQ8Val? + - POWer:POWer:CLRESPONSE:FREQ9Val + - POWer:POWer:CLRESPONSE:FREQ9Val? + - POWer:POWer:CLRESPONSE:GENIPADDress + - POWer:POWer:CLRESPONSE:GENIPADDress? + - POWer:POWer:CLRESPONSE:GENerator {INTernal} + - POWer:POWer:CLRESPONSE:GENerator? + - POWer:POWer:CLRESPONSE:IMPEDance {FIFTy|HIGHZ} + - POWer:POWer:CLRESPONSE:IMPEDance? + - POWer:POWer:CLRESPONSE:INPUTSOurce CH + - POWer:POWer:CLRESPONSE:INPUTSOurce? + - POWer:POWer:CLRESPONSE:MON {SAVG|SSEQ} + - POWer:POWer:CLRESPONSE:MON? + - POWer:POWer:CLRESPONSE:OUTPUTSOurce CH + - POWer:POWer:CLRESPONSE:OUTPUTSOurce? + - POWer:POWer:CLRESPONSE:PPD + - POWer:POWer:CLRESPONSE:PPD? + - POWer:POWer:CLRESPONSE:STARTFREQuency + - POWer:POWer:CLRESPONSE:STARTFREQuency? + - POWer:POWer:CLRESPONSE:STOPFREQuency + - POWer:POWer:CLRESPONSE:STOPFREQuency? + - POWer:POWer:CLRESPONSE:TESTCONNection EXECute + - POWer:POWer:CYCLEAmp:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEAmp:INPUTSOurce? + - POWer:POWer:CYCLEBase:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEBase:INPUTSOurce? + - POWer:POWer:CYCLEMAX:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEMAX:INPUTSOurce? + - POWer:POWer:CYCLEMin:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEMin:INPUTSOurce? + - POWer:POWer:CYCLEPKPK:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEPKPK:INPUTSOurce? + - POWer:POWer:CYCLETop:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLETop:INPUTSOurce? + - POWer:POWer:DIDT:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:DIDT:INPUTSOurce? + - POWer:POWer:DIDT:SOURCEEDGEType {RISE|FALL} + - POWer:POWer:DIDT:SOURCEEDGEType? + - POWer:POWer:DVDT:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:DVDT:INPUTSOurce? + - POWer:POWer:DVDT:SOURCEEDGEType {RISE|FALL} + - POWer:POWer:DVDT:SOURCEEDGEType? + - POWer:POWer:EFFICIENCY:INPUTType {AC|DC} + - POWer:POWer:EFFICIENCY:INPUTType? + - POWer:POWer:EFFICIENCY:IOUT1SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:IOUT1SOUrce? + - POWer:POWer:EFFICIENCY:IOUT2SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:IOUT2SOUrce? + - POWer:POWer:EFFICIENCY:IOUT3SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:IOUT3SOUrce? + - POWer:POWer:EFFICIENCY:ISOUrce {CH|MATH|REF} + - POWer:POWer:EFFICIENCY:ISOUrce? + - POWer:POWer:EFFICIENCY:NUMOFOutputs {ONE|TWO|THREE} + - POWer:POWer:EFFICIENCY:NUMOFOutputs? + - POWer:POWer:EFFICIENCY:OUTPUT1Type {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUT1Type? + - POWer:POWer:EFFICIENCY:OUTPUT2Type {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUT2Type? + - POWer:POWer:EFFICIENCY:OUTPUT3Type {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUT3Type? + - POWer:POWer:EFFICIENCY:OUTPUTType {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUTType? + - POWer:POWer:EFFICIENCY:VOUT1SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VOUT1SOUrce? + - POWer:POWer:EFFICIENCY:VOUT2SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VOUT2SOUrce? + - POWer:POWer:EFFICIENCY:VOUT3SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VOUT3SOUrce? + - POWer:POWer:EFFICIENCY:VSOUrce {CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VSOUrce? + - POWer:POWer:FREQUENCY:EDGe {RISE|FALL} + - POWer:POWer:FREQUENCY:EDGe? + - POWer:POWer:FREQUENCY:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:FREQUENCY:INPUTSOurce? + - POWer:POWer:GATing {NONE|CURSOR|SCREEN|LOGIC} + - POWer:POWer:GATing:GLOBal {ON|OFF|1|0} + - POWer:POWer:GATing:GLOBal? + - POWer:POWer:GATing? + - POWer:POWer:HARMONICS:CLASs {CLASSA|CLASSB|CLASSC|CLASSD} + - POWer:POWer:HARMONICS:CLASs? + - POWer:POWer:HARMONICS:CLFile + - POWer:POWer:HARMONICS:CLFile? + - POWer:POWer:HARMONICS:CMEThod {RATed|MEASured} + - POWer:POWer:HARMONICS:CMEThod? + - POWer:POWer:HARMONICS:FUNDCURRent + - POWer:POWer:HARMONICS:FUNDCURRent? + - POWer:POWer:HARMONICS:HORDer + - POWer:POWer:HARMONICS:HORDer? + - POWer:POWer:HARMONICS:HSOURce {CURRent|VOLTage} + - POWer:POWer:HARMONICS:HSOURce? + - POWer:POWer:HARMONICS:IPOWer + - POWer:POWer:HARMONICS:IPOWer? + - POWer:POWer:HARMONICS:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:HARMONICS:ISOURce? + - POWer:POWer:HARMONICS:LINEFREQUEncy {Auto|FIFTyhz|SIXTyhz |THREESIXTyhz|FOURHUNDREdhz|SIXFIFTyhz|EIGHTHUNDREdhz|CUSTom + - POWer:POWer:HARMONICS:LINEFREQUEncy? + - POWer:POWer:HARMONICS:ODDEVen {ALL|ODD|EVEN} + - POWer:POWer:HARMONICS:ODDEVen? + - POWer:POWer:HARMONICS:PFACtor + - POWer:POWer:HARMONICS:PFACtor? + - POWer:POWer:HARMONICS:POWERRating {HIGH|LOW} + - POWer:POWer:HARMONICS:POWERRating? + - POWer:POWer:HARMONICS:RCURRent + - POWer:POWer:HARMONICS:RCURRent? + - POWer:POWer:HARMONICS:STANDard {NONe|IEC|MIL|AM14|DO160|CUSTOM} + - POWer:POWer:HARMONICS:STANDard? + - POWer:POWer:HARMONICS:STARTFREQUEncy + - POWer:POWer:HARMONICS:STARTFREQUEncy? + - POWer:POWer:HARMONICS:UNITs {LOG|LINear} + - POWer:POWer:HARMONICS:UNITs? + - POWer:POWer:HARMONICS:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:HARMONICS:VSOURce? + - POWer:POWer:IMPEDANCE:AMP10Val + - POWer:POWer:IMPEDANCE:AMP10Val? + - POWer:POWer:IMPEDANCE:AMP1Val + - POWer:POWer:IMPEDANCE:AMP1Val? + - POWer:POWer:IMPEDANCE:AMP2Val + - POWer:POWer:IMPEDANCE:AMP2Val? + - POWer:POWer:IMPEDANCE:AMP3Val + - POWer:POWer:IMPEDANCE:AMP3Val? + - POWer:POWer:IMPEDANCE:AMP4Val + - POWer:POWer:IMPEDANCE:AMP4Val? + - POWer:POWer:IMPEDANCE:AMP5Val + - POWer:POWer:IMPEDANCE:AMP5Val? + - POWer:POWer:IMPEDANCE:AMP6Val + - POWer:POWer:IMPEDANCE:AMP6Val? + - POWer:POWer:IMPEDANCE:AMP7Val + - POWer:POWer:IMPEDANCE:AMP7Val? + - POWer:POWer:IMPEDANCE:AMP8Val + - POWer:POWer:IMPEDANCE:AMP8Val? + - POWer:POWer:IMPEDANCE:AMP9Val + - POWer:POWer:IMPEDANCE:AMP9Val? + - POWer:POWer:IMPEDANCE:AMPMode {CONSTant|PROFile} + - POWer:POWer:IMPEDANCE:AMPMode? + - POWer:POWer:IMPEDANCE:ANALYSISMethod {SV|FFT} + - POWer:POWer:IMPEDANCE:ANALYSISMethod? + - POWer:POWer:IMPEDANCE:AUTORbw {True|False} + - POWer:POWer:IMPEDANCE:AUTORbw? + - POWer:POWer:IMPEDANCE:CONNECTSTATus? + - POWer:POWer:IMPEDANCE:CONSTAMPlitude + - POWer:POWer:IMPEDANCE:CONSTAMPlitude? + - POWer:POWer:IMPEDANCE:FREQ10Val + - POWer:POWer:IMPEDANCE:FREQ10Val? + - POWer:POWer:IMPEDANCE:FREQ1Val + - POWer:POWer:IMPEDANCE:FREQ1Val? + - POWer:POWer:IMPEDANCE:FREQ2Val + - POWer:POWer:IMPEDANCE:FREQ2Val? + - POWer:POWer:IMPEDANCE:FREQ3Val + - POWer:POWer:IMPEDANCE:FREQ3Val? + - POWer:POWer:IMPEDANCE:FREQ4Val + - POWer:POWer:IMPEDANCE:FREQ4Val? + - POWer:POWer:IMPEDANCE:FREQ5Val + - POWer:POWer:IMPEDANCE:FREQ5Val? + - POWer:POWer:IMPEDANCE:FREQ6Val + - POWer:POWer:IMPEDANCE:FREQ6Val? + - POWer:POWer:IMPEDANCE:FREQ7Val + - POWer:POWer:IMPEDANCE:FREQ7Val? + - POWer:POWer:IMPEDANCE:FREQ8Val + - POWer:POWer:IMPEDANCE:FREQ8Val? + - POWer:POWer:IMPEDANCE:FREQ9Val + - POWer:POWer:IMPEDANCE:FREQ9Val? + - POWer:POWer:IMPEDANCE:GENIPADDress + - POWer:POWer:IMPEDANCE:GENIPADDress? + - POWer:POWer:IMPEDANCE:GENerator {INTernal|EXTernal} + - POWer:POWer:IMPEDANCE:GENerator? + - POWer:POWer:IMPEDANCE:IMPEDANCE {FIFTy|HIGHZ} + - POWer:POWer:IMPEDANCE:IMPEDANCE? + - POWer:POWer:IMPEDANCE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:IMPEDANCE:INPUTSOurce? + - POWer:POWer:IMPEDANCE:OUTPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:IMPEDANCE:OUTPUTSOurce? + - POWer:POWer:IMPEDANCE:PPD + - POWer:POWer:IMPEDANCE:PPD? + - POWer:POWer:IMPEDANCE:STARTFREQuency + - POWer:POWer:IMPEDANCE:STARTFREQuency? + - POWer:POWer:IMPEDANCE:STOPFREQuency + - POWer:POWer:IMPEDANCE:STOPFREQuency? + - POWer:POWer:IMPEDANCE:TESTCONNection {EXECute} + - POWer:POWer:INDUCTANCE:EDGESource {S_Ch|CH|MATH|REF} + - POWer:POWer:INDUCTANCE:EDGESource? + - POWer:POWer:INDUCTANCE:ISOUrce {CH|MATH|REF} + - POWer:POWer:INDUCTANCE:ISOUrce? + - POWer:POWer:INDUCTANCE:VSOURce {CH|MATH|REF} + - POWer:POWer:INDUCTANCE:VSOURce? + - POWer:POWer:INPUTCAP:ISOURce {CH|REF|MATH} + - POWer:POWer:INPUTCAP:ISOURce? + - POWer:POWer:INPUTCAP:PEAKCURRent + - POWer:POWer:INPUTCAP:PEAKCURRent? + - POWer:POWer:INPUTCAP:PEAKVOLTage + - POWer:POWer:INPUTCAP:PEAKVOLTage? + - POWer:POWer:INPUTCAP:VSOURce {CH|REF|MATH} + - POWer:POWer:INPUTCAP:VSOURce? + - POWer:POWer:INRUSHcurrent:INPUTSOurce {CH|MATH|REF} + - POWer:POWer:INRUSHcurrent:INPUTSOurce? + - POWer:POWer:INRUSHcurrent:PEAKCURRent + - POWer:POWer:INRUSHcurrent:PEAKCURRent? + - POWer:POWer:IVSINTEGRALV:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:IVSINTEGRALV:ISOURce? + - POWer:POWer:IVSINTEGRALV:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:IVSINTEGRALV:VSOURce? + - POWer:POWer:LABel + - POWer:POWer:LABel? + - POWer:POWer:LINERIPPLE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:LINERIPPLE:INPUTSOurce? + - POWer:POWer:LINERIPPLE:LFREQuency {FIFty|SIXty|FOURHundred} + - POWer:POWer:LINERIPPLE:LFREQuency? + - POWer:POWer:MAGNETICLOSS:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGNETICLOSS:ISOURce? + - POWer:POWer:MAGNETICLOSS:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGNETICLOSS:VSOURce? + - POWer:POWer:MAGPROPERTY:AREAofcrosssection + - POWer:POWer:MAGPROPERTY:AREAofcrosssection? + - POWer:POWer:MAGPROPERTY:EDGESOURce {Current|VOLTAGE} + - POWer:POWer:MAGPROPERTY:EDGESOURce? + - POWer:POWer:MAGPROPERTY:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:ISOURce? + - POWer:POWer:MAGPROPERTY:LENgth + - POWer:POWer:MAGPROPERTY:LENgth? + - POWer:POWer:MAGPROPERTY:PRIMARYTURNs + - POWer:POWer:MAGPROPERTY:PRIMARYTURNs? + - POWer:POWer:MAGPROPERTY:SEC1SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC1SOURce? + - POWer:POWer:MAGPROPERTY:SEC1TURNs + - POWer:POWer:MAGPROPERTY:SEC1TURNs? + - POWer:POWer:MAGPROPERTY:SEC2SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC2SOURce? + - POWer:POWer:MAGPROPERTY:SEC2TURNs + - POWer:POWer:MAGPROPERTY:SEC2TURNs? + - POWer:POWer:MAGPROPERTY:SEC3SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC3SOURce? + - POWer:POWer:MAGPROPERTY:SEC3TURNs + - POWer:POWer:MAGPROPERTY:SEC3TURNs? + - POWer:POWer:MAGPROPERTY:SEC4SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC4SOURce? + - POWer:POWer:MAGPROPERTY:SEC4TURNs + - POWer:POWer:MAGPROPERTY:SEC4TURNs? + - POWer:POWer:MAGPROPERTY:SEC5SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC5SOURce? + - POWer:POWer:MAGPROPERTY:SEC5TURNs + - POWer:POWer:MAGPROPERTY:SEC5TURNs? + - POWer:POWer:MAGPROPERTY:SEC6SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC6SOURce? + - POWer:POWer:MAGPROPERTY:SEC6TURNs + - POWer:POWer:MAGPROPERTY:SEC6TURNs? + - POWer:POWer:MAGPROPERTY:SECPhase + - POWer:POWer:MAGPROPERTY:SECPhase? + - POWer:POWer:MAGPROPERTY:SECVolt {True|False} + - POWer:POWer:MAGPROPERTY:SECVolt? + - POWer:POWer:MAGPROPERTY:SECWINDings {None|ONE|TWO|THREE|FOUR|FIVE|SIX} + - POWer:POWer:MAGPROPERTY:SECWINDings? + - POWer:POWer:MAGPROPERTY:UNITs {SI|CGS} + - POWer:POWer:MAGPROPERTY:UNITs? + - POWer:POWer:MAGPROPERTY:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:VSOURce? + - POWer:POWer:NDUTYCYCLE:EDGEType {RISE|FALL|BOTH} + - POWer:POWer:NDUTYCYCLE:EDGEType? + - POWer:POWer:NDUTYCYCLE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:NDUTYCYCLE:INPUTSOurce? + - POWer:POWer:NPULSEWIDTH:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:NPULSEWIDTH:INPUTSOurce? + - POWer:POWer:PDUTYCYCLE:EDGEType {S_Ch|CH|MATH|REF} + - POWer:POWer:PDUTYCYCLE:EDGEType? + - POWer:POWer:PDUTYCYCLE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:PDUTYCYCLE:INPUTSOurce? + - POWer:POWer:PERIOD:EDGe {RISE|FALL} + - POWer:POWer:PERIOD:EDGe? + - POWer:POWer:PERIOD:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:PERIOD:INPUTSOurce? + - POWer:POWer:POWERQUALITY:CCYCles {ON|OFF 1|0} + - POWer:POWer:POWERQUALITY:CCYCles? + - POWer:POWer:POWERQUALITY:FREFerence {VOLTage|CURRent} + - POWer:POWer:POWERQUALITY:FREFerence? + - POWer:POWer:POWERQUALITY:ISOURce {CH|MATH|REF} + - POWer:POWer:POWERQUALITY:ISOURce? + - POWer:POWer:POWERQUALITY:STYPe {AC|DC} + - POWer:POWer:POWERQUALITY:STYPe? + - POWer:POWer:POWERQUALITY:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:POWERQUALITY:VSOURce? + - POWer:POWer:PPULSEWIDTH:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:PPULSEWIDTH:INPUTSOurce? + - POWer:POWer:PRESET {EXECute} + - POWer:POWer:PSRR:AMP10Val + - POWer:POWer:PSRR:AMP10Val? + - POWer:POWer:PSRR:AMP1Val + - POWer:POWer:PSRR:AMP1Val? + - POWer:POWer:PSRR:AMP2Val + - POWer:POWer:PSRR:AMP2Val? + - POWer:POWer:PSRR:AMP3Val + - POWer:POWer:PSRR:AMP3Val? + - POWer:POWer:PSRR:AMP4Val + - POWer:POWer:PSRR:AMP4Val? + - POWer:POWer:PSRR:AMP5Val + - POWer:POWer:PSRR:AMP5Val? + - POWer:POWer:PSRR:AMP6Val + - POWer:POWer:PSRR:AMP6Val? + - POWer:POWer:PSRR:AMP7Val + - POWer:POWer:PSRR:AMP7Val? + - POWer:POWer:PSRR:AMP8Val + - POWer:POWer:PSRR:AMP8Val? + - POWer:POWer:PSRR:AMP9Val + - POWer:POWer:PSRR:AMP9Val? + - POWer:POWer:PSRR:AMPMode {CONSTant|PROFile} + - POWer:POWer:PSRR:AMPMode? + - POWer:POWer:PSRR:ANALYSISMethod {SV|FFT} + - POWer:POWer:PSRR:ANALYSISMethod? + - POWer:POWer:PSRR:AUTORbw {True|False} + - POWer:POWer:PSRR:AUTORbw? + - POWer:POWer:PSRR:CONNECTSTATus? + - POWer:POWer:PSRR:CONSTAMPlitude + - POWer:POWer:PSRR:CONSTAMPlitude? + - POWer:POWer:PSRR:FREQ10Val + - POWer:POWer:PSRR:FREQ10Val? + - POWer:POWer:PSRR:FREQ11Val + - POWer:POWer:PSRR:FREQ11Val? + - POWer:POWer:PSRR:FREQ1Val + - POWer:POWer:PSRR:FREQ1Val? + - POWer:POWer:PSRR:FREQ2Val + - POWer:POWer:PSRR:FREQ2Val? + - POWer:POWer:PSRR:FREQ3Val + - POWer:POWer:PSRR:FREQ3Val? + - POWer:POWer:PSRR:FREQ4Val + - POWer:POWer:PSRR:FREQ4Val? + - POWer:POWer:PSRR:FREQ5Val + - POWer:POWer:PSRR:FREQ5Val? + - POWer:POWer:PSRR:FREQ6Val + - POWer:POWer:PSRR:FREQ6Val? + - POWer:POWer:PSRR:FREQ7Val + - POWer:POWer:PSRR:FREQ7Val? + - POWer:POWer:PSRR:FREQ8Val + - POWer:POWer:PSRR:FREQ8Val? + - POWer:POWer:PSRR:FREQ9Val + - POWer:POWer:PSRR:FREQ9Val? + - POWer:POWer:PSRR:GENIPADDress + - POWer:POWer:PSRR:GENIPADDress? + - POWer:POWer:PSRR:GENerator {INTernal|EXTernal} + - POWer:POWer:PSRR:GENerator? + - POWer:POWer:PSRR:IMPEDance {FIFTy|HIGHZ} + - POWer:POWer:PSRR:IMPEDance? + - POWer:POWer:PSRR:INPUTSOurce CH + - POWer:POWer:PSRR:INPUTSOurce? + - POWer:POWer:PSRR:OUTPUTSOurce CH + - POWer:POWer:PSRR:OUTPUTSOurce? + - POWer:POWer:PSRR:PPD + - POWer:POWer:PSRR:PPD? + - POWer:POWer:PSRR:STARTFREQuency + - POWer:POWer:PSRR:STARTFREQuency? + - POWer:POWer:PSRR:STOPFREQuency + - POWer:POWer:PSRR:STOPFREQuency? + - POWer:POWer:PSRR:TESTCONNection {EXECute} + - POWer:POWer:RDSON:DEVICEType {SWITCHING|PNJUNCTION} + - POWer:POWer:RDSON:DEVICEType? + - POWer:POWer:RDSON:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:RDSON:ISOURce? + - POWer:POWer:RDSON:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:RDSON:VSOURce? + - POWer:POWer:REFLevels:ABSolute:FALLHigh + - POWer:POWer:REFLevels:ABSolute:FALLHigh? + - POWer:POWer:REFLevels:ABSolute:FALLLow + - POWer:POWer:REFLevels:ABSolute:FALLLow? + - POWer:POWer:REFLevels:ABSolute:FALLMid + - POWer:POWer:REFLevels:ABSolute:FALLMid? + - POWer:POWer:REFLevels:ABSolute:HYSTeresis + - POWer:POWer:REFLevels:ABSolute:HYSTeresis? + - POWer:POWer:REFLevels:ABSolute:RISEHigh + - POWer:POWer:REFLevels:ABSolute:RISEHigh? + - POWer:POWer:REFLevels:ABSolute:RISELow + - POWer:POWer:REFLevels:ABSolute:RISELow? + - POWer:POWer:REFLevels:ABSolute:RISEMid + - POWer:POWer:REFLevels:ABSolute:RISEMid? + - POWer:POWer:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - POWer:POWer:REFLevels:ABSolute:TYPE? + - POWer:POWer:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - POWer:POWer:REFLevels:BASETop? + - POWer:POWer:REFLevels:METHod {PERCent|ABSolute} + - POWer:POWer:REFLevels:METHod? + - POWer:POWer:REFLevels:PERCent:FALLHigh + - POWer:POWer:REFLevels:PERCent:FALLHigh? + - POWer:POWer:REFLevels:PERCent:FALLLow + - POWer:POWer:REFLevels:PERCent:FALLLow? + - POWer:POWer:REFLevels:PERCent:FALLMid + - POWer:POWer:REFLevels:PERCent:FALLMid? + - POWer:POWer:REFLevels:PERCent:HYSTeresis + - POWer:POWer:REFLevels:PERCent:HYSTeresis? + - POWer:POWer:REFLevels:PERCent:RISEHigh + - POWer:POWer:REFLevels:PERCent:RISEHigh? + - POWer:POWer:REFLevels:PERCent:RISELow + - POWer:POWer:REFLevels:PERCent:RISELow? + - POWer:POWer:REFLevels:PERCent:RISEMid + - POWer:POWer:REFLevels:PERCent:RISEMid? + - POWer:POWer:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - POWer:POWer:REFLevels:PERCent:TYPE? + - POWer:POWer:RESUlts:ALLAcqs:MAXimum? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability| RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR|PHASE| PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG| TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL| PKPK|HIGH|LOW|MAX|MIN| INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:ALLAcqs:MEAN? {InputPwr|Output1Pwr|Output2Pwr| Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency| INDUCT|IVSINTV|MAGLOSS|Bpeak|Br|Hc|Hmax| IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ| ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG| TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL| PKPK|HIGH|LOW|MAX|MIN| INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:ALLAcqs:MINimum? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS| Bpeak|Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR| PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR| IRMS|VRMS|TONENRG|TONLOSS|TOFFENRG| TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS|TTLENRG| DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY| NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:ALLAcqs:PK2PK? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR| PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR| IRMS|VRMS|TONENRG|TONLOSS|TOFFENRG| TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS|TTLENRG| DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY| NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:ALLAcqs:POPUlation? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR| PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS| TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE| AMPL|PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:ALLAcqs:STDDev? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br|Hc| Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS| TRUEPWR|APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ| ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG|TONLOSS| TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS| TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS| LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY| NDUTY|PPULSE|NPULSE|AMPL|PKPK|HIGH|LOW|MAX|MIN| INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:CURRentacq:F1MAG? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:F3MAG? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:FREQUENCY? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:IRMS? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:MAXimum? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS| Bpeak|Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR| PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS| TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:CURRentacq:MEAN? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS| VRMS|TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE| AMPL|PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:CURRentacq:MINimum? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br| Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS| VRMS|TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL| PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:CURRentacq:PK2PK? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br| Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR|APPPWR| REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS| TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS| TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK|SWRIPRMS| SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:CURRentacq:POHCL? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:POHCM? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:POHCS? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:POPUlation? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br| Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS| VRMS|TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE| AMPL|PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:CURRentacq:RMS? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:STATUS? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:STDDev? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br|Hc|Hmax|IRipple| DeltaB|DeltaH|Permeability|RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR| PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG|TONLOSS| TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS|TTLENRG|DVBYDT| DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL|PKPK|HIGH|LOW|MAX|MIN |INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + - POWer:POWer:RESUlts:CURRentacq:THDF? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:THDR? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:TRPWR? 'harmonics' + - POWer:POWer:RESUlts:CURRentacq:VRMS? 'harmonics' + - POWer:POWer:SEQSETup Execute + - POWer:POWer:SEQuence {RUN|RERUN} + - POWer:POWer:SEQuence? + - POWer:POWer:SOA:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:SOA:ISOURce? + - POWer:POWer:SOA:POINT ? + - POWer:POWer:SOA:POINT? + - POWer:POWer:SOA:RECAllmask + - POWer:POWer:SOA:RECAllmask:FILEName + - POWer:POWer:SOA:RECAllmask:FILEName? + - POWer:POWer:SOA:RECAllmask? + - POWer:POWer:SOA:SAVemask + - POWer:POWer:SOA:SAVemask:AUTOINCrement + - POWer:POWer:SOA:SAVemask:AUTOINCrement? + - POWer:POWer:SOA:SAVemask:FILEName + - POWer:POWer:SOA:SAVemask:FILEName? + - POWer:POWer:SOA:SAVemask:FOLDer + - POWer:POWer:SOA:SAVemask:FOLDer? + - POWer:POWer:SOA:SAVemask? + - POWer:POWer:SOA:VSOURce {CH|MATH|REF} + - POWer:POWer:SOA:VSOURce? + - POWer:POWer:SWITCHINGLOSS:DEVICEType {MOSFET|BJT} + - POWer:POWer:SWITCHINGLOSS:DEVICEType? + - POWer:POWer:SWITCHINGLOSS:GATESOurce {CH|MATH|REF} + - POWer:POWer:SWITCHINGLOSS:GATESOurce? + - POWer:POWer:SWITCHINGLOSS:ILEVELAbs + - POWer:POWer:SWITCHINGLOSS:ILEVELAbs? + - POWer:POWer:SWITCHINGLOSS:ILEVELPct + - POWer:POWer:SWITCHINGLOSS:ILEVELPct? + - POWer:POWer:SWITCHINGLOSS:ISOURce {CH|MATH|REF} + - POWer:POWer:SWITCHINGLOSS:ISOURce? + - POWer:POWer:SWITCHINGLOSS:LEVELUNIts {PERCent|ABSolute} + - POWer:POWer:SWITCHINGLOSS:LEVELUNIts? + - POWer:POWer:SWITCHINGLOSS:RDSOn + - POWer:POWer:SWITCHINGLOSS:RDSOn? + - POWer:POWer:SWITCHINGLOSS:SWLCONFIGType {SMPS|PFC|FLYBACK} + - POWer:POWer:SWITCHINGLOSS:SWLCONFIGType? + - POWer:POWer:SWITCHINGLOSS:VCESat + - POWer:POWer:SWITCHINGLOSS:VCESat? + - POWer:POWer:SWITCHINGLOSS:VGLevel + - POWer:POWer:SWITCHINGLOSS:VGLevel? + - POWer:POWer:SWITCHINGLOSS:VLEVELAbs + - POWer:POWer:SWITCHINGLOSS:VLEVELAbs? + - POWer:POWer:SWITCHINGLOSS:VLEVELPct + - POWer:POWer:SWITCHINGLOSS:VLEVELPct? + - POWer:POWer:SWITCHINGLOSS:VSOURce {CH|MATH|REF} + - POWer:POWer:SWITCHINGLOSS:VSOURce? + - POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce {CH|MATH|REF} + - POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce? + - POWer:POWer:SWITCHINGRIPPLE:LFREQuency + - POWer:POWer:SWITCHINGRIPPLE:LFREQuency? + - POWer:POWer:TURNOFFtime:FREQuency + - POWer:POWer:TURNOFFtime:FREQuency? + - POWer:POWer:TURNOFFtime:INPUTLEVel + - POWer:POWer:TURNOFFtime:INPUTLEVel? + - POWer:POWer:TURNOFFtime:INPUTSOurce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:INPUTSOurce? + - POWer:POWer:TURNOFFtime:MAXTIMe + - POWer:POWer:TURNOFFtime:MAXTIMe? + - POWer:POWer:TURNOFFtime:MAXVoltage + - POWer:POWer:TURNOFFtime:MAXVoltage? + - POWer:POWer:TURNOFFtime:NUMOUTputs {ONE|TWO|THREE|FOUR|FIVE|SIX|SEVEN} + - POWer:POWer:TURNOFFtime:NUMOUTputs? + - POWer:POWer:TURNOFFtime:OUTPUT1SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT1SOURce? + - POWer:POWer:TURNOFFtime:OUTPUT1VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT1VOLTage? + - POWer:POWer:TURNOFFtime:OUTPUT2SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT2SOURce? + - POWer:POWer:TURNOFFtime:OUTPUT2VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT2VOLTage? + - POWer:POWer:TURNOFFtime:OUTPUT3SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT3SOURce? + - POWer:POWer:TURNOFFtime:OUTPUT3VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT3VOLTage? + - POWer:POWer:TURNOFFtime:OUTPUT4SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT4SOURce? + - POWer:POWer:TURNOFFtime:OUTPUT4VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT4VOLTage? + - POWer:POWer:TURNOFFtime:OUTPUT5SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT5SOURce? + - POWer:POWer:TURNOFFtime:OUTPUT5VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT5VOLTage? + - POWer:POWer:TURNOFFtime:OUTPUT6SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT6SOURce? + - POWer:POWer:TURNOFFtime:OUTPUT6VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT6VOLTage? + - POWer:POWer:TURNOFFtime:OUTPUT7SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT7SOURce? + - POWer:POWer:TURNOFFtime:OUTPUT7VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT7VOLTage? + - POWer:POWer:TURNOFFtime:TYPE {DCDC|ACDC} + - POWer:POWer:TURNOFFtime:TYPE? + - POWer:POWer:TURNONtime:FREQuency + - POWer:POWer:TURNONtime:FREQuency? + - POWer:POWer:TURNONtime:INPUTLEVel + - POWer:POWer:TURNONtime:INPUTLEVel? + - POWer:POWer:TURNONtime:INPUTSOurce + - POWer:POWer:TURNONtime:INPUTSOurce? + - POWer:POWer:TURNONtime:MAXTIMe + - POWer:POWer:TURNONtime:MAXTIMe? + - POWer:POWer:TURNONtime:MAXVoltage + - POWer:POWer:TURNONtime:MAXVoltage? + - POWer:POWer:TURNONtime:NUMOUTputs {ONE|TWO|THREE|FOUR|FIVE|SIX|SEVEN} + - POWer:POWer:TURNONtime:NUMOUTputs? + - POWer:POWer:TURNONtime:OUTPUT1SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT1SOURce? + - POWer:POWer:TURNONtime:OUTPUT1VOLTage + - POWer:POWer:TURNONtime:OUTPUT1VOLTage? + - POWer:POWer:TURNONtime:OUTPUT2SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT2SOURce? + - POWer:POWer:TURNONtime:OUTPUT2VOLTage + - POWer:POWer:TURNONtime:OUTPUT2VOLTage? + - POWer:POWer:TURNONtime:OUTPUT3SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT3SOURce? + - POWer:POWer:TURNONtime:OUTPUT3VOLTage + - POWer:POWer:TURNONtime:OUTPUT3VOLTage? + - POWer:POWer:TURNONtime:OUTPUT4SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT4SOURce? + - POWer:POWer:TURNONtime:OUTPUT4VOLTage + - POWer:POWer:TURNONtime:OUTPUT4VOLTage? + - POWer:POWer:TURNONtime:OUTPUT5SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT5SOURce? + - POWer:POWer:TURNONtime:OUTPUT5VOLTage + - POWer:POWer:TURNONtime:OUTPUT5VOLTage? + - POWer:POWer:TURNONtime:OUTPUT6SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT6SOURce? + - POWer:POWer:TURNONtime:OUTPUT6VOLTage + - POWer:POWer:TURNONtime:OUTPUT6VOLTage? + - POWer:POWer:TURNONtime:OUTPUT7SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT7SOURce? + - POWer:POWer:TURNONtime:OUTPUT7VOLTage + - POWer:POWer:TURNONtime:OUTPUT7VOLTage? + - POWer:POWer:TURNONtime:TYPE {DCDC|ACDC} + - POWer:POWer:TURNONtime:TYPE? + - POWer:POWer:TYPe + - POWer:POWer:TYPe? + ``` +""" # noqa: E501 + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdReadWithArguments, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class PowerPowerItemType(SCPICmdWrite, SCPICmdRead): + r"""The ``POWer:POWer:TYPe`` command. + + Description: + - This command sets or queries the measurement type of the specified power measurement + number. If the measurement number does not exist, this command creates a new power + measurement, assigns the specified measurement number to the new measurement, and then + assigns the measurement type to the new measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:TYPe value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TYPe + - POWer:POWer:TYPe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = CYCLEAmp \| CYCLEBase \| CYCLEMAx \| CYCLEMIn \| CYCLEPKpk \| + CYCLETop \| DIDT \| DVDT \| EFFICIENCY \| FREQuency \| HARMonics \|IMPEDANCE\| INDUCTANCE + \| INPUTCAP \| INRUSHcurrent\| \| IVSINTEGRALV \| LINERIpple \| MAGNETICLOSS \| + MAGPROPERTY \| NDUTYCycle \| NPULSEWidth \| PDUTYCycle \| PERIod \| POWERQUALity \| + PPULSEWidth \| RDSON \| SOA \| SWITCHINGLOss \| SWITCHINGRIpple \| TURNOFFtime \| + TURNONtime\| CLRESPONSE \| PSRR. + """ + + +class PowerPowerItemTurnontimeType(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:TYPE`` command. + + Description: + - This command sets or queries the type of AC/DC converter used in the specified Turn On + Time power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNONtime:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:TURNONtime:TYPE value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:TYPE {DCDC|ACDC} + - POWer:POWer:TURNONtime:TYPE? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``DCDC`` sets the measurement to use a DC to DC converter. + - ``ACDC`` sets the measurement to use an AC to DC converter. + """ + + +class PowerPowerItemTurnontimeOutput7voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT7VOLTage`` command. + + Description: + - This command sets or queries the output 7 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT7VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT7VOLTage + - POWer:POWer:TURNONtime:OUTPUT7VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnontimeOutput7source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT7SOURce`` command. + + Description: + - This command sets or queries the output 7 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT7SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT7SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT7SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnontimeOutput6voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT6VOLTage`` command. + + Description: + - This command sets or queries the output 6 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT6VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT6VOLTage + - POWer:POWer:TURNONtime:OUTPUT6VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnontimeOutput6source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT6SOURce`` command. + + Description: + - This command sets or queries the output 6 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT6SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT6SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT6SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnontimeOutput5voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT5VOLTage`` command. + + Description: + - This command sets or queries the output 5 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT5VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT5VOLTage + - POWer:POWer:TURNONtime:OUTPUT5VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnontimeOutput5source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT5SOURce`` command. + + Description: + - This command sets or queries the output 5 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT5SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT5SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT5SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnontimeOutput4voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT4VOLTage`` command. + + Description: + - This command sets or queries the output 4 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT4VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT4VOLTage + - POWer:POWer:TURNONtime:OUTPUT4VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnontimeOutput4source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT4SOURce`` command. + + Description: + - This command sets or queries the output 4 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT4SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT4SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT4SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnontimeOutput3voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT3VOLTage`` command. + + Description: + - This command sets or queries the output 3 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT3VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT3VOLTage + - POWer:POWer:TURNONtime:OUTPUT3VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnontimeOutput3source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT3SOURce`` command. + + Description: + - This command sets or queries the output 3 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT3SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT3SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT3SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnontimeOutput2voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT2VOLTage`` command. + + Description: + - This command sets or queries the output 2 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT2VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT2VOLTage + - POWer:POWer:TURNONtime:OUTPUT2VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnontimeOutput2source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT2SOURce`` command. + + Description: + - This command sets or queries the output 2 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT2SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT2SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT2SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnontimeOutput1voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT1VOLTage`` command. + + Description: + - This command sets or queries the output 1 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT1VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT1VOLTage + - POWer:POWer:TURNONtime:OUTPUT1VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnontimeOutput1source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:OUTPUT1SOURce`` command. + + Description: + - This command sets or queries the output 1 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:OUTPUT1SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT1SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT1SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnontimeNumoutputs(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:NUMOUTputs`` command. + + Description: + - This command sets or queries the number of outputs for the specified Turn On Time power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:NUMOUTputs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:NUMOUTputs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:NUMOUTputs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:NUMOUTputs {ONE|TWO|THREE|FOUR|FIVE|SIX|SEVEN} + - POWer:POWer:TURNONtime:NUMOUTputs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``ONE`` through SEVEN sets the number of outputs for the specified Turn On Time power + measurement. + """ + + +class PowerPowerItemTurnontimeMaxvoltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:MAXVoltage`` command. + + Description: + - This command sets or returns the maximum voltage setting of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:MAXVoltage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:MAXVoltage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:MAXVoltage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:MAXVoltage + - POWer:POWer:TURNONtime:MAXVoltage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the maximum voltage in the range 1 V + to 500 V. + """ + + +class PowerPowerItemTurnontimeMaxtime(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:MAXTIMe`` command. + + Description: + - This command sets or returns the maximum turn on time of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:MAXTIMe?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNONtime:MAXTIMe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:MAXTIMe value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:MAXTIMe + - POWer:POWer:TURNONtime:MAXTIMe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the maximum time value, in seconds, + in the range 1 second to 500 seconds. + """ + + +class PowerPowerItemTurnontimeInputsource(SCPICmdWriteNoArguments, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source of the specified Turn On Time measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:TURNONtime:INPUTSOurce`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:INPUTSOurce + - POWer:POWer:TURNONtime:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnontimeInputlevel(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:INPUTLEVel`` command. + + Description: + - This command sets or returns the input voltage level of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:INPUTLEVel?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:INPUTLEVel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:INPUTLEVel value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:INPUTLEVel + - POWer:POWer:TURNONtime:INPUTLEVel? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the voltage level, in volts, from + -500 V to 500 V. + """ + + +class PowerPowerItemTurnontimeFrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNONtime:FREQuency`` command. + + Description: + - This command sets or queries the input frequency used by the AC or DC converter of the + specified Turn On Time measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:FREQuency?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNONtime:FREQuency?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:FREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:FREQuency + - POWer:POWer:TURNONtime:FREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the frequency, in Hertz, from 1 Hz to + 500 Hz. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class PowerPowerItemTurnontime(SCPICmdRead): + """The ``POWer:POWer:TURNONtime`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNONtime?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.frequency``: The ``POWer:POWer:TURNONtime:FREQuency`` command. + - ``.inputlevel``: The ``POWer:POWer:TURNONtime:INPUTLEVel`` command. + - ``.inputsource``: The ``POWer:POWer:TURNONtime:INPUTSOurce`` command. + - ``.maxtime``: The ``POWer:POWer:TURNONtime:MAXTIMe`` command. + - ``.maxvoltage``: The ``POWer:POWer:TURNONtime:MAXVoltage`` command. + - ``.numoutputs``: The ``POWer:POWer:TURNONtime:NUMOUTputs`` command. + - ``.output1source``: The ``POWer:POWer:TURNONtime:OUTPUT1SOURce`` command. + - ``.output1voltage``: The ``POWer:POWer:TURNONtime:OUTPUT1VOLTage`` command. + - ``.output2source``: The ``POWer:POWer:TURNONtime:OUTPUT2SOURce`` command. + - ``.output2voltage``: The ``POWer:POWer:TURNONtime:OUTPUT2VOLTage`` command. + - ``.output3source``: The ``POWer:POWer:TURNONtime:OUTPUT3SOURce`` command. + - ``.output3voltage``: The ``POWer:POWer:TURNONtime:OUTPUT3VOLTage`` command. + - ``.output4source``: The ``POWer:POWer:TURNONtime:OUTPUT4SOURce`` command. + - ``.output4voltage``: The ``POWer:POWer:TURNONtime:OUTPUT4VOLTage`` command. + - ``.output5source``: The ``POWer:POWer:TURNONtime:OUTPUT5SOURce`` command. + - ``.output5voltage``: The ``POWer:POWer:TURNONtime:OUTPUT5VOLTage`` command. + - ``.output6source``: The ``POWer:POWer:TURNONtime:OUTPUT6SOURce`` command. + - ``.output6voltage``: The ``POWer:POWer:TURNONtime:OUTPUT6VOLTage`` command. + - ``.output7source``: The ``POWer:POWer:TURNONtime:OUTPUT7SOURce`` command. + - ``.output7voltage``: The ``POWer:POWer:TURNONtime:OUTPUT7VOLTage`` command. + - ``.type``: The ``POWer:POWer:TURNONtime:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._frequency = PowerPowerItemTurnontimeFrequency(device, f"{self._cmd_syntax}:FREQuency") + self._inputlevel = PowerPowerItemTurnontimeInputlevel( + device, f"{self._cmd_syntax}:INPUTLEVel" + ) + self._inputsource = PowerPowerItemTurnontimeInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + self._maxtime = PowerPowerItemTurnontimeMaxtime(device, f"{self._cmd_syntax}:MAXTIMe") + self._maxvoltage = PowerPowerItemTurnontimeMaxvoltage( + device, f"{self._cmd_syntax}:MAXVoltage" + ) + self._numoutputs = PowerPowerItemTurnontimeNumoutputs( + device, f"{self._cmd_syntax}:NUMOUTputs" + ) + self._output1source = PowerPowerItemTurnontimeOutput1source( + device, f"{self._cmd_syntax}:OUTPUT1SOURce" + ) + self._output1voltage = PowerPowerItemTurnontimeOutput1voltage( + device, f"{self._cmd_syntax}:OUTPUT1VOLTage" + ) + self._output2source = PowerPowerItemTurnontimeOutput2source( + device, f"{self._cmd_syntax}:OUTPUT2SOURce" + ) + self._output2voltage = PowerPowerItemTurnontimeOutput2voltage( + device, f"{self._cmd_syntax}:OUTPUT2VOLTage" + ) + self._output3source = PowerPowerItemTurnontimeOutput3source( + device, f"{self._cmd_syntax}:OUTPUT3SOURce" + ) + self._output3voltage = PowerPowerItemTurnontimeOutput3voltage( + device, f"{self._cmd_syntax}:OUTPUT3VOLTage" + ) + self._output4source = PowerPowerItemTurnontimeOutput4source( + device, f"{self._cmd_syntax}:OUTPUT4SOURce" + ) + self._output4voltage = PowerPowerItemTurnontimeOutput4voltage( + device, f"{self._cmd_syntax}:OUTPUT4VOLTage" + ) + self._output5source = PowerPowerItemTurnontimeOutput5source( + device, f"{self._cmd_syntax}:OUTPUT5SOURce" + ) + self._output5voltage = PowerPowerItemTurnontimeOutput5voltage( + device, f"{self._cmd_syntax}:OUTPUT5VOLTage" + ) + self._output6source = PowerPowerItemTurnontimeOutput6source( + device, f"{self._cmd_syntax}:OUTPUT6SOURce" + ) + self._output6voltage = PowerPowerItemTurnontimeOutput6voltage( + device, f"{self._cmd_syntax}:OUTPUT6VOLTage" + ) + self._output7source = PowerPowerItemTurnontimeOutput7source( + device, f"{self._cmd_syntax}:OUTPUT7SOURce" + ) + self._output7voltage = PowerPowerItemTurnontimeOutput7voltage( + device, f"{self._cmd_syntax}:OUTPUT7VOLTage" + ) + self._type = PowerPowerItemTurnontimeType(device, f"{self._cmd_syntax}:TYPE") + + @property + def frequency(self) -> PowerPowerItemTurnontimeFrequency: + """Return the ``POWer:POWer:TURNONtime:FREQuency`` command. + + Description: + - This command sets or queries the input frequency used by the AC or DC converter of the + specified Turn On Time measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:FREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:FREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:FREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:FREQuency + - POWer:POWer:TURNONtime:FREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the frequency, in Hertz, from 1 + Hz to 500 Hz. + """ + return self._frequency + + @property + def inputlevel(self) -> PowerPowerItemTurnontimeInputlevel: + """Return the ``POWer:POWer:TURNONtime:INPUTLEVel`` command. + + Description: + - This command sets or returns the input voltage level of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:INPUTLEVel?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:INPUTLEVel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:INPUTLEVel value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:INPUTLEVel + - POWer:POWer:TURNONtime:INPUTLEVel? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the voltage level, in volts, from + -500 V to 500 V. + """ + return self._inputlevel + + @property + def inputsource(self) -> PowerPowerItemTurnontimeInputsource: + """Return the ``POWer:POWer:TURNONtime:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:TURNONtime:INPUTSOurce`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:INPUTSOurce + - POWer:POWer:TURNONtime:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the + number shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number + shown on a Math waveform badge in the UI. + """ + return self._inputsource + + @property + def maxtime(self) -> PowerPowerItemTurnontimeMaxtime: + """Return the ``POWer:POWer:TURNONtime:MAXTIMe`` command. + + Description: + - This command sets or returns the maximum turn on time of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:MAXTIMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:MAXTIMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:MAXTIMe value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:MAXTIMe + - POWer:POWer:TURNONtime:MAXTIMe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the maximum time value, in + seconds, in the range 1 second to 500 seconds. + """ + return self._maxtime + + @property + def maxvoltage(self) -> PowerPowerItemTurnontimeMaxvoltage: + """Return the ``POWer:POWer:TURNONtime:MAXVoltage`` command. + + Description: + - This command sets or returns the maximum voltage setting of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:MAXVoltage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:MAXVoltage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:MAXVoltage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:MAXVoltage + - POWer:POWer:TURNONtime:MAXVoltage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the maximum voltage in the range + 1 V to 500 V. + """ + return self._maxvoltage + + @property + def numoutputs(self) -> PowerPowerItemTurnontimeNumoutputs: + """Return the ``POWer:POWer:TURNONtime:NUMOUTputs`` command. + + Description: + - This command sets or queries the number of outputs for the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:NUMOUTputs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:NUMOUTputs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:NUMOUTputs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:NUMOUTputs {ONE|TWO|THREE|FOUR|FIVE|SIX|SEVEN} + - POWer:POWer:TURNONtime:NUMOUTputs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``ONE`` through SEVEN sets the number of outputs for the specified Turn On Time power + measurement. + """ + return self._numoutputs + + @property + def output1source(self) -> PowerPowerItemTurnontimeOutput1source: + """Return the ``POWer:POWer:TURNONtime:OUTPUT1SOURce`` command. + + Description: + - This command sets or queries the output 1 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT1SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT1SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output1source + + @property + def output1voltage(self) -> PowerPowerItemTurnontimeOutput1voltage: + """Return the ``POWer:POWer:TURNONtime:OUTPUT1VOLTage`` command. + + Description: + - This command sets or queries the output 1 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT1VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT1VOLTage + - POWer:POWer:TURNONtime:OUTPUT1VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output1voltage + + @property + def output2source(self) -> PowerPowerItemTurnontimeOutput2source: + """Return the ``POWer:POWer:TURNONtime:OUTPUT2SOURce`` command. + + Description: + - This command sets or queries the output 2 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT2SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT2SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output2source + + @property + def output2voltage(self) -> PowerPowerItemTurnontimeOutput2voltage: + """Return the ``POWer:POWer:TURNONtime:OUTPUT2VOLTage`` command. + + Description: + - This command sets or queries the output 2 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT2VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT2VOLTage + - POWer:POWer:TURNONtime:OUTPUT2VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output2voltage + + @property + def output3source(self) -> PowerPowerItemTurnontimeOutput3source: + """Return the ``POWer:POWer:TURNONtime:OUTPUT3SOURce`` command. + + Description: + - This command sets or queries the output 3 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT3SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT3SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output3source + + @property + def output3voltage(self) -> PowerPowerItemTurnontimeOutput3voltage: + """Return the ``POWer:POWer:TURNONtime:OUTPUT3VOLTage`` command. + + Description: + - This command sets or queries the output 3 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT3VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT3VOLTage + - POWer:POWer:TURNONtime:OUTPUT3VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output3voltage + + @property + def output4source(self) -> PowerPowerItemTurnontimeOutput4source: + """Return the ``POWer:POWer:TURNONtime:OUTPUT4SOURce`` command. + + Description: + - This command sets or queries the output 4 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT4SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT4SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output4source + + @property + def output4voltage(self) -> PowerPowerItemTurnontimeOutput4voltage: + """Return the ``POWer:POWer:TURNONtime:OUTPUT4VOLTage`` command. + + Description: + - This command sets or queries the output 4 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT4VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT4VOLTage + - POWer:POWer:TURNONtime:OUTPUT4VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output4voltage + + @property + def output5source(self) -> PowerPowerItemTurnontimeOutput5source: + """Return the ``POWer:POWer:TURNONtime:OUTPUT5SOURce`` command. + + Description: + - This command sets or queries the output 5 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT5SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT5SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output5source + + @property + def output5voltage(self) -> PowerPowerItemTurnontimeOutput5voltage: + """Return the ``POWer:POWer:TURNONtime:OUTPUT5VOLTage`` command. + + Description: + - This command sets or queries the output 5 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT5VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT5VOLTage + - POWer:POWer:TURNONtime:OUTPUT5VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output5voltage + + @property + def output6source(self) -> PowerPowerItemTurnontimeOutput6source: + """Return the ``POWer:POWer:TURNONtime:OUTPUT6SOURce`` command. + + Description: + - This command sets or queries the output 6 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT6SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT6SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output6source + + @property + def output6voltage(self) -> PowerPowerItemTurnontimeOutput6voltage: + """Return the ``POWer:POWer:TURNONtime:OUTPUT6VOLTage`` command. + + Description: + - This command sets or queries the output 6 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT6VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT6VOLTage + - POWer:POWer:TURNONtime:OUTPUT6VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output6voltage + + @property + def output7source(self) -> PowerPowerItemTurnontimeOutput7source: + """Return the ``POWer:POWer:TURNONtime:OUTPUT7SOURce`` command. + + Description: + - This command sets or queries the output 7 source of the specified Turn On Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT7SOURce {CH|REF|MATH} + - POWer:POWer:TURNONtime:OUTPUT7SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output7source + + @property + def output7voltage(self) -> PowerPowerItemTurnontimeOutput7voltage: + """Return the ``POWer:POWer:TURNONtime:OUTPUT7VOLTage`` command. + + Description: + - This command sets or queries the output 7 voltage level of the specified Turn On Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:OUTPUT7VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:OUTPUT7VOLTage + - POWer:POWer:TURNONtime:OUTPUT7VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output7voltage + + @property + def type(self) -> PowerPowerItemTurnontimeType: + """Return the ``POWer:POWer:TURNONtime:TYPE`` command. + + Description: + - This command sets or queries the type of AC/DC converter used in the specified Turn On + Time power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNONtime:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNONtime:TYPE value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNONtime:TYPE {DCDC|ACDC} + - POWer:POWer:TURNONtime:TYPE? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``DCDC`` sets the measurement to use a DC to DC converter. + - ``ACDC`` sets the measurement to use an AC to DC converter. + """ + return self._type + + +class PowerPowerItemTurnofftimeType(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:TYPE`` command. + + Description: + - This command sets or queries the type of AC/DC converter used in the specified Turn Off + Time power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNOFFtime:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:TURNOFFtime:TYPE value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:TYPE {DCDC|ACDC} + - POWer:POWer:TURNOFFtime:TYPE? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``DCDC`` sets the measurement to use a DC to DC converter. + - ``ACDC`` sets the measurement to use an AC to DC converter. + """ + + +class PowerPowerItemTurnofftimeOutput7voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage`` command. + + Description: + - This command sets or queries the output 7 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT7VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT7VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnofftimeOutput7source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce`` command. + + Description: + - This command sets or queries the output 7 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT7SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT7SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnofftimeOutput6voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage`` command. + + Description: + - This command sets or queries the output 6 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT6VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT6VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnofftimeOutput6source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce`` command. + + Description: + - This command sets or queries the output 6 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT6SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT6SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnofftimeOutput5voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage`` command. + + Description: + - This command sets or queries the output 5 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT5VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT5VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnofftimeOutput5source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce`` command. + + Description: + - This command sets or queries the output 5 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT5SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT5SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnofftimeOutput4voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage`` command. + + Description: + - This command sets or queries the output 4 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT4VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT4VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnofftimeOutput4source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce`` command. + + Description: + - This command sets or queries the output 4 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT4SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT4SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnofftimeOutput3voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage`` command. + + Description: + - This command sets or queries the output 3 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT3VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT3VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnofftimeOutput3source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce`` command. + + Description: + - This command sets or queries the output 3 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT3SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT3SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnofftimeOutput2voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage`` command. + + Description: + - This command sets or queries the output 2 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT2VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT2VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnofftimeOutput2source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce`` command. + + Description: + - This command sets or queries the output 2 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT2SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT2SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnofftimeOutput1voltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage`` command. + + Description: + - This command sets or queries the output 1 voltage level of the of the specified Turn Off + Time power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT1VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT1VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + + +class PowerPowerItemTurnofftimeOutput1source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce`` command. + + Description: + - This command sets or queries the output 1 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT1SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT1SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number of + instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number shown + on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown on a + Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnofftimeNumoutputs(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:NUMOUTputs`` command. + + Description: + - This command sets or queries the number of outputs of the specified Turn Off Time power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:NUMOUTputs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:NUMOUTputs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:NUMOUTputs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:NUMOUTputs {ONE|TWO|THREE|FOUR|FIVE|SIX|SEVEN} + - POWer:POWer:TURNOFFtime:NUMOUTputs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``ONE`` through SEVEN sets the number of outputs for the Turn Off Time measurement. + """ + + +class PowerPowerItemTurnofftimeMaxvoltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:MAXVoltage`` command. + + Description: + - This command sets or queries the maximum voltage of the specified Turn OffTime + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:MAXVoltage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:MAXVoltage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:MAXVoltage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:MAXVoltage + - POWer:POWer:TURNOFFtime:MAXVoltage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the maximum voltage in the range 1 V + to 500 V. + """ + + +class PowerPowerItemTurnofftimeMaxtime(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:MAXTIMe`` command. + + Description: + - This command sets or queries the maximum turn off time of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:MAXTIMe?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNOFFtime:MAXTIMe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:MAXTIMe value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:MAXTIMe + - POWer:POWer:TURNOFFtime:MAXTIMe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the maximum time value, in seconds, + in the range 1 second to 500 seconds. + """ + + +class PowerPowerItemTurnofftimeInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source of the specified Turn Off Time measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:INPUTSOurce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + + +class PowerPowerItemTurnofftimeInputlevel(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:INPUTLEVel`` command. + + Description: + - This command sets or queries the input voltage level of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:INPUTLEVel?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:INPUTLEVel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:INPUTLEVel value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:INPUTLEVel + - POWer:POWer:TURNOFFtime:INPUTLEVel? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the voltage level, in volts, from + -500 V to 500 V. + """ + + +class PowerPowerItemTurnofftimeFrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime:FREQuency`` command. + + Description: + - This command sets or queries the input frequency used by the AC or DC converter of the + specified Turn Off Time measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:FREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:FREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:FREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:FREQuency + - POWer:POWer:TURNOFFtime:FREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the frequency, in Hertz, from 1 Hz to + 500 Hz. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class PowerPowerItemTurnofftime(SCPICmdRead): + """The ``POWer:POWer:TURNOFFtime`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNOFFtime?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.frequency``: The ``POWer:POWer:TURNOFFtime:FREQuency`` command. + - ``.inputlevel``: The ``POWer:POWer:TURNOFFtime:INPUTLEVel`` command. + - ``.inputsource``: The ``POWer:POWer:TURNOFFtime:INPUTSOurce`` command. + - ``.maxtime``: The ``POWer:POWer:TURNOFFtime:MAXTIMe`` command. + - ``.maxvoltage``: The ``POWer:POWer:TURNOFFtime:MAXVoltage`` command. + - ``.numoutputs``: The ``POWer:POWer:TURNOFFtime:NUMOUTputs`` command. + - ``.output1source``: The ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce`` command. + - ``.output1voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage`` command. + - ``.output2source``: The ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce`` command. + - ``.output2voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage`` command. + - ``.output3source``: The ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce`` command. + - ``.output3voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage`` command. + - ``.output4source``: The ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce`` command. + - ``.output4voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage`` command. + - ``.output5source``: The ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce`` command. + - ``.output5voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage`` command. + - ``.output6source``: The ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce`` command. + - ``.output6voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage`` command. + - ``.output7source``: The ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce`` command. + - ``.output7voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage`` command. + - ``.type``: The ``POWer:POWer:TURNOFFtime:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._frequency = PowerPowerItemTurnofftimeFrequency( + device, f"{self._cmd_syntax}:FREQuency" + ) + self._inputlevel = PowerPowerItemTurnofftimeInputlevel( + device, f"{self._cmd_syntax}:INPUTLEVel" + ) + self._inputsource = PowerPowerItemTurnofftimeInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + self._maxtime = PowerPowerItemTurnofftimeMaxtime(device, f"{self._cmd_syntax}:MAXTIMe") + self._maxvoltage = PowerPowerItemTurnofftimeMaxvoltage( + device, f"{self._cmd_syntax}:MAXVoltage" + ) + self._numoutputs = PowerPowerItemTurnofftimeNumoutputs( + device, f"{self._cmd_syntax}:NUMOUTputs" + ) + self._output1source = PowerPowerItemTurnofftimeOutput1source( + device, f"{self._cmd_syntax}:OUTPUT1SOURce" + ) + self._output1voltage = PowerPowerItemTurnofftimeOutput1voltage( + device, f"{self._cmd_syntax}:OUTPUT1VOLTage" + ) + self._output2source = PowerPowerItemTurnofftimeOutput2source( + device, f"{self._cmd_syntax}:OUTPUT2SOURce" + ) + self._output2voltage = PowerPowerItemTurnofftimeOutput2voltage( + device, f"{self._cmd_syntax}:OUTPUT2VOLTage" + ) + self._output3source = PowerPowerItemTurnofftimeOutput3source( + device, f"{self._cmd_syntax}:OUTPUT3SOURce" + ) + self._output3voltage = PowerPowerItemTurnofftimeOutput3voltage( + device, f"{self._cmd_syntax}:OUTPUT3VOLTage" + ) + self._output4source = PowerPowerItemTurnofftimeOutput4source( + device, f"{self._cmd_syntax}:OUTPUT4SOURce" + ) + self._output4voltage = PowerPowerItemTurnofftimeOutput4voltage( + device, f"{self._cmd_syntax}:OUTPUT4VOLTage" + ) + self._output5source = PowerPowerItemTurnofftimeOutput5source( + device, f"{self._cmd_syntax}:OUTPUT5SOURce" + ) + self._output5voltage = PowerPowerItemTurnofftimeOutput5voltage( + device, f"{self._cmd_syntax}:OUTPUT5VOLTage" + ) + self._output6source = PowerPowerItemTurnofftimeOutput6source( + device, f"{self._cmd_syntax}:OUTPUT6SOURce" + ) + self._output6voltage = PowerPowerItemTurnofftimeOutput6voltage( + device, f"{self._cmd_syntax}:OUTPUT6VOLTage" + ) + self._output7source = PowerPowerItemTurnofftimeOutput7source( + device, f"{self._cmd_syntax}:OUTPUT7SOURce" + ) + self._output7voltage = PowerPowerItemTurnofftimeOutput7voltage( + device, f"{self._cmd_syntax}:OUTPUT7VOLTage" + ) + self._type = PowerPowerItemTurnofftimeType(device, f"{self._cmd_syntax}:TYPE") + + @property + def frequency(self) -> PowerPowerItemTurnofftimeFrequency: + """Return the ``POWer:POWer:TURNOFFtime:FREQuency`` command. + + Description: + - This command sets or queries the input frequency used by the AC or DC converter of the + specified Turn Off Time measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:FREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:FREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:FREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:FREQuency + - POWer:POWer:TURNOFFtime:FREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the frequency, in Hertz, from 1 + Hz to 500 Hz. + """ + return self._frequency + + @property + def inputlevel(self) -> PowerPowerItemTurnofftimeInputlevel: + """Return the ``POWer:POWer:TURNOFFtime:INPUTLEVel`` command. + + Description: + - This command sets or queries the input voltage level of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:INPUTLEVel?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:INPUTLEVel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:INPUTLEVel value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:INPUTLEVel + - POWer:POWer:TURNOFFtime:INPUTLEVel? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the voltage level, in volts, from + -500 V to 500 V. + """ + return self._inputlevel + + @property + def inputsource(self) -> PowerPowerItemTurnofftimeInputsource: + """Return the ``POWer:POWer:TURNOFFtime:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:INPUTSOurce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the + number shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number + shown on a Math waveform badge in the UI. + """ + return self._inputsource + + @property + def maxtime(self) -> PowerPowerItemTurnofftimeMaxtime: + """Return the ``POWer:POWer:TURNOFFtime:MAXTIMe`` command. + + Description: + - This command sets or queries the maximum turn off time of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:MAXTIMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:MAXTIMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:MAXTIMe value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:MAXTIMe + - POWer:POWer:TURNOFFtime:MAXTIMe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the maximum time value, in + seconds, in the range 1 second to 500 seconds. + """ + return self._maxtime + + @property + def maxvoltage(self) -> PowerPowerItemTurnofftimeMaxvoltage: + """Return the ``POWer:POWer:TURNOFFtime:MAXVoltage`` command. + + Description: + - This command sets or queries the maximum voltage of the specified Turn OffTime + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:MAXVoltage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:MAXVoltage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:MAXVoltage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:MAXVoltage + - POWer:POWer:TURNOFFtime:MAXVoltage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the maximum voltage in the range + 1 V to 500 V. + """ + return self._maxvoltage + + @property + def numoutputs(self) -> PowerPowerItemTurnofftimeNumoutputs: + """Return the ``POWer:POWer:TURNOFFtime:NUMOUTputs`` command. + + Description: + - This command sets or queries the number of outputs of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:NUMOUTputs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:NUMOUTputs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:NUMOUTputs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:NUMOUTputs {ONE|TWO|THREE|FOUR|FIVE|SIX|SEVEN} + - POWer:POWer:TURNOFFtime:NUMOUTputs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``ONE`` through SEVEN sets the number of outputs for the Turn Off Time measurement. + """ + return self._numoutputs + + @property + def output1source(self) -> PowerPowerItemTurnofftimeOutput1source: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce`` command. + + Description: + - This command sets or queries the output 1 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT1SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT1SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output1source + + @property + def output1voltage(self) -> PowerPowerItemTurnofftimeOutput1voltage: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage`` command. + + Description: + - This command sets or queries the output 1 voltage level of the of the specified Turn + Off Time power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT1VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT1VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output1voltage + + @property + def output2source(self) -> PowerPowerItemTurnofftimeOutput2source: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce`` command. + + Description: + - This command sets or queries the output 2 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT2SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT2SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output2source + + @property + def output2voltage(self) -> PowerPowerItemTurnofftimeOutput2voltage: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage`` command. + + Description: + - This command sets or queries the output 2 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT2VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT2VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output2voltage + + @property + def output3source(self) -> PowerPowerItemTurnofftimeOutput3source: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce`` command. + + Description: + - This command sets or queries the output 3 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT3SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT3SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output3source + + @property + def output3voltage(self) -> PowerPowerItemTurnofftimeOutput3voltage: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage`` command. + + Description: + - This command sets or queries the output 3 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT3VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT3VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output3voltage + + @property + def output4source(self) -> PowerPowerItemTurnofftimeOutput4source: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce`` command. + + Description: + - This command sets or queries the output 4 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT4SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT4SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output4source + + @property + def output4voltage(self) -> PowerPowerItemTurnofftimeOutput4voltage: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage`` command. + + Description: + - This command sets or queries the output 4 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT4VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT4VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output4voltage + + @property + def output5source(self) -> PowerPowerItemTurnofftimeOutput5source: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce`` command. + + Description: + - This command sets or queries the output 5 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT5SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT5SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output5source + + @property + def output5voltage(self) -> PowerPowerItemTurnofftimeOutput5voltage: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage`` command. + + Description: + - This command sets or queries the output 5 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT5VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT5VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output5voltage + + @property + def output6source(self) -> PowerPowerItemTurnofftimeOutput6source: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce`` command. + + Description: + - This command sets or queries the output 6 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT6SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT6SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output6source + + @property + def output6voltage(self) -> PowerPowerItemTurnofftimeOutput6voltage: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage`` command. + + Description: + - This command sets or queries the output 6 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT6VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT6VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output6voltage + + @property + def output7source(self) -> PowerPowerItemTurnofftimeOutput7source: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce`` command. + + Description: + - This command sets or queries the output 7 source of the specified Turn Off Time + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT7SOURce {CH|REF|MATH} + - POWer:POWer:TURNOFFtime:OUTPUT7SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` A channel specifier in the range of 1 through 8 and is limited by the number + of instrument input channels. + - ``REF`` A Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` A Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + return self._output7source + + @property + def output7voltage(self) -> PowerPowerItemTurnofftimeOutput7voltage: + """Return the ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage`` command. + + Description: + - This command sets or queries the output 7 voltage level of the specified Turn Off Time + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:OUTPUT7VOLTage + - POWer:POWer:TURNOFFtime:OUTPUT7VOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` sets the output voltage value, in the range of -6,000 volts to +6,000 volts. + """ + return self._output7voltage + + @property + def type(self) -> PowerPowerItemTurnofftimeType: + """Return the ``POWer:POWer:TURNOFFtime:TYPE`` command. + + Description: + - This command sets or queries the type of AC/DC converter used in the specified Turn + Off Time power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNOFFtime:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:TURNOFFtime:TYPE value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:TURNOFFtime:TYPE {DCDC|ACDC} + - POWer:POWer:TURNOFFtime:TYPE? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``DCDC`` sets the measurement to use a DC to DC converter. + - ``ACDC`` sets the measurement to use an AC to DC converter. + """ + return self._type + + +class PowerPowerItemSwitchingrippleLfrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency`` command. + + Description: + - This command sets or queries the switching frequency for switching ripple measurement in + the specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGRIPPLE:LFREQuency + - POWer:POWer:SWITCHINGRIPPLE:LFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 50 to 1000000. + """ + + +class PowerPowerItemSwitchingrippleInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for switching ripple measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce {CH|MATH|REF} + - POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemSwitchingripple(SCPICmdRead): + """The ``POWer:POWer:SWITCHINGRIPPLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGRIPPLE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SWITCHINGRIPPLE?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce`` command. + - ``.lfrequency``: The ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemSwitchingrippleInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + self._lfrequency = PowerPowerItemSwitchingrippleLfrequency( + device, f"{self._cmd_syntax}:LFREQuency" + ) + + @property + def inputsource(self) -> PowerPowerItemSwitchingrippleInputsource: + """Return the ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for switching ripple measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce {CH|MATH|REF} + - POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + @property + def lfrequency(self) -> PowerPowerItemSwitchingrippleLfrequency: + """Return the ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency`` command. + + Description: + - This command sets or queries the switching frequency for switching ripple measurement + in the specified power measurement number. The power measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGRIPPLE:LFREQuency + - POWer:POWer:SWITCHINGRIPPLE:LFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 50 to 1000000. + """ + return self._lfrequency + + +class PowerPowerItemSwitchinglossVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for the switching loss measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VSOURce {CH|MATH|REF} + - POWer:POWer:SWITCHINGLOSS:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemSwitchinglossVlevelpct(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:VLEVELPct`` command. + + Description: + - This command sets or queries the voltage level (Ton-Start & Stop) in percentage for + switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:VLEVELPct?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELPct?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELPct value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VLEVELPct + - POWer:POWer:SWITCHINGLOSS:VLEVELPct? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 0.0001 to 90. + """ + + +class PowerPowerItemSwitchinglossVlevelabs(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs`` command. + + Description: + - This command sets or queries the voltage level (Ton-Start & Stop) in absolute units for + switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VLEVELAbs + - POWer:POWer:SWITCHINGLOSS:VLEVELAbs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from -100 to 100. + """ + + +class PowerPowerItemSwitchinglossVglevel(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:VGLevel`` command. + + Description: + - This command sets or queries the gate voltage value (V g Level Ton-Start) for the + switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:VGLevel?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VGLevel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VGLevel value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VGLevel + - POWer:POWer:SWITCHINGLOSS:VGLevel? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from -100 to 100. + """ + + +class PowerPowerItemSwitchinglossVcesat(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:VCESat`` command. + + Description: + - This command sets or queries the value for the VCE(sat) value for switching loss + measurement in the specified power measurement number. The power measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:VCESat?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SWITCHINGLOSS:VCESat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VCESat value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VCESat + - POWer:POWer:SWITCHINGLOSS:VCESat? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 0.001 to 100. + """ + + +class PowerPowerItemSwitchinglossSwlconfigtype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType`` command. + + Description: + - This command sets or queries the configuration type for the switching loss measurement in + the specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:SWLCONFIGType {SMPS|PFC|FLYBACK} + - POWer:POWer:SWITCHINGLOSS:SWLCONFIGType? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``SMPS`` : Select this option in case of signals without noise and ringing. The Vg source + is not required. Select Vg souce (Source 3), in case of noisy signal. + - ``PFC`` : Select this option when input DUT signals are from Power Factor Correction + Circuit. For this case, Vg source is mandatory. + - ``FLYBACK`` : Select this option when input signals are ringing. This option does not + require a Vg source. + """ + + +class PowerPowerItemSwitchinglossRdson(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:RDSOn`` command. + + Description: + - This command sets or queries the RDS(on) value for switching loss measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:RDSOn?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SWITCHINGLOSS:RDSOn?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:RDSOn value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:RDSOn + - POWer:POWer:SWITCHINGLOSS:RDSOn? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 0 to 100. + """ + + +class PowerPowerItemSwitchinglossLevelunits(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts`` command. + + Description: + - This command sets or queries the level units for switching loss measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:LEVELUNIts {PERCent|ABSolute} + - POWer:POWer:SWITCHINGLOSS:LEVELUNIts? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``PERCent`` to set the High, Mid, and Low reference levels in percentage. + - ``ABSolute`` to set the High, Mid, and Low reference levels to specific signal levels. + """ + + +class PowerPowerItemSwitchinglossIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:ISOURce`` command. + + Description: + - This command sets or queries the current source for the switching loss measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ISOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:ISOURce {CH|MATH|REF} + - POWer:POWer:SWITCHINGLOSS:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemSwitchinglossIlevelpct(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:ILEVELPct`` command. + + Description: + - This command sets or queries the current level (Ton-Start & Stop) in percentage for + switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:ILEVELPct?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELPct?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELPct value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:ILEVELPct + - POWer:POWer:SWITCHINGLOSS:ILEVELPct? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 0.0001 to 90. + """ + + +class PowerPowerItemSwitchinglossIlevelabs(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs`` command. + + Description: + - This command sets or queries the current level (Ton-Start & Stop) in absolute units for + switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:ILEVELAbs + - POWer:POWer:SWITCHINGLOSS:ILEVELAbs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from -100 to 100. + """ + + +class PowerPowerItemSwitchinglossGatesource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:GATESOurce`` command. + + Description: + - This command sets or queries the gate voltage (V g ) for the switching loss measurement in + the specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:GATESOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:GATESOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:GATESOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:GATESOurce {CH|MATH|REF} + - POWer:POWer:SWITCHINGLOSS:GATESOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemSwitchinglossDevicetype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS:DEVICEType`` command. + + Description: + - This command sets or queries the conduction calculation method for switching loss + measurement in the specified power measurement number. The power measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:DEVICEType?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:DEVICEType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:DEVICEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:DEVICEType {MOSFET|BJT} + - POWer:POWer:SWITCHINGLOSS:DEVICEType? + ``` + """ + + +# pylint: disable=too-many-instance-attributes +class PowerPowerItemSwitchingloss(SCPICmdRead): + """The ``POWer:POWer:SWITCHINGLOSS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SWITCHINGLOSS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.devicetype``: The ``POWer:POWer:SWITCHINGLOSS:DEVICEType`` command. + - ``.gatesource``: The ``POWer:POWer:SWITCHINGLOSS:GATESOurce`` command. + - ``.ilevelabs``: The ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs`` command. + - ``.ilevelpct``: The ``POWer:POWer:SWITCHINGLOSS:ILEVELPct`` command. + - ``.isource``: The ``POWer:POWer:SWITCHINGLOSS:ISOURce`` command. + - ``.levelunits``: The ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts`` command. + - ``.rdson``: The ``POWer:POWer:SWITCHINGLOSS:RDSOn`` command. + - ``.swlconfigtype``: The ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType`` command. + - ``.vcesat``: The ``POWer:POWer:SWITCHINGLOSS:VCESat`` command. + - ``.vglevel``: The ``POWer:POWer:SWITCHINGLOSS:VGLevel`` command. + - ``.vlevelabs``: The ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs`` command. + - ``.vlevelpct``: The ``POWer:POWer:SWITCHINGLOSS:VLEVELPct`` command. + - ``.vsource``: The ``POWer:POWer:SWITCHINGLOSS:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._devicetype = PowerPowerItemSwitchinglossDevicetype( + device, f"{self._cmd_syntax}:DEVICEType" + ) + self._gatesource = PowerPowerItemSwitchinglossGatesource( + device, f"{self._cmd_syntax}:GATESOurce" + ) + self._ilevelabs = PowerPowerItemSwitchinglossIlevelabs( + device, f"{self._cmd_syntax}:ILEVELAbs" + ) + self._ilevelpct = PowerPowerItemSwitchinglossIlevelpct( + device, f"{self._cmd_syntax}:ILEVELPct" + ) + self._isource = PowerPowerItemSwitchinglossIsource(device, f"{self._cmd_syntax}:ISOURce") + self._levelunits = PowerPowerItemSwitchinglossLevelunits( + device, f"{self._cmd_syntax}:LEVELUNIts" + ) + self._rdson = PowerPowerItemSwitchinglossRdson(device, f"{self._cmd_syntax}:RDSOn") + self._swlconfigtype = PowerPowerItemSwitchinglossSwlconfigtype( + device, f"{self._cmd_syntax}:SWLCONFIGType" + ) + self._vcesat = PowerPowerItemSwitchinglossVcesat(device, f"{self._cmd_syntax}:VCESat") + self._vglevel = PowerPowerItemSwitchinglossVglevel(device, f"{self._cmd_syntax}:VGLevel") + self._vlevelabs = PowerPowerItemSwitchinglossVlevelabs( + device, f"{self._cmd_syntax}:VLEVELAbs" + ) + self._vlevelpct = PowerPowerItemSwitchinglossVlevelpct( + device, f"{self._cmd_syntax}:VLEVELPct" + ) + self._vsource = PowerPowerItemSwitchinglossVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def devicetype(self) -> PowerPowerItemSwitchinglossDevicetype: + """Return the ``POWer:POWer:SWITCHINGLOSS:DEVICEType`` command. + + Description: + - This command sets or queries the conduction calculation method for switching loss + measurement in the specified power measurement number. The power measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGLOSS:DEVICEType?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:DEVICEType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:DEVICEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:DEVICEType {MOSFET|BJT} + - POWer:POWer:SWITCHINGLOSS:DEVICEType? + ``` + """ + return self._devicetype + + @property + def gatesource(self) -> PowerPowerItemSwitchinglossGatesource: + """Return the ``POWer:POWer:SWITCHINGLOSS:GATESOurce`` command. + + Description: + - This command sets or queries the gate voltage (V g ) for the switching loss + measurement in the specified power measurement number. The power measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGLOSS:GATESOurce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:GATESOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:GATESOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:GATESOurce {CH|MATH|REF} + - POWer:POWer:SWITCHINGLOSS:GATESOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._gatesource + + @property + def ilevelabs(self) -> PowerPowerItemSwitchinglossIlevelabs: + """Return the ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs`` command. + + Description: + - This command sets or queries the current level (Ton-Start & Stop) in absolute units + for switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:ILEVELAbs + - POWer:POWer:SWITCHINGLOSS:ILEVELAbs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from -100 to 100. + """ + return self._ilevelabs + + @property + def ilevelpct(self) -> PowerPowerItemSwitchinglossIlevelpct: + """Return the ``POWer:POWer:SWITCHINGLOSS:ILEVELPct`` command. + + Description: + - This command sets or queries the current level (Ton-Start & Stop) in percentage for + switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELPct?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELPct?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ILEVELPct value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:ILEVELPct + - POWer:POWer:SWITCHINGLOSS:ILEVELPct? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 0.0001 to 90. + """ + return self._ilevelpct + + @property + def isource(self) -> PowerPowerItemSwitchinglossIsource: + """Return the ``POWer:POWer:SWITCHINGLOSS:ISOURce`` command. + + Description: + - This command sets or queries the current source for the switching loss measurement in + the specified power measurement number. The power measurement number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ISOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:ISOURce {CH|MATH|REF} + - POWer:POWer:SWITCHINGLOSS:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def levelunits(self) -> PowerPowerItemSwitchinglossLevelunits: + """Return the ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts`` command. + + Description: + - This command sets or queries the level units for switching loss measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:LEVELUNIts {PERCent|ABSolute} + - POWer:POWer:SWITCHINGLOSS:LEVELUNIts? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``PERCent`` to set the High, Mid, and Low reference levels in percentage. + - ``ABSolute`` to set the High, Mid, and Low reference levels to specific signal levels. + """ + return self._levelunits + + @property + def rdson(self) -> PowerPowerItemSwitchinglossRdson: + """Return the ``POWer:POWer:SWITCHINGLOSS:RDSOn`` command. + + Description: + - This command sets or queries the RDS(on) value for switching loss measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:RDSOn?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:RDSOn?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:RDSOn value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:RDSOn + - POWer:POWer:SWITCHINGLOSS:RDSOn? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 0 to 100. + """ + return self._rdson + + @property + def swlconfigtype(self) -> PowerPowerItemSwitchinglossSwlconfigtype: + """Return the ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType`` command. + + Description: + - This command sets or queries the configuration type for the switching loss measurement + in the specified power measurement number. The power measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:SWLCONFIGType {SMPS|PFC|FLYBACK} + - POWer:POWer:SWITCHINGLOSS:SWLCONFIGType? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``SMPS`` : Select this option in case of signals without noise and ringing. The Vg + source is not required. Select Vg souce (Source 3), in case of noisy signal. + - ``PFC`` : Select this option when input DUT signals are from Power Factor Correction + Circuit. For this case, Vg source is mandatory. + - ``FLYBACK`` : Select this option when input signals are ringing. This option does not + require a Vg source. + """ + return self._swlconfigtype + + @property + def vcesat(self) -> PowerPowerItemSwitchinglossVcesat: + """Return the ``POWer:POWer:SWITCHINGLOSS:VCESat`` command. + + Description: + - This command sets or queries the value for the VCE(sat) value for switching loss + measurement in the specified power measurement number. The power measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:VCESat?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VCESat?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VCESat value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VCESat + - POWer:POWer:SWITCHINGLOSS:VCESat? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 0.001 to 100. + """ + return self._vcesat + + @property + def vglevel(self) -> PowerPowerItemSwitchinglossVglevel: + """Return the ``POWer:POWer:SWITCHINGLOSS:VGLevel`` command. + + Description: + - This command sets or queries the gate voltage value (V g Level Ton-Start) for the + switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:VGLevel?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VGLevel?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VGLevel value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VGLevel + - POWer:POWer:SWITCHINGLOSS:VGLevel? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from -100 to 100. + """ + return self._vglevel + + @property + def vlevelabs(self) -> PowerPowerItemSwitchinglossVlevelabs: + """Return the ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs`` command. + + Description: + - This command sets or queries the voltage level (Ton-Start & Stop) in absolute units + for switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VLEVELAbs + - POWer:POWer:SWITCHINGLOSS:VLEVELAbs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from -100 to 100. + """ + return self._vlevelabs + + @property + def vlevelpct(self) -> PowerPowerItemSwitchinglossVlevelpct: + """Return the ``POWer:POWer:SWITCHINGLOSS:VLEVELPct`` command. + + Description: + - This command sets or queries the voltage level (Ton-Start & Stop) in percentage for + switching loss measurement in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELPct?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELPct?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VLEVELPct value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VLEVELPct + - POWer:POWer:SWITCHINGLOSS:VLEVELPct? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 0.0001 to 90. + """ + return self._vlevelpct + + @property + def vsource(self) -> PowerPowerItemSwitchinglossVsource: + """Return the ``POWer:POWer:SWITCHINGLOSS:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for the switching loss measurement in + the specified power measurement number. The power measurement number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:SWITCHINGLOSS:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SWITCHINGLOSS:VSOURce {CH|MATH|REF} + - POWer:POWer:SWITCHINGLOSS:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemSoaVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SOA:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for SOA measurement in the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:VSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:VSOURce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:SOA:VSOURce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:VSOURce {CH|MATH|REF} + - POWer:POWer:SOA:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemSoaSavemaskFolder(SCPICmdWriteNoArguments, SCPICmdRead): + """The ``POWer:POWer:SOA:SAVemask:FOLDer`` command. + + Description: + - This command sets or queries the mask file folder path for SOA measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:SAVemask:FOLDer?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:SAVemask:FOLDer?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:SAVemask:FOLDer`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:SAVemask:FOLDer + - POWer:POWer:SOA:SAVemask:FOLDer? + ``` + """ + + +class PowerPowerItemSoaSavemaskFilename(SCPICmdWriteNoArguments, SCPICmdRead): + """The ``POWer:POWer:SOA:SAVemask:FILEName`` command. + + Description: + - This command sets or queries the mask file name for SOA measurement in the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:SAVemask:FILEName?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SOA:SAVemask:FILEName?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:SAVemask:FILEName`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:SAVemask:FILEName + - POWer:POWer:SOA:SAVemask:FILEName? + ``` + """ + + +class PowerPowerItemSoaSavemaskAutoincrement(SCPICmdWriteNoArguments, SCPICmdRead): + """The ``POWer:POWer:SOA:SAVemask:AUTOINCrement`` command. + + Description: + - This command sets or queries the state of auto-increment for saved SOA mask file names in + the specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:SAVemask:AUTOINCrement?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SOA:SAVemask:AUTOINCrement?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:SAVemask:AUTOINCrement`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:SAVemask:AUTOINCrement + - POWer:POWer:SOA:SAVemask:AUTOINCrement? + ``` + """ + + +class PowerPowerItemSoaSavemask(SCPICmdWriteNoArguments, SCPICmdRead): + """The ``POWer:POWer:SOA:SAVemask`` command. + + Description: + - This command saves the mask file as per the name configured and at the configured path or + queries the mask file name, path, and file type for the SOA measurement in the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:SAVemask?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:SAVemask?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:SAVemask`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:SAVemask + - POWer:POWer:SOA:SAVemask? + ``` + + Properties: + - ``.autoincrement``: The ``POWer:POWer:SOA:SAVemask:AUTOINCrement`` command. + - ``.filename``: The ``POWer:POWer:SOA:SAVemask:FILEName`` command. + - ``.folder``: The ``POWer:POWer:SOA:SAVemask:FOLDer`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autoincrement = PowerPowerItemSoaSavemaskAutoincrement( + device, f"{self._cmd_syntax}:AUTOINCrement" + ) + self._filename = PowerPowerItemSoaSavemaskFilename(device, f"{self._cmd_syntax}:FILEName") + self._folder = PowerPowerItemSoaSavemaskFolder(device, f"{self._cmd_syntax}:FOLDer") + + @property + def autoincrement(self) -> PowerPowerItemSoaSavemaskAutoincrement: + """Return the ``POWer:POWer:SOA:SAVemask:AUTOINCrement`` command. + + Description: + - This command sets or queries the state of auto-increment for saved SOA mask file names + in the specified power measurement number. The power measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SOA:SAVemask:AUTOINCrement?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SOA:SAVemask:AUTOINCrement?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write()`` method will send the + ``POWer:POWer:SOA:SAVemask:AUTOINCrement`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:SAVemask:AUTOINCrement + - POWer:POWer:SOA:SAVemask:AUTOINCrement? + ``` + """ + return self._autoincrement + + @property + def filename(self) -> PowerPowerItemSoaSavemaskFilename: + """Return the ``POWer:POWer:SOA:SAVemask:FILEName`` command. + + Description: + - This command sets or queries the mask file name for SOA measurement in the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:SAVemask:FILEName?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SOA:SAVemask:FILEName?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:SAVemask:FILEName`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:SAVemask:FILEName + - POWer:POWer:SOA:SAVemask:FILEName? + ``` + """ + return self._filename + + @property + def folder(self) -> PowerPowerItemSoaSavemaskFolder: + """Return the ``POWer:POWer:SOA:SAVemask:FOLDer`` command. + + Description: + - This command sets or queries the mask file folder path for SOA measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:SAVemask:FOLDer?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SOA:SAVemask:FOLDer?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:SAVemask:FOLDer`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:SAVemask:FOLDer + - POWer:POWer:SOA:SAVemask:FOLDer? + ``` + """ + return self._folder + + +class PowerPowerItemSoaRecallmaskFilename(SCPICmdWriteNoArguments, SCPICmdRead): + """The ``POWer:POWer:SOA:RECAllmask:FILEName`` command. + + Description: + - This command sets or queries the file name for saving SOA mask file name in the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:RECAllmask:FILEName?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SOA:RECAllmask:FILEName?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:RECAllmask:FILEName`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:RECAllmask:FILEName + - POWer:POWer:SOA:RECAllmask:FILEName? + ``` + """ + + +class PowerPowerItemSoaRecallmask(SCPICmdWriteNoArguments, SCPICmdRead): + """The ``POWer:POWer:SOA:RECAllmask`` command. + + Description: + - This command recalls or queries the recall mask file name in the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:RECAllmask?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:RECAllmask?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:RECAllmask`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:RECAllmask + - POWer:POWer:SOA:RECAllmask? + ``` + + Properties: + - ``.filename``: The ``POWer:POWer:SOA:RECAllmask:FILEName`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._filename = PowerPowerItemSoaRecallmaskFilename(device, f"{self._cmd_syntax}:FILEName") + + @property + def filename(self) -> PowerPowerItemSoaRecallmaskFilename: + """Return the ``POWer:POWer:SOA:RECAllmask:FILEName`` command. + + Description: + - This command sets or queries the file name for saving SOA mask file name in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:SOA:RECAllmask:FILEName?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:SOA:RECAllmask:FILEName?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:RECAllmask:FILEName`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:RECAllmask:FILEName + - POWer:POWer:SOA:RECAllmask:FILEName? + ``` + """ + return self._filename + + +class PowerPowerItemSoaPoint(SCPICmdWrite, SCPICmdRead): + r"""The ``POWer:POWer:SOA:POINT`` command. + + Description: + - This command sets or queries the X or Y coordinate value for an SOA mask of a specified + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:POINT?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:POINT?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:SOA:POINT value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:POINT ? + - POWer:POWer:SOA:POINT? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = 1X \| 2X \| 3X \| 4X \| 5X \| 6X \| 7X \| 8X \| 9X \| 10X \| 11X \| 12X \| + 13X \| 14X \| 15X \| 16X \| 17X \| 18X \| 19X \| 20X \| 21X \| 22X \| 23X \| 24X \| 25X \| + 26X \| 27X \| 28X \| 29X \| 30X \| 31X \| 32X \| 1Y \| 2Y \| 3Y \| 4Y \| 5Y \| 6Y \| 7Y \| + 8Y \| 9Y \| 10Y \| 11Y \| 12Y \| 13Y \| 14Y \| 15Y \| 16Y \| 17Y \| 18Y \| 19Y \| 20Y \| + 21Y \| 22Y \| 23Y \| 24Y \| 25Y \| 26Y \| 27Y \| 28Y \| 29Y \| 30Y \| 31Y \| 32Y. + - ```` sets the specified SOA mask X or Y point value, as a floating number, in the + range from -5000 to 5000. + """ + + +class PowerPowerItemSoaIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SOA:ISOURce`` command. + + Description: + - This command sets or queries the current source for SOA measurement in the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:ISOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:ISOURce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:SOA:ISOURce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:SOA:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels onyour instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemSoa(SCPICmdRead): + """The ``POWer:POWer:SOA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.isource``: The ``POWer:POWer:SOA:ISOURce`` command. + - ``.point``: The ``POWer:POWer:SOA:POINT`` command. + - ``.recallmask``: The ``POWer:POWer:SOA:RECAllmask`` command. + - ``.savemask``: The ``POWer:POWer:SOA:SAVemask`` command. + - ``.vsource``: The ``POWer:POWer:SOA:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._isource = PowerPowerItemSoaIsource(device, f"{self._cmd_syntax}:ISOURce") + self._point = PowerPowerItemSoaPoint(device, f"{self._cmd_syntax}:POINT") + self._recallmask = PowerPowerItemSoaRecallmask(device, f"{self._cmd_syntax}:RECAllmask") + self._savemask = PowerPowerItemSoaSavemask(device, f"{self._cmd_syntax}:SAVemask") + self._vsource = PowerPowerItemSoaVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def isource(self) -> PowerPowerItemSoaIsource: + """Return the ``POWer:POWer:SOA:ISOURce`` command. + + Description: + - This command sets or queries the current source for SOA measurement in the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:ISOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:ISOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:SOA:ISOURce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:SOA:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels onyour instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def point(self) -> PowerPowerItemSoaPoint: + r"""Return the ``POWer:POWer:SOA:POINT`` command. + + Description: + - This command sets or queries the X or Y coordinate value for an SOA mask of a + specified power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:POINT?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:POINT?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:SOA:POINT value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:POINT ? + - POWer:POWer:SOA:POINT? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = 1X \| 2X \| 3X \| 4X \| 5X \| 6X \| 7X \| 8X \| 9X \| 10X \| 11X \| + 12X \| 13X \| 14X \| 15X \| 16X \| 17X \| 18X \| 19X \| 20X \| 21X \| 22X \| 23X \| + 24X \| 25X \| 26X \| 27X \| 28X \| 29X \| 30X \| 31X \| 32X \| 1Y \| 2Y \| 3Y \| 4Y \| + 5Y \| 6Y \| 7Y \| 8Y \| 9Y \| 10Y \| 11Y \| 12Y \| 13Y \| 14Y \| 15Y \| 16Y \| 17Y \| + 18Y \| 19Y \| 20Y \| 21Y \| 22Y \| 23Y \| 24Y \| 25Y \| 26Y \| 27Y \| 28Y \| 29Y \| + 30Y \| 31Y \| 32Y. + - ```` sets the specified SOA mask X or Y point value, as a floating number, in the + range from -5000 to 5000. + """ + return self._point + + @property + def recallmask(self) -> PowerPowerItemSoaRecallmask: + """Return the ``POWer:POWer:SOA:RECAllmask`` command. + + Description: + - This command recalls or queries the recall mask file name in the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:RECAllmask?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:RECAllmask?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:RECAllmask`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:RECAllmask + - POWer:POWer:SOA:RECAllmask? + ``` + + Sub-properties: + - ``.filename``: The ``POWer:POWer:SOA:RECAllmask:FILEName`` command. + """ + return self._recallmask + + @property + def savemask(self) -> PowerPowerItemSoaSavemask: + """Return the ``POWer:POWer:SOA:SAVemask`` command. + + Description: + - This command saves the mask file as per the name configured and at the configured path + or queries the mask file name, path, and file type for the SOA measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:SAVemask?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:SAVemask?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write()`` method will send the ``POWer:POWer:SOA:SAVemask`` command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:SAVemask + - POWer:POWer:SOA:SAVemask? + ``` + + Sub-properties: + - ``.autoincrement``: The ``POWer:POWer:SOA:SAVemask:AUTOINCrement`` command. + - ``.filename``: The ``POWer:POWer:SOA:SAVemask:FILEName`` command. + - ``.folder``: The ``POWer:POWer:SOA:SAVemask:FOLDer`` command. + """ + return self._savemask + + @property + def vsource(self) -> PowerPowerItemSoaVsource: + """Return the ``POWer:POWer:SOA:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for SOA measurement in the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA:VSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:SOA:VSOURce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SOA:VSOURce {CH|MATH|REF} + - POWer:POWer:SOA:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemSequence(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:SEQuence`` command. + + Description: + - This command sets or queries the run state of a single sequence power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SEQuence?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SEQuence?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:SEQuence value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SEQuence {RUN|RERUN} + - POWer:POWer:SEQuence? + ``` + + Info: + - ``POWer`` is the Power measurement identifier number. The number must be for a power + measurement that requires a single sequence acquisition. + - ``RUN`` sets the measurement to run an acquisition and acquire data for the specified + single sequence power measurement. + - ``RERUN`` sets the measurement to rerun an acquisition and acquire data for the specified + single sequence power measurement. + """ + + +class PowerPowerItemSeqsetup(SCPICmdWrite): + """The ``POWer:POWer:SEQSETup`` command. + + Description: + - This command sets up the instrument's horizontal, vertical, and trigger parameters to + optimize for taking the specified power measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:POWer:SEQSETup value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SEQSETup Execute + ``` + + Info: + - ``POWer`` is the Power measurement identifier number. The number must be for a power + measurement that requires a single sequence acquisition. + - ``Execute`` sets the measurement to run an acquisition and acquire data for the specified + single sequence power measurement. + """ + + +class PowerPowerItemResultsCurrentacqVrms(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:VRMS`` command. + + Description: + - This command queries the RMS voltage value for the specified power measurement number. The + power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:VRMS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:VRMS? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:VRMS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqTrpwr(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:TRPWR`` command. + + Description: + - This command queries the true power value for the specified power measurement number. The + power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:TRPWR? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:TRPWR? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:TRPWR? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqThdr(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:THDR`` command. + + Description: + - This command queries the total harmonic distortion (RMS) value for the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:THDR? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:THDR? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:THDR? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqThdf(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:THDF`` command. + + Description: + - This command queries the total harmonic distortion (fundamental) value for the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:THDF? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:THDF? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:THDF? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqStddev(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:STDDev`` command. + + Description: + - This command queries the standard deviation value of the current acquisition for the + measurement parameter in the specified power measurement number. The power measurement + number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:STDDev? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:STDDev? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:STDDev? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br|Hc|Hmax|IRipple| DeltaB|DeltaH|Permeability|RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR| PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG|TONLOSS| TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS|TTLENRG|DVBYDT| DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL|PKPK|HIGH|LOW|MAX|MIN |INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + """ # noqa: E501 + + +class PowerPowerItemResultsCurrentacqStatus(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:STATUS`` command. + + Description: + - This command queries the status of the measurement for the specified power measurement + number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:STATUS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:STATUS? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:STATUS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqRms(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:RMS`` command. + + Description: + - This command queries the RMS value of the source selected for the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:RMS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:RMS? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:RMS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqPopulation(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:POPUlation`` command. + + Description: + - This command queries the population (number of complete cycles) of the current acquisition + for the measurement parameter in the specified power measurement number. The power + measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POPUlation? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POPUlation? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:POPUlation? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br| Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS| VRMS|TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE| AMPL|PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + """ # noqa: E501 + + +class PowerPowerItemResultsCurrentacqPohcs(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:POHCS`` command. + + Description: + - This command queries the status of partial odd harmonic current for the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCS? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:POHCS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqPohcm(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:POHCM`` command. + + Description: + - This command queries the measured value of partial odd harmonic current for the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCM? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCM? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:POHCM? 'harmonics' + ``` + """ + + +class PowerPowerItemResultsCurrentacqPohcl(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:POHCL`` command. + + Description: + - This command queries the limit of partial odd harmonic current for the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCL? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCL? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:POHCL? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqPk2pk(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:PK2PK`` command. + + Description: + - This command queries the peak-to-peak value of the current acquisition for the measurement + parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:PK2PK? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:PK2PK? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:PK2PK? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br| Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR|APPPWR| REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS| TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS| TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK|SWRIPRMS| SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + - ``'LRIPPKPK'`` are the parameters for the Line Ripple measurement. + """ # noqa: E501 + + +class PowerPowerItemResultsCurrentacqMinimum(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:MINimum`` command. + + Description: + - This command queries the minimum value of the current acquisition for the measurement + parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MINimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MINimum? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:MINimum? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br| Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS| VRMS|TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL| PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + - ``'SWRIPPKPK'`` are the parameters for the Switching Ripple measurement. + """ # noqa: E501 + + +class PowerPowerItemResultsCurrentacqMean(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:MEAN`` command. + + Description: + - This command queries the mean value of the current acquisition for the measurement + parameter of the specified power measurement . + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MEAN? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MEAN? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:MEAN? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS| VRMS|TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE| AMPL|PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + """ # noqa: E501 + + +class PowerPowerItemResultsCurrentacqMaximum(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:MAXimum`` command. + + Description: + - This command queries the maximum value of the current acquisition for the measurement + parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MAXimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MAXimum? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:MAXimum? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS| Bpeak|Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR| PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS| TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + """ # noqa: E501 + + +class PowerPowerItemResultsCurrentacqIrms(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:IRMS`` command. + + Description: + - This command queries the RMS current value for the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:IRMS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:IRMS? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:IRMS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqFrequency(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:FREQUENCY`` command. + + Description: + - This command queries the fundamental frequency for the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:FREQUENCY? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:FREQUENCY? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:FREQUENCY? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqF3mag(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:F3MAG`` command. + + Description: + - This command queries the third harmonics magnitude value for the specified power + measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:F3MAG? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:F3MAG? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:F3MAG? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +class PowerPowerItemResultsCurrentacqF1mag(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:CURRentacq:F1MAG`` command. + + Description: + - This command queries the first harmonics magnitude value for the specified power + measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:F1MAG? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:F1MAG? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:F1MAG? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + """ + + +# pylint: disable=too-many-instance-attributes +class PowerPowerItemResultsCurrentacq(SCPICmdRead): + """The ``POWer:POWer:RESUlts:CURRentacq`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RESUlts:CURRentacq?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RESUlts:CURRentacq?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.f1mag``: The ``POWer:POWer:RESUlts:CURRentacq:F1MAG`` command. + - ``.f3mag``: The ``POWer:POWer:RESUlts:CURRentacq:F3MAG`` command. + - ``.frequency``: The ``POWer:POWer:RESUlts:CURRentacq:FREQUENCY`` command. + - ``.irms``: The ``POWer:POWer:RESUlts:CURRentacq:IRMS`` command. + - ``.maximum``: The ``POWer:POWer:RESUlts:CURRentacq:MAXimum`` command. + - ``.mean``: The ``POWer:POWer:RESUlts:CURRentacq:MEAN`` command. + - ``.minimum``: The ``POWer:POWer:RESUlts:CURRentacq:MINimum`` command. + - ``.pk2pk``: The ``POWer:POWer:RESUlts:CURRentacq:PK2PK`` command. + - ``.pohcl``: The ``POWer:POWer:RESUlts:CURRentacq:POHCL`` command. + - ``.pohcm``: The ``POWer:POWer:RESUlts:CURRentacq:POHCM`` command. + - ``.pohcs``: The ``POWer:POWer:RESUlts:CURRentacq:POHCS`` command. + - ``.population``: The ``POWer:POWer:RESUlts:CURRentacq:POPUlation`` command. + - ``.rms``: The ``POWer:POWer:RESUlts:CURRentacq:RMS`` command. + - ``.status``: The ``POWer:POWer:RESUlts:CURRentacq:STATUS`` command. + - ``.stddev``: The ``POWer:POWer:RESUlts:CURRentacq:STDDev`` command. + - ``.thdf``: The ``POWer:POWer:RESUlts:CURRentacq:THDF`` command. + - ``.thdr``: The ``POWer:POWer:RESUlts:CURRentacq:THDR`` command. + - ``.trpwr``: The ``POWer:POWer:RESUlts:CURRentacq:TRPWR`` command. + - ``.vrms``: The ``POWer:POWer:RESUlts:CURRentacq:VRMS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._f1mag = PowerPowerItemResultsCurrentacqF1mag(device, f"{self._cmd_syntax}:F1MAG") + self._f3mag = PowerPowerItemResultsCurrentacqF3mag(device, f"{self._cmd_syntax}:F3MAG") + self._frequency = PowerPowerItemResultsCurrentacqFrequency( + device, f"{self._cmd_syntax}:FREQUENCY" + ) + self._irms = PowerPowerItemResultsCurrentacqIrms(device, f"{self._cmd_syntax}:IRMS") + self._maximum = PowerPowerItemResultsCurrentacqMaximum( + device, f"{self._cmd_syntax}:MAXimum" + ) + self._mean = PowerPowerItemResultsCurrentacqMean(device, f"{self._cmd_syntax}:MEAN") + self._minimum = PowerPowerItemResultsCurrentacqMinimum( + device, f"{self._cmd_syntax}:MINimum" + ) + self._pk2pk = PowerPowerItemResultsCurrentacqPk2pk(device, f"{self._cmd_syntax}:PK2PK") + self._pohcl = PowerPowerItemResultsCurrentacqPohcl(device, f"{self._cmd_syntax}:POHCL") + self._pohcm = PowerPowerItemResultsCurrentacqPohcm(device, f"{self._cmd_syntax}:POHCM") + self._pohcs = PowerPowerItemResultsCurrentacqPohcs(device, f"{self._cmd_syntax}:POHCS") + self._population = PowerPowerItemResultsCurrentacqPopulation( + device, f"{self._cmd_syntax}:POPUlation" + ) + self._rms = PowerPowerItemResultsCurrentacqRms(device, f"{self._cmd_syntax}:RMS") + self._status = PowerPowerItemResultsCurrentacqStatus(device, f"{self._cmd_syntax}:STATUS") + self._stddev = PowerPowerItemResultsCurrentacqStddev(device, f"{self._cmd_syntax}:STDDev") + self._thdf = PowerPowerItemResultsCurrentacqThdf(device, f"{self._cmd_syntax}:THDF") + self._thdr = PowerPowerItemResultsCurrentacqThdr(device, f"{self._cmd_syntax}:THDR") + self._trpwr = PowerPowerItemResultsCurrentacqTrpwr(device, f"{self._cmd_syntax}:TRPWR") + self._vrms = PowerPowerItemResultsCurrentacqVrms(device, f"{self._cmd_syntax}:VRMS") + + @property + def f1mag(self) -> PowerPowerItemResultsCurrentacqF1mag: + """Return the ``POWer:POWer:RESUlts:CURRentacq:F1MAG`` command. + + Description: + - This command queries the first harmonics magnitude value for the specified power + measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:F1MAG? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:F1MAG? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:F1MAG? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._f1mag + + @property + def f3mag(self) -> PowerPowerItemResultsCurrentacqF3mag: + """Return the ``POWer:POWer:RESUlts:CURRentacq:F3MAG`` command. + + Description: + - This command queries the third harmonics magnitude value for the specified power + measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:F3MAG? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:F3MAG? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:F3MAG? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._f3mag + + @property + def frequency(self) -> PowerPowerItemResultsCurrentacqFrequency: + """Return the ``POWer:POWer:RESUlts:CURRentacq:FREQUENCY`` command. + + Description: + - This command queries the fundamental frequency for the specified power measurement + number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:FREQUENCY? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:FREQUENCY? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:FREQUENCY? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._frequency + + @property + def irms(self) -> PowerPowerItemResultsCurrentacqIrms: + """Return the ``POWer:POWer:RESUlts:CURRentacq:IRMS`` command. + + Description: + - This command queries the RMS current value for the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:IRMS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:IRMS? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:IRMS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._irms + + @property + def maximum(self) -> PowerPowerItemResultsCurrentacqMaximum: + """Return the ``POWer:POWer:RESUlts:CURRentacq:MAXimum`` command. + + Description: + - This command queries the maximum value of the current acquisition for the measurement + parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MAXimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MAXimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:MAXimum? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS| Bpeak|Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR| PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS| TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + """ # noqa: E501 + return self._maximum + + @property + def mean(self) -> PowerPowerItemResultsCurrentacqMean: + """Return the ``POWer:POWer:RESUlts:CURRentacq:MEAN`` command. + + Description: + - This command queries the mean value of the current acquisition for the measurement + parameter of the specified power measurement . + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MEAN? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MEAN? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:MEAN? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS| VRMS|TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE| AMPL|PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + """ # noqa: E501 + return self._mean + + @property + def minimum(self) -> PowerPowerItemResultsCurrentacqMinimum: + """Return the ``POWer:POWer:RESUlts:CURRentacq:MINimum`` command. + + Description: + - This command queries the minimum value of the current acquisition for the measurement + parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MINimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:MINimum? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:MINimum? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br| Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS| VRMS|TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL| PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + - ``'SWRIPPKPK'`` are the parameters for the Switching Ripple measurement. + """ # noqa: E501 + return self._minimum + + @property + def pk2pk(self) -> PowerPowerItemResultsCurrentacqPk2pk: + """Return the ``POWer:POWer:RESUlts:CURRentacq:PK2PK`` command. + + Description: + - This command queries the peak-to-peak value of the current acquisition for the + measurement parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:PK2PK? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:PK2PK? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:PK2PK? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br| Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR|APPPWR| REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS| TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS| TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK|SWRIPRMS| SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + - ``'LRIPPKPK'`` are the parameters for the Line Ripple measurement. + """ # noqa: E501 + return self._pk2pk + + @property + def pohcl(self) -> PowerPowerItemResultsCurrentacqPohcl: + """Return the ``POWer:POWer:RESUlts:CURRentacq:POHCL`` command. + + Description: + - This command queries the limit of partial odd harmonic current for the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCL? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCL? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:POHCL? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._pohcl + + @property + def pohcm(self) -> PowerPowerItemResultsCurrentacqPohcm: + """Return the ``POWer:POWer:RESUlts:CURRentacq:POHCM`` command. + + Description: + - This command queries the measured value of partial odd harmonic current for the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCM? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCM? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:POHCM? 'harmonics' + ``` + """ + return self._pohcm + + @property + def pohcs(self) -> PowerPowerItemResultsCurrentacqPohcs: + """Return the ``POWer:POWer:RESUlts:CURRentacq:POHCS`` command. + + Description: + - This command queries the status of partial odd harmonic current for the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POHCS? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:POHCS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._pohcs + + @property + def population(self) -> PowerPowerItemResultsCurrentacqPopulation: + """Return the ``POWer:POWer:RESUlts:CURRentacq:POPUlation`` command. + + Description: + - This command queries the population (number of complete cycles) of the current + acquisition for the measurement parameter in the specified power measurement number. + The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POPUlation? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:POPUlation? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:POPUlation? {InputPwr| Output1Pwr|Output2Pwr|Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br| Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS| VRMS|TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY|NDUTY|PPULSE|NPULSE| AMPL|PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + """ # noqa: E501 + return self._population + + @property + def rms(self) -> PowerPowerItemResultsCurrentacqRms: + """Return the ``POWer:POWer:RESUlts:CURRentacq:RMS`` command. + + Description: + - This command queries the RMS value of the source selected for the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:RMS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:RMS? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:RMS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._rms + + @property + def status(self) -> PowerPowerItemResultsCurrentacqStatus: + """Return the ``POWer:POWer:RESUlts:CURRentacq:STATUS`` command. + + Description: + - This command queries the status of the measurement for the specified power measurement + number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:STATUS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:STATUS? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:STATUS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._status + + @property + def stddev(self) -> PowerPowerItemResultsCurrentacqStddev: + """Return the ``POWer:POWer:RESUlts:CURRentacq:STDDev`` command. + + Description: + - This command queries the standard deviation value of the current acquisition for the + measurement parameter in the specified power measurement number. The power measurement + number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:STDDev? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:STDDev? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:STDDev? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br|Hc|Hmax|IRipple| DeltaB|DeltaH|Permeability|RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR| PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG|TONLOSS| TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS|TTLENRG|DVBYDT| DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL|PKPK|HIGH|LOW|MAX|MIN |INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + """ # noqa: E501 + return self._stddev + + @property + def thdf(self) -> PowerPowerItemResultsCurrentacqThdf: + """Return the ``POWer:POWer:RESUlts:CURRentacq:THDF`` command. + + Description: + - This command queries the total harmonic distortion (fundamental) value for the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:THDF? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:THDF? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:THDF? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._thdf + + @property + def thdr(self) -> PowerPowerItemResultsCurrentacqThdr: + """Return the ``POWer:POWer:RESUlts:CURRentacq:THDR`` command. + + Description: + - This command queries the total harmonic distortion (RMS) value for the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:THDR? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:THDR? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:THDR? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._thdr + + @property + def trpwr(self) -> PowerPowerItemResultsCurrentacqTrpwr: + """Return the ``POWer:POWer:RESUlts:CURRentacq:TRPWR`` command. + + Description: + - This command queries the true power value for the specified power measurement number. + The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:TRPWR? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:TRPWR? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:TRPWR? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._trpwr + + @property + def vrms(self) -> PowerPowerItemResultsCurrentacqVrms: + """Return the ``POWer:POWer:RESUlts:CURRentacq:VRMS`` command. + + Description: + - This command queries the RMS voltage value for the specified power measurement number. + The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:VRMS? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq:VRMS? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:CURRentacq:VRMS? 'harmonics' + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + """ + return self._vrms + + +class PowerPowerItemResultsAllacqsStddev(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:ALLAcqs:STDDev`` command. + + Description: + - This command queries the standard deviation value of all acquisitions for the measurement + parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:STDDev? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:STDDev? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:STDDev? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br|Hc| Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS| TRUEPWR|APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ| ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG|TONLOSS| TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS| TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS| LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY| NDUTY|PPULSE|NPULSE|AMPL|PKPK|HIGH|LOW|MAX|MIN| INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + """ # noqa: E501 + + +class PowerPowerItemResultsAllacqsPopulation(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:ALLAcqs:POPUlation`` command. + + Description: + - This command queries the population (number of complete cycles) of all acquisitions for + the measurement parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:POPUlation? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:POPUlation? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:POPUlation? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR| PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS| TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE| AMPL|PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + """ # noqa: E501 + + +class PowerPowerItemResultsAllacqsPk2pk(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:ALLAcqs:PK2PK`` command. + + Description: + - This command queries the peak-to-peak value of all acquisitions for the measurement + parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:PK2PK? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:PK2PK? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:PK2PK? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR| PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR| IRMS|VRMS|TONENRG|TONLOSS|TOFFENRG| TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS|TTLENRG| DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY| NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + - ``'SWRIPPKPK'`` are the parameters for the Switching Ripple measurement. + """ # noqa: E501 + + +class PowerPowerItemResultsAllacqsMinimum(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:ALLAcqs:MINimum`` command. + + Description: + - This command queries the minimum value of all acquisitions for the measurement parameter + of the specified power measurement . + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MINimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MINimum? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:MINimum? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS| Bpeak|Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR| PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR| IRMS|VRMS|TONENRG|TONLOSS|TOFFENRG| TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS|TTLENRG| DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY| NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + """ # noqa: E501 + + +class PowerPowerItemResultsAllacqsMean(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:ALLAcqs:MEAN`` command. + + Description: + - This command queries the mean value of all acquisitions for the measurement parameter in + the specified power measurement number . + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MEAN? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MEAN? argument`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:MEAN? {InputPwr|Output1Pwr|Output2Pwr| Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency| INDUCT|IVSINTV|MAGLOSS|Bpeak|Br|Hc|Hmax| IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ| ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG| TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL| PKPK|HIGH|LOW|MAX|MIN| INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + """ # noqa: E501 + + +class PowerPowerItemResultsAllacqsMaximum(SCPICmdReadWithArguments): + """The ``POWer:POWer:RESUlts:ALLAcqs:MAXimum`` command. + + Description: + - This command queries the maximum value of all acquisitions for the measurement parameter + in the specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MAXimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MAXimum? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:MAXimum? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability| RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR|PHASE| PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG| TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL| PKPK|HIGH|LOW|MAX|MIN| INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified power + measurement number. Available results depend on the power measurement being taken in the + specified measurement number. The valid arguments are. + """ # noqa: E501 + + +class PowerPowerItemResultsAllacqs(SCPICmdRead): + """The ``POWer:POWer:RESUlts:ALLAcqs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RESUlts:ALLAcqs?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RESUlts:ALLAcqs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.maximum``: The ``POWer:POWer:RESUlts:ALLAcqs:MAXimum`` command. + - ``.mean``: The ``POWer:POWer:RESUlts:ALLAcqs:MEAN`` command. + - ``.minimum``: The ``POWer:POWer:RESUlts:ALLAcqs:MINimum`` command. + - ``.pk2pk``: The ``POWer:POWer:RESUlts:ALLAcqs:PK2PK`` command. + - ``.population``: The ``POWer:POWer:RESUlts:ALLAcqs:POPUlation`` command. + - ``.stddev``: The ``POWer:POWer:RESUlts:ALLAcqs:STDDev`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = PowerPowerItemResultsAllacqsMaximum(device, f"{self._cmd_syntax}:MAXimum") + self._mean = PowerPowerItemResultsAllacqsMean(device, f"{self._cmd_syntax}:MEAN") + self._minimum = PowerPowerItemResultsAllacqsMinimum(device, f"{self._cmd_syntax}:MINimum") + self._pk2pk = PowerPowerItemResultsAllacqsPk2pk(device, f"{self._cmd_syntax}:PK2PK") + self._population = PowerPowerItemResultsAllacqsPopulation( + device, f"{self._cmd_syntax}:POPUlation" + ) + self._stddev = PowerPowerItemResultsAllacqsStddev(device, f"{self._cmd_syntax}:STDDev") + + @property + def maximum(self) -> PowerPowerItemResultsAllacqsMaximum: + """Return the ``POWer:POWer:RESUlts:ALLAcqs:MAXimum`` command. + + Description: + - This command queries the maximum value of all acquisitions for the measurement + parameter in the specified power measurement number. The power measurement number is + specified by x. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MAXimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MAXimum? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:MAXimum? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH|Permeability| RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR|PHASE| PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG| TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL| PKPK|HIGH|LOW|MAX|MIN| INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + """ # noqa: E501 + return self._maximum + + @property + def mean(self) -> PowerPowerItemResultsAllacqsMean: + """Return the ``POWer:POWer:RESUlts:ALLAcqs:MEAN`` command. + + Description: + - This command queries the mean value of all acquisitions for the measurement parameter + in the specified power measurement number . + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MEAN? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MEAN? argument`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:MEAN? {InputPwr|Output1Pwr|Output2Pwr| Output3Pwr|Efficiency1|Efficiency2| Efficiency3|TotalEfficiency| INDUCT|IVSINTV|MAGLOSS|Bpeak|Br|Hc|Hmax| IRipple|DeltaB|DeltaH|Permeability|RDS|TRUEPWR| APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ| ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG| TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE|AMPL| PKPK|HIGH|LOW|MAX|MIN| INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + """ # noqa: E501 + return self._mean + + @property + def minimum(self) -> PowerPowerItemResultsAllacqsMinimum: + """Return the ``POWer:POWer:RESUlts:ALLAcqs:MINimum`` command. + + Description: + - This command queries the minimum value of all acquisitions for the measurement + parameter of the specified power measurement . + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MINimum? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:MINimum? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:MINimum? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS| Bpeak|Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR| PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR| IRMS|VRMS|TONENRG|TONLOSS|TOFFENRG| TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS|TTLENRG| DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY| NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + """ # noqa: E501 + return self._minimum + + @property + def pk2pk(self) -> PowerPowerItemResultsAllacqsPk2pk: + """Return the ``POWer:POWer:RESUlts:ALLAcqs:PK2PK`` command. + + Description: + - This command queries the peak-to-peak value of all acquisitions for the measurement + parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:PK2PK? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:PK2PK? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:PK2PK? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR| PWRFACTOR|PHASE|PWRFREQ|ICFACTOR|VCFACTOR| IRMS|VRMS|TONENRG|TONLOSS|TOFFENRG| TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS|TTLENRG| DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS|LRIPPKPK| SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY| NDUTY|PPULSE|NPULSE|AMPL|PKPK| HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + - ``'SWRIPPKPK'`` are the parameters for the Switching Ripple measurement. + """ # noqa: E501 + return self._pk2pk + + @property + def population(self) -> PowerPowerItemResultsAllacqsPopulation: + """Return the ``POWer:POWer:RESUlts:ALLAcqs:POPUlation`` command. + + Description: + - This command queries the population (number of complete cycles) of all acquisitions + for the measurement parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:POPUlation? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:POPUlation? argument`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:POPUlation? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak| Br|Hc|Hmax|IRipple|DeltaB|DeltaH| Permeability|RDS|TRUEPWR|APPPWR|REPWR|PWRFACTOR| PHASE|PWRFREQ|ICFACTOR|VCFACTOR|IRMS|VRMS| TONENRG|TONLOSS|TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS| TTLLOSS|TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT| LRIPRMS|LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD| FREQ|PDUTY|NDUTY|PPULSE|NPULSE| AMPL|PKPK|HIGH|LOW|MAX|MIN|INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + """ # noqa: E501 + return self._population + + @property + def stddev(self) -> PowerPowerItemResultsAllacqsStddev: + """Return the ``POWer:POWer:RESUlts:ALLAcqs:STDDev`` command. + + Description: + - This command queries the standard deviation value of all acquisitions for the + measurement parameter in the specified power measurement number. + + Usage: + - Using the ``.query(argument)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:STDDev? argument`` query. + - Using the ``.verify(argument, value)`` method will send the + ``POWer:POWer:RESUlts:ALLAcqs:STDDev? argument`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:RESUlts:ALLAcqs:STDDev? {InputPwr|Output1Pwr| Output2Pwr|Output3Pwr|Efficiency1|Efficiency2|Efficiency3| TotalEfficiency|INDUCT|IVSINTV|MAGLOSS|Bpeak|Br|Hc| Hmax|IRipple|DeltaB|DeltaH|Permeability|RDS| TRUEPWR|APPPWR|REPWR|PWRFACTOR|PHASE|PWRFREQ| ICFACTOR|VCFACTOR|IRMS|VRMS|TONENRG|TONLOSS| TOFFENRG|TOFFLOSS|CONDENRG|CONDLOSS|TTLLOSS| TTLENRG|DVBYDT|DIBYDT|SOAHITSCNT|LRIPRMS| LRIPPKPK|SWRIPRMS|SWRIPPKPK|PRIOD|FREQ|PDUTY| NDUTY|PPULSE|NPULSE|AMPL|PKPK|HIGH|LOW|MAX|MIN| INRUSH|CAPACITANCE|OUTPUT1| OUTPUT2|OUTPUT3|OUTPUT4|OUTPUT5|OUTPUT6|OUTPUT7| GAINCROSSOVERFREQ|PHASECROSSOVERFREQ|GM|PM| MAXPSRR|MAXPSRRFREQ|MINPSRR|MINPSRRFREQ} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = the measurement result that you want to return from the specified + power measurement number. Available results depend on the power measurement being + taken in the specified measurement number. The valid arguments are. + """ # noqa: E501 + return self._stddev + + +class PowerPowerItemResults(SCPICmdRead): + """The ``POWer:POWer:RESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RESUlts?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.allacqs``: The ``POWer:POWer:RESUlts:ALLAcqs`` command tree. + - ``.currentacq``: The ``POWer:POWer:RESUlts:CURRentacq`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._allacqs = PowerPowerItemResultsAllacqs(device, f"{self._cmd_syntax}:ALLAcqs") + self._currentacq = PowerPowerItemResultsCurrentacq(device, f"{self._cmd_syntax}:CURRentacq") + + @property + def allacqs(self) -> PowerPowerItemResultsAllacqs: + """Return the ``POWer:POWer:RESUlts:ALLAcqs`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RESUlts:ALLAcqs?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RESUlts:ALLAcqs?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.maximum``: The ``POWer:POWer:RESUlts:ALLAcqs:MAXimum`` command. + - ``.mean``: The ``POWer:POWer:RESUlts:ALLAcqs:MEAN`` command. + - ``.minimum``: The ``POWer:POWer:RESUlts:ALLAcqs:MINimum`` command. + - ``.pk2pk``: The ``POWer:POWer:RESUlts:ALLAcqs:PK2PK`` command. + - ``.population``: The ``POWer:POWer:RESUlts:ALLAcqs:POPUlation`` command. + - ``.stddev``: The ``POWer:POWer:RESUlts:ALLAcqs:STDDev`` command. + """ + return self._allacqs + + @property + def currentacq(self) -> PowerPowerItemResultsCurrentacq: + """Return the ``POWer:POWer:RESUlts:CURRentacq`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RESUlts:CURRentacq?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:RESUlts:CURRentacq?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.f1mag``: The ``POWer:POWer:RESUlts:CURRentacq:F1MAG`` command. + - ``.f3mag``: The ``POWer:POWer:RESUlts:CURRentacq:F3MAG`` command. + - ``.frequency``: The ``POWer:POWer:RESUlts:CURRentacq:FREQUENCY`` command. + - ``.irms``: The ``POWer:POWer:RESUlts:CURRentacq:IRMS`` command. + - ``.maximum``: The ``POWer:POWer:RESUlts:CURRentacq:MAXimum`` command. + - ``.mean``: The ``POWer:POWer:RESUlts:CURRentacq:MEAN`` command. + - ``.minimum``: The ``POWer:POWer:RESUlts:CURRentacq:MINimum`` command. + - ``.pk2pk``: The ``POWer:POWer:RESUlts:CURRentacq:PK2PK`` command. + - ``.pohcl``: The ``POWer:POWer:RESUlts:CURRentacq:POHCL`` command. + - ``.pohcm``: The ``POWer:POWer:RESUlts:CURRentacq:POHCM`` command. + - ``.pohcs``: The ``POWer:POWer:RESUlts:CURRentacq:POHCS`` command. + - ``.population``: The ``POWer:POWer:RESUlts:CURRentacq:POPUlation`` command. + - ``.rms``: The ``POWer:POWer:RESUlts:CURRentacq:RMS`` command. + - ``.status``: The ``POWer:POWer:RESUlts:CURRentacq:STATUS`` command. + - ``.stddev``: The ``POWer:POWer:RESUlts:CURRentacq:STDDev`` command. + - ``.thdf``: The ``POWer:POWer:RESUlts:CURRentacq:THDF`` command. + - ``.thdr``: The ``POWer:POWer:RESUlts:CURRentacq:THDR`` command. + - ``.trpwr``: The ``POWer:POWer:RESUlts:CURRentacq:TRPWR`` command. + - ``.vrms``: The ``POWer:POWer:RESUlts:CURRentacq:VRMS`` command. + """ + return self._currentacq + + +class PowerPowerItemReflevelsPercentType(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:PERCent:TYPE`` command. + + Description: + - This command sets or queries the reference levels for the specified power measurement + number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - POWer:POWer:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``TENNinety`` to set the low reference levels as 10% and high reference levels as 90%. + - ``TWENtyeighty`` to set the low reference levels as 20% and high reference levels as 80%. + - ``CUSTom`` to set the custom low, high, and mid reference levels for rising and falling + edges. + """ + + +class PowerPowerItemReflevelsPercentRisemid(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the rising edge for mid reference level in percentage for the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent:RISEMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:RISEMid + - POWer:POWer:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + + +class PowerPowerItemReflevelsPercentRiselow(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the rising edge for low reference level in percentage for the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent:RISELow?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:RISELow + - POWer:POWer:REFLevels:PERCent:RISELow? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + + +class PowerPowerItemReflevelsPercentRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the rising edge for high reference level in percentage for + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent:RISEHigh?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:RISEHigh + - POWer:POWer:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + + +class PowerPowerItemReflevelsPercentHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the hysteresis in percentage for the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:HYSTeresis?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:HYSTeresis + - POWer:POWer:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + + +class PowerPowerItemReflevelsPercentFallmid(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the falling edge for mid reference level in percentage for + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent:FALLMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:FALLMid + - POWer:POWer:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + + +class PowerPowerItemReflevelsPercentFalllow(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the falling edge for low reference level in percentage for + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent:FALLLow?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:FALLLow + - POWer:POWer:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + + +class PowerPowerItemReflevelsPercentFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the falling edge for high reference level in percentage for + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent:FALLHigh?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:FALLHigh + - POWer:POWer:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + + +# pylint: disable=too-many-instance-attributes +class PowerPowerItemReflevelsPercent(SCPICmdRead): + """The ``POWer:POWer:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:REFLevels:PERCent?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.fallhigh``: The ``POWer:POWer:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``POWer:POWer:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``POWer:POWer:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``POWer:POWer:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``POWer:POWer:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``POWer:POWer:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``POWer:POWer:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``POWer:POWer:REFLevels:PERCent:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = PowerPowerItemReflevelsPercentFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = PowerPowerItemReflevelsPercentFalllow(device, f"{self._cmd_syntax}:FALLLow") + self._fallmid = PowerPowerItemReflevelsPercentFallmid(device, f"{self._cmd_syntax}:FALLMid") + self._hysteresis = PowerPowerItemReflevelsPercentHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = PowerPowerItemReflevelsPercentRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = PowerPowerItemReflevelsPercentRiselow(device, f"{self._cmd_syntax}:RISELow") + self._risemid = PowerPowerItemReflevelsPercentRisemid(device, f"{self._cmd_syntax}:RISEMid") + self._type = PowerPowerItemReflevelsPercentType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> PowerPowerItemReflevelsPercentFallhigh: + """Return the ``POWer:POWer:REFLevels:PERCent:FALLHigh`` command. + + Description: + - This command sets or queries the falling edge for high reference level in percentage + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLHigh value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:FALLHigh + - POWer:POWer:REFLevels:PERCent:FALLHigh? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + return self._fallhigh + + @property + def falllow(self) -> PowerPowerItemReflevelsPercentFalllow: + """Return the ``POWer:POWer:REFLevels:PERCent:FALLLow`` command. + + Description: + - This command sets or queries the falling edge for low reference level in percentage + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLLow value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:FALLLow + - POWer:POWer:REFLevels:PERCent:FALLLow? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + return self._falllow + + @property + def fallmid(self) -> PowerPowerItemReflevelsPercentFallmid: + """Return the ``POWer:POWer:REFLevels:PERCent:FALLMid`` command. + + Description: + - This command sets or queries the falling edge for mid reference level in percentage + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:FALLMid value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:FALLMid + - POWer:POWer:REFLevels:PERCent:FALLMid? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + return self._fallmid + + @property + def hysteresis(self) -> PowerPowerItemReflevelsPercentHysteresis: + """Return the ``POWer:POWer:REFLevels:PERCent:HYSTeresis`` command. + + Description: + - This command sets or queries the hysteresis in percentage for the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:PERCent:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:HYSTeresis?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:HYSTeresis + - POWer:POWer:REFLevels:PERCent:HYSTeresis? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + return self._hysteresis + + @property + def risehigh(self) -> PowerPowerItemReflevelsPercentRisehigh: + """Return the ``POWer:POWer:REFLevels:PERCent:RISEHigh`` command. + + Description: + - This command sets or queries the rising edge for high reference level in percentage + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEHigh value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:RISEHigh + - POWer:POWer:REFLevels:PERCent:RISEHigh? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + return self._risehigh + + @property + def riselow(self) -> PowerPowerItemReflevelsPercentRiselow: + """Return the ``POWer:POWer:REFLevels:PERCent:RISELow`` command. + + Description: + - This command sets or queries the rising edge for low reference level in percentage for + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISELow value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:RISELow + - POWer:POWer:REFLevels:PERCent:RISELow? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + return self._riselow + + @property + def risemid(self) -> PowerPowerItemReflevelsPercentRisemid: + """Return the ``POWer:POWer:REFLevels:PERCent:RISEMid`` command. + + Description: + - This command sets or queries the rising edge for mid reference level in percentage for + the specified power measurement number. The power measurement number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:RISEMid value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:RISEMid + - POWer:POWer:REFLevels:PERCent:RISEMid? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 1 to 99. + """ + return self._risemid + + @property + def type(self) -> PowerPowerItemReflevelsPercentType: + """Return the ``POWer:POWer:REFLevels:PERCent:TYPE`` command. + + Description: + - This command sets or queries the reference levels for the specified power measurement + number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent:TYPE value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:PERCent:TYPE {TENNinety|TWENtyeighty|CUSTom} + - POWer:POWer:REFLevels:PERCent:TYPE? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``TENNinety`` to set the low reference levels as 10% and high reference levels as 90%. + - ``TWENtyeighty`` to set the low reference levels as 20% and high reference levels as + 80%. + - ``CUSTom`` to set the custom low, high, and mid reference levels for rising and + falling edges. + """ + return self._type + + +class PowerPowerItemReflevelsMethod(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method to configure reference level values for the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:METHod?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:REFLevels:METHod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:REFLevels:METHod value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:METHod {PERCent|ABSolute} + - POWer:POWer:REFLevels:METHod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``PERCent`` sets the power measurement to use absolute values to configure reference level + values. + - ``ABSolute`` sets the power measurement to use percentage to configure reference level + values. + """ + + +class PowerPowerItemReflevelsBasetop(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the reference level base top method for the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:BASETop?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:REFLevels:BASETop?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:BASETop value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - POWer:POWer:REFLevels:BASETop? + ``` + """ + + +class PowerPowerItemReflevelsAbsoluteType(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the type of measurement levels when reference level is set + to absolute for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:ABSolute:TYPE?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - POWer:POWer:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``SAME`` : select when the rising edge and falling edge reference levels are same. + - ``UNIQue`` : select when the rising edge and falling edge reference levels are different. + """ + + +class PowerPowerItemReflevelsAbsoluteRisemid(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the rising edge for mid reference level in absolute units for + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:ABSolute:RISEMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:RISEMid + - POWer:POWer:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + + +class PowerPowerItemReflevelsAbsoluteRiselow(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the rising edge for low reference level in absolute units for + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:ABSolute:RISELow?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:RISELow + - POWer:POWer:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + + +class PowerPowerItemReflevelsAbsoluteRisehigh(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the rising edge for high reference level in absolute units + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:RISEHigh + - POWer:POWer:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + + +class PowerPowerItemReflevelsAbsoluteHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the absolute hysteresis value for the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:HYSTeresis?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:HYSTeresis + - POWer:POWer:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from 0.0000005 to 10. + """ + + +class PowerPowerItemReflevelsAbsoluteFallmid(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the falling edge for mid reference level in absolute units + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:ABSolute:FALLMid?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:FALLMid + - POWer:POWer:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + + +class PowerPowerItemReflevelsAbsoluteFalllow(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the falling edge for low reference level in absolute units + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:ABSolute:FALLLow?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:FALLLow + - POWer:POWer:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + + +class PowerPowerItemReflevelsAbsoluteFallhigh(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the falling edge for high reference level in absolute units + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:FALLHigh + - POWer:POWer:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + + +# pylint: disable=too-many-instance-attributes +class PowerPowerItemReflevelsAbsolute(SCPICmdRead): + """The ``POWer:POWer:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:ABSolute?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:REFLevels:ABSolute?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.fallhigh``: The ``POWer:POWer:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``POWer:POWer:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``POWer:POWer:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``POWer:POWer:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``POWer:POWer:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``POWer:POWer:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``POWer:POWer:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``POWer:POWer:REFLevels:ABSolute:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fallhigh = PowerPowerItemReflevelsAbsoluteFallhigh( + device, f"{self._cmd_syntax}:FALLHigh" + ) + self._falllow = PowerPowerItemReflevelsAbsoluteFalllow( + device, f"{self._cmd_syntax}:FALLLow" + ) + self._fallmid = PowerPowerItemReflevelsAbsoluteFallmid( + device, f"{self._cmd_syntax}:FALLMid" + ) + self._hysteresis = PowerPowerItemReflevelsAbsoluteHysteresis( + device, f"{self._cmd_syntax}:HYSTeresis" + ) + self._risehigh = PowerPowerItemReflevelsAbsoluteRisehigh( + device, f"{self._cmd_syntax}:RISEHigh" + ) + self._riselow = PowerPowerItemReflevelsAbsoluteRiselow( + device, f"{self._cmd_syntax}:RISELow" + ) + self._risemid = PowerPowerItemReflevelsAbsoluteRisemid( + device, f"{self._cmd_syntax}:RISEMid" + ) + self._type = PowerPowerItemReflevelsAbsoluteType(device, f"{self._cmd_syntax}:TYPE") + + @property + def fallhigh(self) -> PowerPowerItemReflevelsAbsoluteFallhigh: + """Return the ``POWer:POWer:REFLevels:ABSolute:FALLHigh`` command. + + Description: + - This command sets or queries the falling edge for high reference level in absolute + units for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLHigh value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:FALLHigh + - POWer:POWer:REFLevels:ABSolute:FALLHigh? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + return self._fallhigh + + @property + def falllow(self) -> PowerPowerItemReflevelsAbsoluteFalllow: + """Return the ``POWer:POWer:REFLevels:ABSolute:FALLLow`` command. + + Description: + - This command sets or queries the falling edge for low reference level in absolute + units for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLLow?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLLow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLLow value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:FALLLow + - POWer:POWer:REFLevels:ABSolute:FALLLow? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + return self._falllow + + @property + def fallmid(self) -> PowerPowerItemReflevelsAbsoluteFallmid: + """Return the ``POWer:POWer:REFLevels:ABSolute:FALLMid`` command. + + Description: + - This command sets or queries the falling edge for mid reference level in absolute + units for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLMid?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:FALLMid value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:FALLMid + - POWer:POWer:REFLevels:ABSolute:FALLMid? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + return self._fallmid + + @property + def hysteresis(self) -> PowerPowerItemReflevelsAbsoluteHysteresis: + """Return the ``POWer:POWer:REFLevels:ABSolute:HYSTeresis`` command. + + Description: + - This command sets or queries the absolute hysteresis value for the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:HYSTeresis?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:HYSTeresis?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:HYSTeresis value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:HYSTeresis + - POWer:POWer:REFLevels:ABSolute:HYSTeresis? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from 0.0000005 to 10. + """ + return self._hysteresis + + @property + def risehigh(self) -> PowerPowerItemReflevelsAbsoluteRisehigh: + """Return the ``POWer:POWer:REFLevels:ABSolute:RISEHigh`` command. + + Description: + - This command sets or queries the rising edge for high reference level in absolute + units for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEHigh?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEHigh?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEHigh value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:RISEHigh + - POWer:POWer:REFLevels:ABSolute:RISEHigh? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + return self._risehigh + + @property + def riselow(self) -> PowerPowerItemReflevelsAbsoluteRiselow: + """Return the ``POWer:POWer:REFLevels:ABSolute:RISELow`` command. + + Description: + - This command sets or queries the rising edge for low reference level in absolute units + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISELow?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISELow?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISELow value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:RISELow + - POWer:POWer:REFLevels:ABSolute:RISELow? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + return self._riselow + + @property + def risemid(self) -> PowerPowerItemReflevelsAbsoluteRisemid: + """Return the ``POWer:POWer:REFLevels:ABSolute:RISEMid`` command. + + Description: + - This command sets or queries the rising edge for mid reference level in absolute units + for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEMid?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEMid?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:RISEMid value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:RISEMid + - POWer:POWer:REFLevels:ABSolute:RISEMid? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` ranges from -40000 to 40000. + """ + return self._risemid + + @property + def type(self) -> PowerPowerItemReflevelsAbsoluteType: + """Return the ``POWer:POWer:REFLevels:ABSolute:TYPE`` command. + + Description: + - This command sets or queries the type of measurement levels when reference level is + set to absolute for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:REFLevels:ABSolute:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:TYPE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute:TYPE value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:ABSolute:TYPE {SAME|UNIQue} + - POWer:POWer:REFLevels:ABSolute:TYPE? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``SAME`` : select when the rising edge and falling edge reference levels are same. + - ``UNIQue`` : select when the rising edge and falling edge reference levels are + different. + """ + return self._type + + +class PowerPowerItemReflevels(SCPICmdRead): + """The ``POWer:POWer:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:REFLevels?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.absolute``: The ``POWer:POWer:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``POWer:POWer:REFLevels:BASETop`` command. + - ``.method``: The ``POWer:POWer:REFLevels:METHod`` command. + - ``.percent``: The ``POWer:POWer:REFLevels:PERCent`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._absolute = PowerPowerItemReflevelsAbsolute(device, f"{self._cmd_syntax}:ABSolute") + self._basetop = PowerPowerItemReflevelsBasetop(device, f"{self._cmd_syntax}:BASETop") + self._method = PowerPowerItemReflevelsMethod(device, f"{self._cmd_syntax}:METHod") + self._percent = PowerPowerItemReflevelsPercent(device, f"{self._cmd_syntax}:PERCent") + + @property + def absolute(self) -> PowerPowerItemReflevelsAbsolute: + """Return the ``POWer:POWer:REFLevels:ABSolute`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:ABSolute?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:ABSolute?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.fallhigh``: The ``POWer:POWer:REFLevels:ABSolute:FALLHigh`` command. + - ``.falllow``: The ``POWer:POWer:REFLevels:ABSolute:FALLLow`` command. + - ``.fallmid``: The ``POWer:POWer:REFLevels:ABSolute:FALLMid`` command. + - ``.hysteresis``: The ``POWer:POWer:REFLevels:ABSolute:HYSTeresis`` command. + - ``.risehigh``: The ``POWer:POWer:REFLevels:ABSolute:RISEHigh`` command. + - ``.riselow``: The ``POWer:POWer:REFLevels:ABSolute:RISELow`` command. + - ``.risemid``: The ``POWer:POWer:REFLevels:ABSolute:RISEMid`` command. + - ``.type``: The ``POWer:POWer:REFLevels:ABSolute:TYPE`` command. + """ + return self._absolute + + @property + def basetop(self) -> PowerPowerItemReflevelsBasetop: + """Return the ``POWer:POWer:REFLevels:BASETop`` command. + + Description: + - This command sets or queries the reference level base top method for the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:BASETop?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:BASETop?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:BASETop value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:BASETop {AUTO|MINMax|MEANhistogram|MODEhistogram|EYEhistogram} + - POWer:POWer:REFLevels:BASETop? + ``` + """ # noqa: E501 + return self._basetop + + @property + def method(self) -> PowerPowerItemReflevelsMethod: + """Return the ``POWer:POWer:REFLevels:METHod`` command. + + Description: + - This command sets or queries the method to configure reference level values for the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:METHod?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:REFLevels:METHod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:REFLevels:METHod value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:REFLevels:METHod {PERCent|ABSolute} + - POWer:POWer:REFLevels:METHod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``PERCent`` sets the power measurement to use absolute values to configure reference + level values. + - ``ABSolute`` sets the power measurement to use percentage to configure reference level + values. + """ + return self._method + + @property + def percent(self) -> PowerPowerItemReflevelsPercent: + """Return the ``POWer:POWer:REFLevels:PERCent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels:PERCent?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:REFLevels:PERCent?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.fallhigh``: The ``POWer:POWer:REFLevels:PERCent:FALLHigh`` command. + - ``.falllow``: The ``POWer:POWer:REFLevels:PERCent:FALLLow`` command. + - ``.fallmid``: The ``POWer:POWer:REFLevels:PERCent:FALLMid`` command. + - ``.hysteresis``: The ``POWer:POWer:REFLevels:PERCent:HYSTeresis`` command. + - ``.risehigh``: The ``POWer:POWer:REFLevels:PERCent:RISEHigh`` command. + - ``.riselow``: The ``POWer:POWer:REFLevels:PERCent:RISELow`` command. + - ``.risemid``: The ``POWer:POWer:REFLevels:PERCent:RISEMid`` command. + - ``.type``: The ``POWer:POWer:REFLevels:PERCent:TYPE`` command. + """ + return self._percent + + +class PowerPowerItemRdsonVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:RDSON:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for RDSon measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RDSON:VSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RDSON:VSOURce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:RDSON:VSOURce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:RDSON:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:RDSON:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemRdsonIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:RDSON:ISOURce`` command. + + Description: + - This command sets or queries the current source for RDSon measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RDSON:ISOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RDSON:ISOURce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:RDSON:ISOURce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:RDSON:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:RDSON:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemRdsonDevicetype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:RDSON:DEVICEType`` command. + + Description: + - This command sets or queries the device type for the power drain source on resistance + measurement for RDSon measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RDSON:DEVICEType?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RDSON:DEVICEType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:RDSON:DEVICEType value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:RDSON:DEVICEType {SWITCHING|PNJUNCTION} + - POWer:POWer:RDSON:DEVICEType? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``SWITCHING`` sets the Device Type to a switching device (v/i). + - ``PNJUNCTION`` sets the Device Type to a PN Junction device (dv/di). + """ + + +class PowerPowerItemRdson(SCPICmdRead): + """The ``POWer:POWer:RDSON`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RDSON?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RDSON?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.devicetype``: The ``POWer:POWer:RDSON:DEVICEType`` command. + - ``.isource``: The ``POWer:POWer:RDSON:ISOURce`` command. + - ``.vsource``: The ``POWer:POWer:RDSON:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._devicetype = PowerPowerItemRdsonDevicetype(device, f"{self._cmd_syntax}:DEVICEType") + self._isource = PowerPowerItemRdsonIsource(device, f"{self._cmd_syntax}:ISOURce") + self._vsource = PowerPowerItemRdsonVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def devicetype(self) -> PowerPowerItemRdsonDevicetype: + """Return the ``POWer:POWer:RDSON:DEVICEType`` command. + + Description: + - This command sets or queries the device type for the power drain source on resistance + measurement for RDSon measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RDSON:DEVICEType?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RDSON:DEVICEType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:RDSON:DEVICEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:RDSON:DEVICEType {SWITCHING|PNJUNCTION} + - POWer:POWer:RDSON:DEVICEType? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``SWITCHING`` sets the Device Type to a switching device (v/i). + - ``PNJUNCTION`` sets the Device Type to a PN Junction device (dv/di). + """ + return self._devicetype + + @property + def isource(self) -> PowerPowerItemRdsonIsource: + """Return the ``POWer:POWer:RDSON:ISOURce`` command. + + Description: + - This command sets or queries the current source for RDSon measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RDSON:ISOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RDSON:ISOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:RDSON:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:RDSON:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:RDSON:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def vsource(self) -> PowerPowerItemRdsonVsource: + """Return the ``POWer:POWer:RDSON:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for RDSon measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RDSON:VSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RDSON:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:RDSON:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:RDSON:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:RDSON:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemPsrrTestconnection(SCPICmdWrite): + """The ``POWer:POWer:PSRR:TESTCONNection`` command. + + Description: + - This command tests the connection with the external instrument for the specified Power + Supply Rejection Ratio (PSRR) measurement. + + Usage: + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:TESTCONNection value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:TESTCONNection {EXECute} + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. + - ``EXECute`` runs the test connection function. + """ + + +class PowerPowerItemPsrrStopfrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:STOPFREQuency`` command. + + Description: + - This command sets or queries the stop frequency value for the Power Supply Rejection Ratio + (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:STOPFREQuency?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:STOPFREQuency?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:STOPFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:STOPFREQuency + - POWer:POWer:PSRR:STOPFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` is the stop frequency for the measurement, in the range of 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrStartfrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:STARTFREQuency`` command. + + Description: + - This command sets or queries the start frequency value for the Power Supply Rejection + Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:STARTFREQuency?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:STARTFREQuency?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:STARTFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:STARTFREQuency + - POWer:POWer:PSRR:STARTFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` is the starting frequency for the measurement, in the range of 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrPpd(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:PPD`` command. + + Description: + - This command sets or queries the points per decade (PPD) value for the Power Supply + Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:PPD?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:PPD?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:PPD value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:PPD + - POWer:POWer:PSRR:PPD? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` is the PPD value for the measurement, in the range of 10 to 100 points. + """ + + +class PowerPowerItemPsrrOutputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:OUTPUTSOurce`` command. + + Description: + - This command sets or queries the output source for the Power Supply Rejection Ratio (PSRR) + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:OUTPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:OUTPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:OUTPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:OUTPUTSOurce CH + - POWer:POWer:PSRR:OUTPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` sets the channel to use for the output source. + """ + + +class PowerPowerItemPsrrInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for the Power Supply Rejection Ratio (PSRR) + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:INPUTSOurce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:INPUTSOurce CH + - POWer:POWer:PSRR:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` sets the channel to use for the input source. + """ + + +class PowerPowerItemPsrrImpedance(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:IMPEDance`` command. + + Description: + - This command sets or queries the vertical termination impedance for the Power Supply + Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:IMPEDance?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:IMPEDance?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:IMPEDance value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:IMPEDance {FIFTy|HIGHZ} + - POWer:POWer:PSRR:IMPEDance? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FIFTy`` sets the impedance to be 50 Ω. + - ``HIGHZ`` sets the impedance to be 1 MΩ. + """ + + +class PowerPowerItemPsrrGenerator(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:GENerator`` command. + + Description: + - Sets or queries the generator source for the Power Supply Rejection Ratio (PSRR) power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:GENerator?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:GENerator?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:GENerator value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:GENerator {INTernal|EXTernal} + - POWer:POWer:PSRR:GENerator? + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. + - ``INTernal`` sets the internal generator as the source for the Power Supply Rejection + Ratio (PSRR) power measurement. + - ``EXTernal`` sets the external generator as the source for the Power Supply Rejection + Ratio (PSRR) power measurement. + """ + + +class PowerPowerItemPsrrGenipaddress(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:GENIPADDress`` command. + + Description: + - Sets or queries the instrument's IP Address associated with the specified Power Supply + Rejection Ratio (PSRR) measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:GENIPADDress?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:GENIPADDress?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:GENIPADDress value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:GENIPADDress + - POWer:POWer:PSRR:GENIPADDress? + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. is the IP address of the + generator. + """ + + +class PowerPowerItemPsrrFreq9val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ9Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ9Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ9Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ9Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ9Val + - POWer:POWer:PSRR:FREQ9Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq8val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ8Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ8Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ8Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ8Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ8Val + - POWer:POWer:PSRR:FREQ8Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq7val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ7Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ7Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ7Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ7Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ7Val + - POWer:POWer:PSRR:FREQ7Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq6val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ6Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ6Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ6Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ6Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ6Val + - POWer:POWer:PSRR:FREQ6Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq5val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ5Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ5Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ5Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ5Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ5Val + - POWer:POWer:PSRR:FREQ5Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq4val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ4Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ4Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ4Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ4Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ4Val + - POWer:POWer:PSRR:FREQ4Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq3val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ3Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ3Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ3Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ3Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ3Val + - POWer:POWer:PSRR:FREQ3Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq2val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ2Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ2Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ2Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ2Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ2Val + - POWer:POWer:PSRR:FREQ2Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq1val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ1Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ1Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ1Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ1Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ1Val + - POWer:POWer:PSRR:FREQ1Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq11val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ11Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ11Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ11Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ11Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ11Val + - POWer:POWer:PSRR:FREQ11Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrFreq10val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:FREQ10Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ10Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ10Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:FREQ10Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ10Val + - POWer:POWer:PSRR:FREQ10Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemPsrrConstamplitude(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:CONSTAMPlitude`` command. + + Description: + - This command sets or queries the constant amplitude voltage for the Power Supply Rejection + Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:CONSTAMPlitude?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:CONSTAMPlitude?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:CONSTAMPlitude value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:CONSTAMPlitude + - POWer:POWer:PSRR:CONSTAMPlitude? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` is the constant amplitude voltage value for the measurement, in the range of + -100 V to 100 V. + """ + + +class PowerPowerItemPsrrConnectstatus(SCPICmdRead): + """The ``POWer:POWer:PSRR:CONNECTSTATus`` command. + + Description: + - Queries the external instrument's connection status for the specified Power Supply + Rejection Ratio (PSRR) measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:CONNECTSTATus?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:CONNECTSTATus?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:CONNECTSTATus? + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. + """ + + +class PowerPowerItemPsrrAutorbw(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AUTORbw`` command. + + Description: + - This command enables Auto RBW computation. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AUTORbw?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AUTORbw?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AUTORbw value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AUTORbw {True|False} + - POWer:POWer:PSRR:AUTORbw? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``True`` enables Auto RBW computation. + - ``False`` disables Auto RBW computation. + """ + + +class PowerPowerItemPsrrAnalysismethod(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:ANALYSISMethod`` command. + + Description: + - This command sets or queries the Analysis Method for PSRR measurements. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:ANALYSISMethod?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:ANALYSISMethod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:ANALYSISMethod value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:ANALYSISMethod {SV|FFT} + - POWer:POWer:PSRR:ANALYSISMethod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``SV`` sets the Analysis Method as Spectrum View. + - ``FFT`` sets the Analysis Method as FFT. + """ + + +class PowerPowerItemPsrrAmpmode(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMPMode`` command. + + Description: + - This command sets or queries the amplitude mode for the Power Supply Rejection Ratio + (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMPMode?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMPMode?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMPMode value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMPMode {CONSTant|PROFile} + - POWer:POWer:PSRR:AMPMode? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CONSTant`` sets the amplitude mode to output a constant amplitude signal from the DUT + stimulus generator for all frequency bands. + - ``PROFile`` enables configuring the generator to set amplitude values for each frequency + band. + """ + + +class PowerPowerItemPsrrAmp9val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP9Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP9Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP9Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP9Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP9Val + - POWer:POWer:PSRR:AMP9Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemPsrrAmp8val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP8Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP8Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP8Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP8Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP8Val + - POWer:POWer:PSRR:AMP8Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemPsrrAmp7val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP7Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP7Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP7Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP7Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP7Val + - POWer:POWer:PSRR:AMP7Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemPsrrAmp6val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP6Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP6Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP6Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP6Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP6Val + - POWer:POWer:PSRR:AMP6Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemPsrrAmp5val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP5Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP5Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP5Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP5Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP5Val + - POWer:POWer:PSRR:AMP5Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemPsrrAmp4val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP4Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP4Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP4Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP4Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP4Val + - POWer:POWer:PSRR:AMP4Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemPsrrAmp3val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP3Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP3Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP3Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP3Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP3Val + - POWer:POWer:PSRR:AMP3Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemPsrrAmp2val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP2Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP2Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP2Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP2Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP2Val + - POWer:POWer:PSRR:AMP2Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemPsrrAmp1val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP1Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP1Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP1Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP1Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP1Val + - POWer:POWer:PSRR:AMP1Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemPsrrAmp10val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PSRR:AMP10Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP10Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP10Val?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP10Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP10Val + - POWer:POWer:PSRR:AMP10Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class PowerPowerItemPsrr(SCPICmdRead): + """The ``POWer:POWer:PSRR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ampmode``: The ``POWer:POWer:PSRR:AMPMode`` command. + - ``.amp1val``: The ``POWer:POWer:PSRR:AMP1Val`` command. + - ``.amp2val``: The ``POWer:POWer:PSRR:AMP2Val`` command. + - ``.amp3val``: The ``POWer:POWer:PSRR:AMP3Val`` command. + - ``.amp4val``: The ``POWer:POWer:PSRR:AMP4Val`` command. + - ``.amp5val``: The ``POWer:POWer:PSRR:AMP5Val`` command. + - ``.amp6val``: The ``POWer:POWer:PSRR:AMP6Val`` command. + - ``.amp7val``: The ``POWer:POWer:PSRR:AMP7Val`` command. + - ``.amp8val``: The ``POWer:POWer:PSRR:AMP8Val`` command. + - ``.amp9val``: The ``POWer:POWer:PSRR:AMP9Val`` command. + - ``.amp10val``: The ``POWer:POWer:PSRR:AMP10Val`` command. + - ``.analysismethod``: The ``POWer:POWer:PSRR:ANALYSISMethod`` command. + - ``.autorbw``: The ``POWer:POWer:PSRR:AUTORbw`` command. + - ``.connectstatus``: The ``POWer:POWer:PSRR:CONNECTSTATus`` command. + - ``.constamplitude``: The ``POWer:POWer:PSRR:CONSTAMPlitude`` command. + - ``.freq1val``: The ``POWer:POWer:PSRR:FREQ1Val`` command. + - ``.freq2val``: The ``POWer:POWer:PSRR:FREQ2Val`` command. + - ``.freq3val``: The ``POWer:POWer:PSRR:FREQ3Val`` command. + - ``.freq4val``: The ``POWer:POWer:PSRR:FREQ4Val`` command. + - ``.freq5val``: The ``POWer:POWer:PSRR:FREQ5Val`` command. + - ``.freq6val``: The ``POWer:POWer:PSRR:FREQ6Val`` command. + - ``.freq7val``: The ``POWer:POWer:PSRR:FREQ7Val`` command. + - ``.freq8val``: The ``POWer:POWer:PSRR:FREQ8Val`` command. + - ``.freq9val``: The ``POWer:POWer:PSRR:FREQ9Val`` command. + - ``.freq10val``: The ``POWer:POWer:PSRR:FREQ10Val`` command. + - ``.freq11val``: The ``POWer:POWer:PSRR:FREQ11Val`` command. + - ``.genipaddress``: The ``POWer:POWer:PSRR:GENIPADDress`` command. + - ``.generator``: The ``POWer:POWer:PSRR:GENerator`` command. + - ``.impedance``: The ``POWer:POWer:PSRR:IMPEDance`` command. + - ``.inputsource``: The ``POWer:POWer:PSRR:INPUTSOurce`` command. + - ``.outputsource``: The ``POWer:POWer:PSRR:OUTPUTSOurce`` command. + - ``.ppd``: The ``POWer:POWer:PSRR:PPD`` command. + - ``.startfrequency``: The ``POWer:POWer:PSRR:STARTFREQuency`` command. + - ``.stopfrequency``: The ``POWer:POWer:PSRR:STOPFREQuency`` command. + - ``.testconnection``: The ``POWer:POWer:PSRR:TESTCONNection`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ampmode = PowerPowerItemPsrrAmpmode(device, f"{self._cmd_syntax}:AMPMode") + self._amp1val = PowerPowerItemPsrrAmp1val(device, f"{self._cmd_syntax}:AMP1Val") + self._amp2val = PowerPowerItemPsrrAmp2val(device, f"{self._cmd_syntax}:AMP2Val") + self._amp3val = PowerPowerItemPsrrAmp3val(device, f"{self._cmd_syntax}:AMP3Val") + self._amp4val = PowerPowerItemPsrrAmp4val(device, f"{self._cmd_syntax}:AMP4Val") + self._amp5val = PowerPowerItemPsrrAmp5val(device, f"{self._cmd_syntax}:AMP5Val") + self._amp6val = PowerPowerItemPsrrAmp6val(device, f"{self._cmd_syntax}:AMP6Val") + self._amp7val = PowerPowerItemPsrrAmp7val(device, f"{self._cmd_syntax}:AMP7Val") + self._amp8val = PowerPowerItemPsrrAmp8val(device, f"{self._cmd_syntax}:AMP8Val") + self._amp9val = PowerPowerItemPsrrAmp9val(device, f"{self._cmd_syntax}:AMP9Val") + self._amp10val = PowerPowerItemPsrrAmp10val(device, f"{self._cmd_syntax}:AMP10Val") + self._analysismethod = PowerPowerItemPsrrAnalysismethod( + device, f"{self._cmd_syntax}:ANALYSISMethod" + ) + self._autorbw = PowerPowerItemPsrrAutorbw(device, f"{self._cmd_syntax}:AUTORbw") + self._connectstatus = PowerPowerItemPsrrConnectstatus( + device, f"{self._cmd_syntax}:CONNECTSTATus" + ) + self._constamplitude = PowerPowerItemPsrrConstamplitude( + device, f"{self._cmd_syntax}:CONSTAMPlitude" + ) + self._freq1val = PowerPowerItemPsrrFreq1val(device, f"{self._cmd_syntax}:FREQ1Val") + self._freq2val = PowerPowerItemPsrrFreq2val(device, f"{self._cmd_syntax}:FREQ2Val") + self._freq3val = PowerPowerItemPsrrFreq3val(device, f"{self._cmd_syntax}:FREQ3Val") + self._freq4val = PowerPowerItemPsrrFreq4val(device, f"{self._cmd_syntax}:FREQ4Val") + self._freq5val = PowerPowerItemPsrrFreq5val(device, f"{self._cmd_syntax}:FREQ5Val") + self._freq6val = PowerPowerItemPsrrFreq6val(device, f"{self._cmd_syntax}:FREQ6Val") + self._freq7val = PowerPowerItemPsrrFreq7val(device, f"{self._cmd_syntax}:FREQ7Val") + self._freq8val = PowerPowerItemPsrrFreq8val(device, f"{self._cmd_syntax}:FREQ8Val") + self._freq9val = PowerPowerItemPsrrFreq9val(device, f"{self._cmd_syntax}:FREQ9Val") + self._freq10val = PowerPowerItemPsrrFreq10val(device, f"{self._cmd_syntax}:FREQ10Val") + self._freq11val = PowerPowerItemPsrrFreq11val(device, f"{self._cmd_syntax}:FREQ11Val") + self._genipaddress = PowerPowerItemPsrrGenipaddress( + device, f"{self._cmd_syntax}:GENIPADDress" + ) + self._generator = PowerPowerItemPsrrGenerator(device, f"{self._cmd_syntax}:GENerator") + self._impedance = PowerPowerItemPsrrImpedance(device, f"{self._cmd_syntax}:IMPEDance") + self._inputsource = PowerPowerItemPsrrInputsource(device, f"{self._cmd_syntax}:INPUTSOurce") + self._outputsource = PowerPowerItemPsrrOutputsource( + device, f"{self._cmd_syntax}:OUTPUTSOurce" + ) + self._ppd = PowerPowerItemPsrrPpd(device, f"{self._cmd_syntax}:PPD") + self._startfrequency = PowerPowerItemPsrrStartfrequency( + device, f"{self._cmd_syntax}:STARTFREQuency" + ) + self._stopfrequency = PowerPowerItemPsrrStopfrequency( + device, f"{self._cmd_syntax}:STOPFREQuency" + ) + self._testconnection = PowerPowerItemPsrrTestconnection( + device, f"{self._cmd_syntax}:TESTCONNection" + ) + + @property + def ampmode(self) -> PowerPowerItemPsrrAmpmode: + """Return the ``POWer:POWer:PSRR:AMPMode`` command. + + Description: + - This command sets or queries the amplitude mode for the Power Supply Rejection Ratio + (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMPMode?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMPMode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMPMode value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMPMode {CONSTant|PROFile} + - POWer:POWer:PSRR:AMPMode? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CONSTant`` sets the amplitude mode to output a constant amplitude signal from the + DUT stimulus generator for all frequency bands. + - ``PROFile`` enables configuring the generator to set amplitude values for each + frequency band. + """ + return self._ampmode + + @property + def amp1val(self) -> PowerPowerItemPsrrAmp1val: + """Return the ``POWer:POWer:PSRR:AMP1Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP1Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP1Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP1Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP1Val + - POWer:POWer:PSRR:AMP1Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp1val + + @property + def amp2val(self) -> PowerPowerItemPsrrAmp2val: + """Return the ``POWer:POWer:PSRR:AMP2Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP2Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP2Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP2Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP2Val + - POWer:POWer:PSRR:AMP2Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp2val + + @property + def amp3val(self) -> PowerPowerItemPsrrAmp3val: + """Return the ``POWer:POWer:PSRR:AMP3Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP3Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP3Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP3Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP3Val + - POWer:POWer:PSRR:AMP3Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp3val + + @property + def amp4val(self) -> PowerPowerItemPsrrAmp4val: + """Return the ``POWer:POWer:PSRR:AMP4Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP4Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP4Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP4Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP4Val + - POWer:POWer:PSRR:AMP4Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp4val + + @property + def amp5val(self) -> PowerPowerItemPsrrAmp5val: + """Return the ``POWer:POWer:PSRR:AMP5Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP5Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP5Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP5Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP5Val + - POWer:POWer:PSRR:AMP5Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp5val + + @property + def amp6val(self) -> PowerPowerItemPsrrAmp6val: + """Return the ``POWer:POWer:PSRR:AMP6Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP6Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP6Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP6Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP6Val + - POWer:POWer:PSRR:AMP6Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp6val + + @property + def amp7val(self) -> PowerPowerItemPsrrAmp7val: + """Return the ``POWer:POWer:PSRR:AMP7Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP7Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP7Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP7Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP7Val + - POWer:POWer:PSRR:AMP7Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp7val + + @property + def amp8val(self) -> PowerPowerItemPsrrAmp8val: + """Return the ``POWer:POWer:PSRR:AMP8Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP8Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP8Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP8Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP8Val + - POWer:POWer:PSRR:AMP8Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp8val + + @property + def amp9val(self) -> PowerPowerItemPsrrAmp9val: + """Return the ``POWer:POWer:PSRR:AMP9Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP9Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP9Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AMP9Val value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP9Val + - POWer:POWer:PSRR:AMP9Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp9val + + @property + def amp10val(self) -> PowerPowerItemPsrrAmp10val: + """Return the ``POWer:POWer:PSRR:AMP10Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AMP10Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AMP10Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:AMP10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AMP10Val + - POWer:POWer:PSRR:AMP10Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp10val + + @property + def analysismethod(self) -> PowerPowerItemPsrrAnalysismethod: + """Return the ``POWer:POWer:PSRR:ANALYSISMethod`` command. + + Description: + - This command sets or queries the Analysis Method for PSRR measurements. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:ANALYSISMethod?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PSRR:ANALYSISMethod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:ANALYSISMethod value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:ANALYSISMethod {SV|FFT} + - POWer:POWer:PSRR:ANALYSISMethod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``SV`` sets the Analysis Method as Spectrum View. + - ``FFT`` sets the Analysis Method as FFT. + """ + return self._analysismethod + + @property + def autorbw(self) -> PowerPowerItemPsrrAutorbw: + """Return the ``POWer:POWer:PSRR:AUTORbw`` command. + + Description: + - This command enables Auto RBW computation. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:AUTORbw?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:AUTORbw?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:AUTORbw value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:AUTORbw {True|False} + - POWer:POWer:PSRR:AUTORbw? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``True`` enables Auto RBW computation. + - ``False`` disables Auto RBW computation. + """ + return self._autorbw + + @property + def connectstatus(self) -> PowerPowerItemPsrrConnectstatus: + """Return the ``POWer:POWer:PSRR:CONNECTSTATus`` command. + + Description: + - Queries the external instrument's connection status for the specified Power Supply + Rejection Ratio (PSRR) measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:CONNECTSTATus?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PSRR:CONNECTSTATus?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:CONNECTSTATus? + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. + """ + return self._connectstatus + + @property + def constamplitude(self) -> PowerPowerItemPsrrConstamplitude: + """Return the ``POWer:POWer:PSRR:CONSTAMPlitude`` command. + + Description: + - This command sets or queries the constant amplitude voltage for the Power Supply + Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:CONSTAMPlitude?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PSRR:CONSTAMPlitude?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:CONSTAMPlitude value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:CONSTAMPlitude + - POWer:POWer:PSRR:CONSTAMPlitude? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` is the constant amplitude voltage value for the measurement, in the range of + -100 V to 100 V. + """ + return self._constamplitude + + @property + def freq1val(self) -> PowerPowerItemPsrrFreq1val: + """Return the ``POWer:POWer:PSRR:FREQ1Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ1Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ1Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ1Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ1Val + - POWer:POWer:PSRR:FREQ1Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq1val + + @property + def freq2val(self) -> PowerPowerItemPsrrFreq2val: + """Return the ``POWer:POWer:PSRR:FREQ2Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ2Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ2Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ2Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ2Val + - POWer:POWer:PSRR:FREQ2Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq2val + + @property + def freq3val(self) -> PowerPowerItemPsrrFreq3val: + """Return the ``POWer:POWer:PSRR:FREQ3Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ3Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ3Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ3Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ3Val + - POWer:POWer:PSRR:FREQ3Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq3val + + @property + def freq4val(self) -> PowerPowerItemPsrrFreq4val: + """Return the ``POWer:POWer:PSRR:FREQ4Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ4Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ4Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ4Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ4Val + - POWer:POWer:PSRR:FREQ4Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq4val + + @property + def freq5val(self) -> PowerPowerItemPsrrFreq5val: + """Return the ``POWer:POWer:PSRR:FREQ5Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ5Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ5Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ5Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ5Val + - POWer:POWer:PSRR:FREQ5Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq5val + + @property + def freq6val(self) -> PowerPowerItemPsrrFreq6val: + """Return the ``POWer:POWer:PSRR:FREQ6Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ6Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ6Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ6Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ6Val + - POWer:POWer:PSRR:FREQ6Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq6val + + @property + def freq7val(self) -> PowerPowerItemPsrrFreq7val: + """Return the ``POWer:POWer:PSRR:FREQ7Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ7Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ7Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ7Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ7Val + - POWer:POWer:PSRR:FREQ7Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq7val + + @property + def freq8val(self) -> PowerPowerItemPsrrFreq8val: + """Return the ``POWer:POWer:PSRR:FREQ8Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ8Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ8Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ8Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ8Val + - POWer:POWer:PSRR:FREQ8Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq8val + + @property + def freq9val(self) -> PowerPowerItemPsrrFreq9val: + """Return the ``POWer:POWer:PSRR:FREQ9Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ9Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ9Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ9Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ9Val + - POWer:POWer:PSRR:FREQ9Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq9val + + @property + def freq10val(self) -> PowerPowerItemPsrrFreq10val: + """Return the ``POWer:POWer:PSRR:FREQ10Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ10Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ10Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ10Val + - POWer:POWer:PSRR:FREQ10Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq10val + + @property + def freq11val(self) -> PowerPowerItemPsrrFreq11val: + """Return the ``POWer:POWer:PSRR:FREQ11Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Power Supply Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:FREQ11Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:FREQ11Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:FREQ11Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:FREQ11Val + - POWer:POWer:PSRR:FREQ11Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq11val + + @property + def genipaddress(self) -> PowerPowerItemPsrrGenipaddress: + """Return the ``POWer:POWer:PSRR:GENIPADDress`` command. + + Description: + - Sets or queries the instrument's IP Address associated with the specified Power Supply + Rejection Ratio (PSRR) measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:GENIPADDress?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PSRR:GENIPADDress?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:GENIPADDress value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:GENIPADDress + - POWer:POWer:PSRR:GENIPADDress? + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. is the IP address of + the generator. + """ + return self._genipaddress + + @property + def generator(self) -> PowerPowerItemPsrrGenerator: + """Return the ``POWer:POWer:PSRR:GENerator`` command. + + Description: + - Sets or queries the generator source for the Power Supply Rejection Ratio (PSRR) power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:GENerator?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:GENerator?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:GENerator value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:GENerator {INTernal|EXTernal} + - POWer:POWer:PSRR:GENerator? + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. + - ``INTernal`` sets the internal generator as the source for the Power Supply Rejection + Ratio (PSRR) power measurement. + - ``EXTernal`` sets the external generator as the source for the Power Supply Rejection + Ratio (PSRR) power measurement. + """ + return self._generator + + @property + def impedance(self) -> PowerPowerItemPsrrImpedance: + """Return the ``POWer:POWer:PSRR:IMPEDance`` command. + + Description: + - This command sets or queries the vertical termination impedance for the Power Supply + Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:IMPEDance?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:IMPEDance?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:IMPEDance value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:IMPEDance {FIFTy|HIGHZ} + - POWer:POWer:PSRR:IMPEDance? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FIFTy`` sets the impedance to be 50 Ω. + - ``HIGHZ`` sets the impedance to be 1 MΩ. + """ + return self._impedance + + @property + def inputsource(self) -> PowerPowerItemPsrrInputsource: + """Return the ``POWer:POWer:PSRR:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for the Power Supply Rejection Ratio + (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:INPUTSOurce CH + - POWer:POWer:PSRR:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` sets the channel to use for the input source. + """ + return self._inputsource + + @property + def outputsource(self) -> PowerPowerItemPsrrOutputsource: + """Return the ``POWer:POWer:PSRR:OUTPUTSOurce`` command. + + Description: + - This command sets or queries the output source for the Power Supply Rejection Ratio + (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:OUTPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PSRR:OUTPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:OUTPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:OUTPUTSOurce CH + - POWer:POWer:PSRR:OUTPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` sets the channel to use for the output source. + """ + return self._outputsource + + @property + def ppd(self) -> PowerPowerItemPsrrPpd: + """Return the ``POWer:POWer:PSRR:PPD`` command. + + Description: + - This command sets or queries the points per decade (PPD) value for the Power Supply + Rejection Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:PPD?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR:PPD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PSRR:PPD value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:PPD + - POWer:POWer:PSRR:PPD? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` is the PPD value for the measurement, in the range of 10 to 100 points. + """ + return self._ppd + + @property + def startfrequency(self) -> PowerPowerItemPsrrStartfrequency: + """Return the ``POWer:POWer:PSRR:STARTFREQuency`` command. + + Description: + - This command sets or queries the start frequency value for the Power Supply Rejection + Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:STARTFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PSRR:STARTFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:STARTFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:STARTFREQuency + - POWer:POWer:PSRR:STARTFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` is the starting frequency for the measurement, in the range of 10 Hz to 50 + MHz. + """ + return self._startfrequency + + @property + def stopfrequency(self) -> PowerPowerItemPsrrStopfrequency: + """Return the ``POWer:POWer:PSRR:STOPFREQuency`` command. + + Description: + - This command sets or queries the stop frequency value for the Power Supply Rejection + Ratio (PSRR) power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR:STOPFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PSRR:STOPFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:STOPFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:STOPFREQuency + - POWer:POWer:PSRR:STOPFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` is the stop frequency for the measurement, in the range of 10 Hz to 50 MHz. + """ + return self._stopfrequency + + @property + def testconnection(self) -> PowerPowerItemPsrrTestconnection: + """Return the ``POWer:POWer:PSRR:TESTCONNection`` command. + + Description: + - This command tests the connection with the external instrument for the specified Power + Supply Rejection Ratio (PSRR) measurement. + + Usage: + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PSRR:TESTCONNection value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PSRR:TESTCONNection {EXECute} + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. + - ``EXECute`` runs the test connection function. + """ + return self._testconnection + + +class PowerPowerItemPreset(SCPICmdWrite): + """The ``POWer:POWer:PRESET`` command. + + Description: + - This command runs a power preset action for the specified power measurement number. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:POWer:PRESET value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PRESET {EXECute} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``EXECute`` runs the power preset action. + """ + + +class PowerPowerItemPpulsewidthInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PPULSEWIDTH:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for positive pulse width measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PPULSEWIDTH:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PPULSEWIDTH:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PPULSEWIDTH:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PPULSEWIDTH:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:PPULSEWIDTH:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemPpulsewidth(SCPICmdRead): + """The ``POWer:POWer:PPULSEWIDTH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PPULSEWIDTH?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PPULSEWIDTH?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:PPULSEWIDTH:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemPpulsewidthInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def inputsource(self) -> PowerPowerItemPpulsewidthInputsource: + """Return the ``POWer:POWer:PPULSEWIDTH:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for positive pulse width measurement in + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:PPULSEWIDTH:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PPULSEWIDTH:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PPULSEWIDTH:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PPULSEWIDTH:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:PPULSEWIDTH:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemPowerqualityVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:POWERQUALITY:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for power quality measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:POWERQUALITY:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:POWERQUALITY:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemPowerqualityStype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:POWERQUALITY:STYPe`` command. + + Description: + - This command sets or queries the source type. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY:STYPe?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:POWERQUALITY:STYPe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:STYPe value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:STYPe {AC|DC} + - POWer:POWer:POWERQUALITY:STYPe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AC`` sets the signal type as AC. + - ``DC`` sets the signal type as DC. + """ + + +class PowerPowerItemPowerqualityIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:POWERQUALITY:ISOURce`` command. + + Description: + - This command sets or queries the current source for power quality measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:POWERQUALITY:ISOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:ISOURce {CH|MATH|REF} + - POWer:POWer:POWERQUALITY:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemPowerqualityFreference(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:POWERQUALITY:FREFerence`` command. + + Description: + - This command sets or queries the frequency reference type for power quality measurement in + the specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY:FREFerence?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:POWERQUALITY:FREFerence?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:FREFerence value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:FREFerence {VOLTage|CURRent} + - POWer:POWer:POWERQUALITY:FREFerence? + ``` + """ + + +class PowerPowerItemPowerqualityCcycles(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:POWERQUALITY:CCYCles`` command. + + Description: + - This command sets or queries the calculate cycles over full cycles settings for the + specified power quality measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY:CCYCles?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:POWERQUALITY:CCYCles?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:CCYCles value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:CCYCles {ON|OFF 1|0} + - POWer:POWer:POWERQUALITY:CCYCles? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``1`` selects the calculate cycles over full cycles. + - ``ON`` selects the calculate cycles over full cycles. + - ``0`` unselects the calculate cycles over full cycles. + - ``OFF`` unselects the calculate cycles over full cycles. + """ + + +class PowerPowerItemPowerquality(SCPICmdRead): + """The ``POWer:POWer:POWERQUALITY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:POWERQUALITY?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ccycles``: The ``POWer:POWer:POWERQUALITY:CCYCles`` command. + - ``.freference``: The ``POWer:POWer:POWERQUALITY:FREFerence`` command. + - ``.isource``: The ``POWer:POWer:POWERQUALITY:ISOURce`` command. + - ``.stype``: The ``POWer:POWer:POWERQUALITY:STYPe`` command. + - ``.vsource``: The ``POWer:POWer:POWERQUALITY:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ccycles = PowerPowerItemPowerqualityCcycles(device, f"{self._cmd_syntax}:CCYCles") + self._freference = PowerPowerItemPowerqualityFreference( + device, f"{self._cmd_syntax}:FREFerence" + ) + self._isource = PowerPowerItemPowerqualityIsource(device, f"{self._cmd_syntax}:ISOURce") + self._stype = PowerPowerItemPowerqualityStype(device, f"{self._cmd_syntax}:STYPe") + self._vsource = PowerPowerItemPowerqualityVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def ccycles(self) -> PowerPowerItemPowerqualityCcycles: + """Return the ``POWer:POWer:POWERQUALITY:CCYCles`` command. + + Description: + - This command sets or queries the calculate cycles over full cycles settings for the + specified power quality measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY:CCYCles?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:POWERQUALITY:CCYCles?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:CCYCles value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:CCYCles {ON|OFF 1|0} + - POWer:POWer:POWERQUALITY:CCYCles? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``1`` selects the calculate cycles over full cycles. + - ``ON`` selects the calculate cycles over full cycles. + - ``0`` unselects the calculate cycles over full cycles. + - ``OFF`` unselects the calculate cycles over full cycles. + """ + return self._ccycles + + @property + def freference(self) -> PowerPowerItemPowerqualityFreference: + """Return the ``POWer:POWer:POWERQUALITY:FREFerence`` command. + + Description: + - This command sets or queries the frequency reference type for power quality + measurement in the specified power measurement number. The power measurement number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:POWERQUALITY:FREFerence?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:POWERQUALITY:FREFerence?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:FREFerence value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:FREFerence {VOLTage|CURRent} + - POWer:POWer:POWERQUALITY:FREFerence? + ``` + """ + return self._freference + + @property + def isource(self) -> PowerPowerItemPowerqualityIsource: + """Return the ``POWer:POWer:POWERQUALITY:ISOURce`` command. + + Description: + - This command sets or queries the current source for power quality measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:POWERQUALITY:ISOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:ISOURce {CH|MATH|REF} + - POWer:POWer:POWERQUALITY:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def stype(self) -> PowerPowerItemPowerqualityStype: + """Return the ``POWer:POWer:POWERQUALITY:STYPe`` command. + + Description: + - This command sets or queries the source type. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY:STYPe?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:POWERQUALITY:STYPe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:STYPe value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:STYPe {AC|DC} + - POWer:POWer:POWERQUALITY:STYPe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AC`` sets the signal type as AC. + - ``DC`` sets the signal type as DC. + """ + return self._stype + + @property + def vsource(self) -> PowerPowerItemPowerqualityVsource: + """Return the ``POWer:POWer:POWERQUALITY:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for power quality measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:POWERQUALITY:VSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:POWERQUALITY:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:POWERQUALITY:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:POWERQUALITY:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemPeriodInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PERIOD:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for period measurement in the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PERIOD:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PERIOD:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PERIOD:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PERIOD:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:PERIOD:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemPeriodEdge(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PERIOD:EDGe`` command. + + Description: + - This command sets or queries the edge type for period measurement in the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PERIOD:EDGe?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PERIOD:EDGe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PERIOD:EDGe value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PERIOD:EDGe {RISE|FALL} + - POWer:POWer:PERIOD:EDGe? + ``` + """ + + +class PowerPowerItemPeriod(SCPICmdRead): + """The ``POWer:POWer:PERIOD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PERIOD?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PERIOD?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.edge``: The ``POWer:POWer:PERIOD:EDGe`` command. + - ``.inputsource``: The ``POWer:POWer:PERIOD:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edge = PowerPowerItemPeriodEdge(device, f"{self._cmd_syntax}:EDGe") + self._inputsource = PowerPowerItemPeriodInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def edge(self) -> PowerPowerItemPeriodEdge: + """Return the ``POWer:POWer:PERIOD:EDGe`` command. + + Description: + - This command sets or queries the edge type for period measurement in the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PERIOD:EDGe?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PERIOD:EDGe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:PERIOD:EDGe value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PERIOD:EDGe {RISE|FALL} + - POWer:POWer:PERIOD:EDGe? + ``` + """ + return self._edge + + @property + def inputsource(self) -> PowerPowerItemPeriodInputsource: + """Return the ``POWer:POWer:PERIOD:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for period measurement in the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PERIOD:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PERIOD:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PERIOD:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PERIOD:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:PERIOD:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemPdutycycleInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PDUTYCYCLE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for positive duty cycle measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PDUTYCYCLE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PDUTYCYCLE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PDUTYCYCLE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PDUTYCYCLE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:PDUTYCYCLE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemPdutycycleEdgetype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:PDUTYCYCLE:EDGEType`` command. + + Description: + - This command sets or queries the clock edge type for positive duty cycle measurement in + the specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PDUTYCYCLE:EDGEType?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PDUTYCYCLE:EDGEType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PDUTYCYCLE:EDGEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PDUTYCYCLE:EDGEType {S_Ch|CH|MATH|REF} + - POWer:POWer:PDUTYCYCLE:EDGEType? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class PowerPowerItemPdutycycle(SCPICmdRead): + """The ``POWer:POWer:PDUTYCYCLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PDUTYCYCLE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PDUTYCYCLE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.edgetype``: The ``POWer:POWer:PDUTYCYCLE:EDGEType`` command. + - ``.inputsource``: The ``POWer:POWer:PDUTYCYCLE:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edgetype = PowerPowerItemPdutycycleEdgetype(device, f"{self._cmd_syntax}:EDGEType") + self._inputsource = PowerPowerItemPdutycycleInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def edgetype(self) -> PowerPowerItemPdutycycleEdgetype: + """Return the ``POWer:POWer:PDUTYCYCLE:EDGEType`` command. + + Description: + - This command sets or queries the clock edge type for positive duty cycle measurement + in the specified power measurement number. The power measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PDUTYCYCLE:EDGEType?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PDUTYCYCLE:EDGEType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PDUTYCYCLE:EDGEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PDUTYCYCLE:EDGEType {S_Ch|CH|MATH|REF} + - POWer:POWer:PDUTYCYCLE:EDGEType? + ``` + + Info: + - ``S_Ch`` specifies the remote scope number and the analog channel as the source. + - ``CH`` specifies an analog channel as the source. + - ``Math`` specifies a math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._edgetype + + @property + def inputsource(self) -> PowerPowerItemPdutycycleInputsource: + """Return the ``POWer:POWer:PDUTYCYCLE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for positive duty cycle measurement in + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PDUTYCYCLE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:PDUTYCYCLE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:PDUTYCYCLE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:PDUTYCYCLE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:PDUTYCYCLE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemNpulsewidthInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:NPULSEWIDTH:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for negative pulse width measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:NPULSEWIDTH:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:NPULSEWIDTH:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:NPULSEWIDTH:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:NPULSEWIDTH:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:NPULSEWIDTH:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemNpulsewidth(SCPICmdRead): + """The ``POWer:POWer:NPULSEWIDTH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:NPULSEWIDTH?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:NPULSEWIDTH?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:NPULSEWIDTH:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemNpulsewidthInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def inputsource(self) -> PowerPowerItemNpulsewidthInputsource: + """Return the ``POWer:POWer:NPULSEWIDTH:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for negative pulse width measurement in + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:NPULSEWIDTH:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:NPULSEWIDTH:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:NPULSEWIDTH:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:NPULSEWIDTH:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:NPULSEWIDTH:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemNdutycycleInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:NDUTYCYCLE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for negative duty cycle measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:NDUTYCYCLE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:NDUTYCYCLE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:NDUTYCYCLE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:NDUTYCYCLE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:NDUTYCYCLE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemNdutycycleEdgetype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:NDUTYCYCLE:EDGEType`` command. + + Description: + - This command sets or queries the clock edge type for negative duty cycle measurement in + the specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:NDUTYCYCLE:EDGEType?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:NDUTYCYCLE:EDGEType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:NDUTYCYCLE:EDGEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:NDUTYCYCLE:EDGEType {RISE|FALL|BOTH} + - POWer:POWer:NDUTYCYCLE:EDGEType? + ``` + """ + + +class PowerPowerItemNdutycycle(SCPICmdRead): + """The ``POWer:POWer:NDUTYCYCLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:NDUTYCYCLE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:NDUTYCYCLE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.edgetype``: The ``POWer:POWer:NDUTYCYCLE:EDGEType`` command. + - ``.inputsource``: The ``POWer:POWer:NDUTYCYCLE:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edgetype = PowerPowerItemNdutycycleEdgetype(device, f"{self._cmd_syntax}:EDGEType") + self._inputsource = PowerPowerItemNdutycycleInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def edgetype(self) -> PowerPowerItemNdutycycleEdgetype: + """Return the ``POWer:POWer:NDUTYCYCLE:EDGEType`` command. + + Description: + - This command sets or queries the clock edge type for negative duty cycle measurement + in the specified power measurement number. The power measurement number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:NDUTYCYCLE:EDGEType?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:NDUTYCYCLE:EDGEType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:NDUTYCYCLE:EDGEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:NDUTYCYCLE:EDGEType {RISE|FALL|BOTH} + - POWer:POWer:NDUTYCYCLE:EDGEType? + ``` + """ + return self._edgetype + + @property + def inputsource(self) -> PowerPowerItemNdutycycleInputsource: + """Return the ``POWer:POWer:NDUTYCYCLE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for negative duty cycle measurement in + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:NDUTYCYCLE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:NDUTYCYCLE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:NDUTYCYCLE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:NDUTYCYCLE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:NDUTYCYCLE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemMagpropertyVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:VSOURce`` command. + + Description: + - This command sets or queries the primary winding voltage source for the magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:VSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGPROPERTY:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagpropertyUnits(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:UNITs`` command. + + Description: + - This command sets or queries the units for magnetic measurements of the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:UNITs?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGPROPERTY:UNITs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:UNITs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:UNITs {SI|CGS} + - POWer:POWer:MAGPROPERTY:UNITs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``SI`` sets the measurement to International System of Units. + - ``CGS`` sets the measurement to Gaussian units. + """ + + +class PowerPowerItemMagpropertySecwindings(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SECWINDings`` command. + + Description: + - This command sets or queries the number of secondary windings for the magnetic property + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SECWINDings?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECWINDings?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECWINDings value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SECWINDings {None|ONE|TWO|THREE|FOUR|FIVE|SIX} + - POWer:POWer:MAGPROPERTY:SECWINDings? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ``None`` , ONE, TWO, THREE, FOUR, FIVE, SIX sets the number of secondary windings to the + specified value. + """ + + +class PowerPowerItemMagpropertySecvolt(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SECVolt`` command. + + Description: + - This command enables or disables secondary voltage input for measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SECVolt?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGPROPERTY:SECVolt?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECVolt value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SECVolt {True|False} + - POWer:POWer:MAGPROPERTY:SECVolt? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``True`` enables secondary voltage source. + - ``False`` disables secondary voltage source. + """ + + +class PowerPowerItemMagpropertySecphase(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SECPhase`` command. + + Description: + - This command sets or returns the value for the phase difference between secondary and + primary voltage. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SECPhase?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGPROPERTY:SECPhase?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECPhase value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SECPhase + - POWer:POWer:MAGPROPERTY:SECPhase? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` sets the value for the phase difference between secondary and primary voltage, + in the range of -180 to 180 degrees. + """ + + +class PowerPowerItemMagpropertySec6turns(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC6TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 6 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC6TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC6TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC6TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC6TURNs + - POWer:POWer:MAGPROPERTY:SEC6TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to 1,000,000. + """ + + +class PowerPowerItemMagpropertySec6source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC6SOURce`` command. + + Description: + - This command sets or queries the current source for secondary winding 6 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC6SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC6SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC6SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC6SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC6SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagpropertySec5turns(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC5TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 5 for magnetic + measurement of the specified power measurement badge. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC5TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC5TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC5TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC5TURNs + - POWer:POWer:MAGPROPERTY:SEC5TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to 1,000,000. + """ + + +class PowerPowerItemMagpropertySec5source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC5SOURce`` command. + + Description: + - This command sets or queries the current source for secondary winding 5 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC5SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC5SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC5SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC5SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC5SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagpropertySec4turns(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC4TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 4 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC4TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC4TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC4TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC4TURNs + - POWer:POWer:MAGPROPERTY:SEC4TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to 1,000,000. + """ + + +class PowerPowerItemMagpropertySec4source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC4SOURce`` command. + + Description: + - This command sets or queries the current source for secondary winding 4 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC4SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC4SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC4SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC4SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC4SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagpropertySec3turns(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC3TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 3 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC3TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC3TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC3TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC3TURNs + - POWer:POWer:MAGPROPERTY:SEC3TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to 1,000,000. + """ + + +class PowerPowerItemMagpropertySec3source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC3SOURce`` command. + + Description: + - This command sets or queries the current source channel for secondary winding 3 for + magnetic measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC3SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC3SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC3SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC3SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC3SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagpropertySec2turns(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC2TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 2 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC2TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC2TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC2TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC2TURNs + - POWer:POWer:MAGPROPERTY:SEC2TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to 1,000,000. + """ + + +class PowerPowerItemMagpropertySec2source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC2SOURce`` command. + + Description: + - This command sets or queries the current source for secondary winding2 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC2SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC2SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC2SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC2SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC2SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagpropertySec1turns(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC1TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 1 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC1TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC1TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC1TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC1TURNs + - POWer:POWer:MAGPROPERTY:SEC1TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to 1,000,000. + """ + + +class PowerPowerItemMagpropertySec1source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:SEC1SOURce`` command. + + Description: + - This command sets or queries the current source channel for secondary winding 1 for + magnetic measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC1SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC1SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC1SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC1SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC1SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagpropertyPrimaryturns(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs`` command. + + Description: + - This command sets or queries the number of primary turns for magnetic measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:PRIMARYTURNs + - POWer:POWer:MAGPROPERTY:PRIMARYTURNs? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ```` is the integer number of turns in the primary winding, in the range of 1 to 1 M. + """ + + +class PowerPowerItemMagpropertyLength(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:LENgth`` command. + + Description: + - This command sets or queries the conductor length of the primary winding for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:LENgth?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGPROPERTY:LENgth?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:LENgth value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:LENgth + - POWer:POWer:MAGPROPERTY:LENgth? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ```` is the magnetic length, in the range of 1.00E-09 through 1,000,000. + """ + + +class PowerPowerItemMagpropertyIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:ISOURce`` command. + + Description: + - This command sets or queries the current source for the magnetic property measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:ISOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGPROPERTY:ISOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:ISOURce? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagpropertyEdgesource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:EDGESOURce`` command. + + Description: + - This command sets or queries the edge source type for the magnetic property measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:EDGESOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:EDGESOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:EDGESOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:EDGESOURce {Current|VOLTAGE} + - POWer:POWer:MAGPROPERTY:EDGESOURce? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent of + the number shown on a power measurement badge in the UI. + - ``Current`` sets the measurement to use the primary voltage source as the signal edge for + the magnetic property measurement. + - ``VOLTAGE`` sets the measurement to use the primary current source as the signal edge for + the magnetic property measurement. + """ + + +class PowerPowerItemMagpropertyAreaofcrosssection(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY:AREAofcrosssection`` command. + + Description: + - This command sets or queries the coil cross section area for magnetic measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:MAGPROPERTY:AREAofcrosssection?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:AREAofcrosssection?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:AREAofcrosssection value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:AREAofcrosssection + - POWer:POWer:MAGPROPERTY:AREAofcrosssection? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ```` is the cross section area in square meters, in the range of 1 nanometer2 to 1 + M2. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class PowerPowerItemMagproperty(SCPICmdRead): + """The ``POWer:POWer:MAGPROPERTY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGPROPERTY?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.areaofcrosssection``: The ``POWer:POWer:MAGPROPERTY:AREAofcrosssection`` command. + - ``.edgesource``: The ``POWer:POWer:MAGPROPERTY:EDGESOURce`` command. + - ``.isource``: The ``POWer:POWer:MAGPROPERTY:ISOURce`` command. + - ``.length``: The ``POWer:POWer:MAGPROPERTY:LENgth`` command. + - ``.primaryturns``: The ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs`` command. + - ``.sec1source``: The ``POWer:POWer:MAGPROPERTY:SEC1SOURce`` command. + - ``.sec1turns``: The ``POWer:POWer:MAGPROPERTY:SEC1TURNs`` command. + - ``.sec2source``: The ``POWer:POWer:MAGPROPERTY:SEC2SOURce`` command. + - ``.sec2turns``: The ``POWer:POWer:MAGPROPERTY:SEC2TURNs`` command. + - ``.sec3source``: The ``POWer:POWer:MAGPROPERTY:SEC3SOURce`` command. + - ``.sec3turns``: The ``POWer:POWer:MAGPROPERTY:SEC3TURNs`` command. + - ``.sec4source``: The ``POWer:POWer:MAGPROPERTY:SEC4SOURce`` command. + - ``.sec4turns``: The ``POWer:POWer:MAGPROPERTY:SEC4TURNs`` command. + - ``.sec5source``: The ``POWer:POWer:MAGPROPERTY:SEC5SOURce`` command. + - ``.sec5turns``: The ``POWer:POWer:MAGPROPERTY:SEC5TURNs`` command. + - ``.sec6source``: The ``POWer:POWer:MAGPROPERTY:SEC6SOURce`` command. + - ``.sec6turns``: The ``POWer:POWer:MAGPROPERTY:SEC6TURNs`` command. + - ``.secphase``: The ``POWer:POWer:MAGPROPERTY:SECPhase`` command. + - ``.secvolt``: The ``POWer:POWer:MAGPROPERTY:SECVolt`` command. + - ``.secwindings``: The ``POWer:POWer:MAGPROPERTY:SECWINDings`` command. + - ``.units``: The ``POWer:POWer:MAGPROPERTY:UNITs`` command. + - ``.vsource``: The ``POWer:POWer:MAGPROPERTY:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._areaofcrosssection = PowerPowerItemMagpropertyAreaofcrosssection( + device, f"{self._cmd_syntax}:AREAofcrosssection" + ) + self._edgesource = PowerPowerItemMagpropertyEdgesource( + device, f"{self._cmd_syntax}:EDGESOURce" + ) + self._isource = PowerPowerItemMagpropertyIsource(device, f"{self._cmd_syntax}:ISOURce") + self._length = PowerPowerItemMagpropertyLength(device, f"{self._cmd_syntax}:LENgth") + self._primaryturns = PowerPowerItemMagpropertyPrimaryturns( + device, f"{self._cmd_syntax}:PRIMARYTURNs" + ) + self._sec1source = PowerPowerItemMagpropertySec1source( + device, f"{self._cmd_syntax}:SEC1SOURce" + ) + self._sec1turns = PowerPowerItemMagpropertySec1turns( + device, f"{self._cmd_syntax}:SEC1TURNs" + ) + self._sec2source = PowerPowerItemMagpropertySec2source( + device, f"{self._cmd_syntax}:SEC2SOURce" + ) + self._sec2turns = PowerPowerItemMagpropertySec2turns( + device, f"{self._cmd_syntax}:SEC2TURNs" + ) + self._sec3source = PowerPowerItemMagpropertySec3source( + device, f"{self._cmd_syntax}:SEC3SOURce" + ) + self._sec3turns = PowerPowerItemMagpropertySec3turns( + device, f"{self._cmd_syntax}:SEC3TURNs" + ) + self._sec4source = PowerPowerItemMagpropertySec4source( + device, f"{self._cmd_syntax}:SEC4SOURce" + ) + self._sec4turns = PowerPowerItemMagpropertySec4turns( + device, f"{self._cmd_syntax}:SEC4TURNs" + ) + self._sec5source = PowerPowerItemMagpropertySec5source( + device, f"{self._cmd_syntax}:SEC5SOURce" + ) + self._sec5turns = PowerPowerItemMagpropertySec5turns( + device, f"{self._cmd_syntax}:SEC5TURNs" + ) + self._sec6source = PowerPowerItemMagpropertySec6source( + device, f"{self._cmd_syntax}:SEC6SOURce" + ) + self._sec6turns = PowerPowerItemMagpropertySec6turns( + device, f"{self._cmd_syntax}:SEC6TURNs" + ) + self._secphase = PowerPowerItemMagpropertySecphase(device, f"{self._cmd_syntax}:SECPhase") + self._secvolt = PowerPowerItemMagpropertySecvolt(device, f"{self._cmd_syntax}:SECVolt") + self._secwindings = PowerPowerItemMagpropertySecwindings( + device, f"{self._cmd_syntax}:SECWINDings" + ) + self._units = PowerPowerItemMagpropertyUnits(device, f"{self._cmd_syntax}:UNITs") + self._vsource = PowerPowerItemMagpropertyVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def areaofcrosssection(self) -> PowerPowerItemMagpropertyAreaofcrosssection: + """Return the ``POWer:POWer:MAGPROPERTY:AREAofcrosssection`` command. + + Description: + - This command sets or queries the coil cross section area for magnetic measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:MAGPROPERTY:AREAofcrosssection?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:AREAofcrosssection?`` query and raise an AssertionError + if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:AREAofcrosssection value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:AREAofcrosssection + - POWer:POWer:MAGPROPERTY:AREAofcrosssection? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ```` is the cross section area in square meters, in the range of 1 nanometer2 to + 1 M2. + """ + return self._areaofcrosssection + + @property + def edgesource(self) -> PowerPowerItemMagpropertyEdgesource: + """Return the ``POWer:POWer:MAGPROPERTY:EDGESOURce`` command. + + Description: + - This command sets or queries the edge source type for the magnetic property + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:EDGESOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:EDGESOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:EDGESOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:EDGESOURce {Current|VOLTAGE} + - POWer:POWer:MAGPROPERTY:EDGESOURce? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent + of the number shown on a power measurement badge in the UI. + - ``Current`` sets the measurement to use the primary voltage source as the signal edge + for the magnetic property measurement. + - ``VOLTAGE`` sets the measurement to use the primary current source as the signal edge + for the magnetic property measurement. + """ + return self._edgesource + + @property + def isource(self) -> PowerPowerItemMagpropertyIsource: + """Return the ``POWer:POWer:MAGPROPERTY:ISOURce`` command. + + Description: + - This command sets or queries the current source for the magnetic property measurement + of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:ISOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:ISOURce? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def length(self) -> PowerPowerItemMagpropertyLength: + """Return the ``POWer:POWer:MAGPROPERTY:LENgth`` command. + + Description: + - This command sets or queries the conductor length of the primary winding for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:LENgth?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:LENgth?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:LENgth value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:LENgth + - POWer:POWer:MAGPROPERTY:LENgth? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ```` is the magnetic length, in the range of 1.00E-09 through 1,000,000. + """ + return self._length + + @property + def primaryturns(self) -> PowerPowerItemMagpropertyPrimaryturns: + """Return the ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs`` command. + + Description: + - This command sets or queries the number of primary turns for magnetic measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:PRIMARYTURNs + - POWer:POWer:MAGPROPERTY:PRIMARYTURNs? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ```` is the integer number of turns in the primary winding, in the range of 1 to + 1 M. + """ + return self._primaryturns + + @property + def sec1source(self) -> PowerPowerItemMagpropertySec1source: + """Return the ``POWer:POWer:MAGPROPERTY:SEC1SOURce`` command. + + Description: + - This command sets or queries the current source channel for secondary winding 1 for + magnetic measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC1SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC1SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC1SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC1SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC1SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._sec1source + + @property + def sec1turns(self) -> PowerPowerItemMagpropertySec1turns: + """Return the ``POWer:POWer:MAGPROPERTY:SEC1TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 1 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC1TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC1TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC1TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC1TURNs + - POWer:POWer:MAGPROPERTY:SEC1TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to + 1,000,000. + """ + return self._sec1turns + + @property + def sec2source(self) -> PowerPowerItemMagpropertySec2source: + """Return the ``POWer:POWer:MAGPROPERTY:SEC2SOURce`` command. + + Description: + - This command sets or queries the current source for secondary winding2 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC2SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC2SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC2SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC2SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC2SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._sec2source + + @property + def sec2turns(self) -> PowerPowerItemMagpropertySec2turns: + """Return the ``POWer:POWer:MAGPROPERTY:SEC2TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 2 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC2TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC2TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC2TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC2TURNs + - POWer:POWer:MAGPROPERTY:SEC2TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to + 1,000,000. + """ + return self._sec2turns + + @property + def sec3source(self) -> PowerPowerItemMagpropertySec3source: + """Return the ``POWer:POWer:MAGPROPERTY:SEC3SOURce`` command. + + Description: + - This command sets or queries the current source channel for secondary winding 3 for + magnetic measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC3SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC3SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC3SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC3SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC3SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._sec3source + + @property + def sec3turns(self) -> PowerPowerItemMagpropertySec3turns: + """Return the ``POWer:POWer:MAGPROPERTY:SEC3TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 3 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC3TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC3TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC3TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC3TURNs + - POWer:POWer:MAGPROPERTY:SEC3TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to + 1,000,000. + """ + return self._sec3turns + + @property + def sec4source(self) -> PowerPowerItemMagpropertySec4source: + """Return the ``POWer:POWer:MAGPROPERTY:SEC4SOURce`` command. + + Description: + - This command sets or queries the current source for secondary winding 4 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC4SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC4SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC4SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC4SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC4SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._sec4source + + @property + def sec4turns(self) -> PowerPowerItemMagpropertySec4turns: + """Return the ``POWer:POWer:MAGPROPERTY:SEC4TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 4 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC4TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC4TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC4TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC4TURNs + - POWer:POWer:MAGPROPERTY:SEC4TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to + 1,000,000. + """ + return self._sec4turns + + @property + def sec5source(self) -> PowerPowerItemMagpropertySec5source: + """Return the ``POWer:POWer:MAGPROPERTY:SEC5SOURce`` command. + + Description: + - This command sets or queries the current source for secondary winding 5 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC5SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC5SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC5SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC5SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC5SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._sec5source + + @property + def sec5turns(self) -> PowerPowerItemMagpropertySec5turns: + """Return the ``POWer:POWer:MAGPROPERTY:SEC5TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 5 for magnetic + measurement of the specified power measurement badge. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC5TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC5TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC5TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC5TURNs + - POWer:POWer:MAGPROPERTY:SEC5TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to + 1,000,000. + """ + return self._sec5turns + + @property + def sec6source(self) -> PowerPowerItemMagpropertySec6source: + """Return the ``POWer:POWer:MAGPROPERTY:SEC6SOURce`` command. + + Description: + - This command sets or queries the current source for secondary winding 6 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC6SOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC6SOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC6SOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC6SOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:SEC6SOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._sec6source + + @property + def sec6turns(self) -> PowerPowerItemMagpropertySec6turns: + """Return the ``POWer:POWer:MAGPROPERTY:SEC6TURNs`` command. + + Description: + - This command sets or queries the number of turns of secondary winding 6 for magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SEC6TURNs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC6TURNs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SEC6TURNs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SEC6TURNs + - POWer:POWer:MAGPROPERTY:SEC6TURNs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ```` is the number of turns on the secondary winding, and ranges from 0 to + 1,000,000. + """ + return self._sec6turns + + @property + def secphase(self) -> PowerPowerItemMagpropertySecphase: + """Return the ``POWer:POWer:MAGPROPERTY:SECPhase`` command. + + Description: + - This command sets or returns the value for the phase difference between secondary and + primary voltage. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SECPhase?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECPhase?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECPhase value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SECPhase + - POWer:POWer:MAGPROPERTY:SECPhase? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` sets the value for the phase difference between secondary and primary + voltage, in the range of -180 to 180 degrees. + """ + return self._secphase + + @property + def secvolt(self) -> PowerPowerItemMagpropertySecvolt: + """Return the ``POWer:POWer:MAGPROPERTY:SECVolt`` command. + + Description: + - This command enables or disables secondary voltage input for measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:SECVolt?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECVolt?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECVolt value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SECVolt {True|False} + - POWer:POWer:MAGPROPERTY:SECVolt? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``True`` enables secondary voltage source. + - ``False`` disables secondary voltage source. + """ + return self._secvolt + + @property + def secwindings(self) -> PowerPowerItemMagpropertySecwindings: + """Return the ``POWer:POWer:MAGPROPERTY:SECWINDings`` command. + + Description: + - This command sets or queries the number of secondary windings for the magnetic + property measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:MAGPROPERTY:SECWINDings?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECWINDings?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:SECWINDings value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:SECWINDings {None|ONE|TWO|THREE|FOUR|FIVE|SIX} + - POWer:POWer:MAGPROPERTY:SECWINDings? + ``` + + Info: + - ``Power`` is the magnetic property power measurement number. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ``None`` , ONE, TWO, THREE, FOUR, FIVE, SIX sets the number of secondary windings to + the specified value. + """ + return self._secwindings + + @property + def units(self) -> PowerPowerItemMagpropertyUnits: + """Return the ``POWer:POWer:MAGPROPERTY:UNITs`` command. + + Description: + - This command sets or queries the units for magnetic measurements of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:UNITs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:UNITs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:UNITs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:UNITs {SI|CGS} + - POWer:POWer:MAGPROPERTY:UNITs? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``SI`` sets the measurement to International System of Units. + - ``CGS`` sets the measurement to Gaussian units. + """ + return self._units + + @property + def vsource(self) -> PowerPowerItemMagpropertyVsource: + """Return the ``POWer:POWer:MAGPROPERTY:VSOURce`` command. + + Description: + - This command sets or queries the primary winding voltage source for the magnetic + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:VSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGPROPERTY:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGPROPERTY:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGPROPERTY:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemMagneticlossVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGNETICLOSS:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for magnetic measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGNETICLOSS:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGNETICLOSS:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGNETICLOSS:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGNETICLOSS:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGNETICLOSS:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagneticlossIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:MAGNETICLOSS:ISOURce`` command. + + Description: + - This command sets or queries the current source for the magnetic loss measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGNETICLOSS:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGNETICLOSS:ISOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGNETICLOSS:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGNETICLOSS:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGNETICLOSS:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemMagneticloss(SCPICmdRead): + """The ``POWer:POWer:MAGNETICLOSS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGNETICLOSS?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGNETICLOSS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.isource``: The ``POWer:POWer:MAGNETICLOSS:ISOURce`` command. + - ``.vsource``: The ``POWer:POWer:MAGNETICLOSS:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._isource = PowerPowerItemMagneticlossIsource(device, f"{self._cmd_syntax}:ISOURce") + self._vsource = PowerPowerItemMagneticlossVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def isource(self) -> PowerPowerItemMagneticlossIsource: + """Return the ``POWer:POWer:MAGNETICLOSS:ISOURce`` command. + + Description: + - This command sets or queries the current source for the magnetic loss measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGNETICLOSS:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGNETICLOSS:ISOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGNETICLOSS:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGNETICLOSS:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGNETICLOSS:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def vsource(self) -> PowerPowerItemMagneticlossVsource: + """Return the ``POWer:POWer:MAGNETICLOSS:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for magnetic measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGNETICLOSS:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:MAGNETICLOSS:VSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:MAGNETICLOSS:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:MAGNETICLOSS:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:MAGNETICLOSS:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemLinerippleLfrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:LINERIPPLE:LFREQuency`` command. + + Description: + - This command sets or queries the frequency present for line ripple measurement of the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:LINERIPPLE:LFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:LINERIPPLE:LFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:LINERIPPLE:LFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:LINERIPPLE:LFREQuency {FIFty|SIXty|FOURHundred} + - POWer:POWer:LINERIPPLE:LFREQuency? + ``` + """ + + +class PowerPowerItemLinerippleInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:LINERIPPLE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for line ripple measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:LINERIPPLE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:LINERIPPLE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:LINERIPPLE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:LINERIPPLE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:LINERIPPLE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemLineripple(SCPICmdRead): + """The ``POWer:POWer:LINERIPPLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:LINERIPPLE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:LINERIPPLE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:LINERIPPLE:INPUTSOurce`` command. + - ``.lfrequency``: The ``POWer:POWer:LINERIPPLE:LFREQuency`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemLinerippleInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + self._lfrequency = PowerPowerItemLinerippleLfrequency( + device, f"{self._cmd_syntax}:LFREQuency" + ) + + @property + def inputsource(self) -> PowerPowerItemLinerippleInputsource: + """Return the ``POWer:POWer:LINERIPPLE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for line ripple measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:LINERIPPLE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:LINERIPPLE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:LINERIPPLE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:LINERIPPLE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:LINERIPPLE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + @property + def lfrequency(self) -> PowerPowerItemLinerippleLfrequency: + """Return the ``POWer:POWer:LINERIPPLE:LFREQuency`` command. + + Description: + - This command sets or queries the frequency present for line ripple measurement of the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:LINERIPPLE:LFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:LINERIPPLE:LFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:LINERIPPLE:LFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:LINERIPPLE:LFREQuency {FIFty|SIXty|FOURHundred} + - POWer:POWer:LINERIPPLE:LFREQuency? + ``` + """ + return self._lfrequency + + +class PowerPowerItemLabel(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:LABel`` command. + + Description: + - This command sets or queries the label for the specified power measurement. As the label + can contain non 7-bit ASCII text, it is stored in Percent Encoding format. The power + measurement badge is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:LABel value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:LABel + - POWer:POWer:LABel? + ``` + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class PowerPowerItemIvsintegralvVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IVSINTEGRALV:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for I vs Integral V measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IVSINTEGRALV:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IVSINTEGRALV:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IVSINTEGRALV:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IVSINTEGRALV:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:IVSINTEGRALV:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemIvsintegralvIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IVSINTEGRALV:ISOURce`` command. + + Description: + - This command sets or queries the current source for I vs Integral V measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IVSINTEGRALV:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IVSINTEGRALV:ISOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IVSINTEGRALV:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IVSINTEGRALV:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:IVSINTEGRALV:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemIvsintegralv(SCPICmdRead): + """The ``POWer:POWer:IVSINTEGRALV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IVSINTEGRALV?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IVSINTEGRALV?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.isource``: The ``POWer:POWer:IVSINTEGRALV:ISOURce`` command. + - ``.vsource``: The ``POWer:POWer:IVSINTEGRALV:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._isource = PowerPowerItemIvsintegralvIsource(device, f"{self._cmd_syntax}:ISOURce") + self._vsource = PowerPowerItemIvsintegralvVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def isource(self) -> PowerPowerItemIvsintegralvIsource: + """Return the ``POWer:POWer:IVSINTEGRALV:ISOURce`` command. + + Description: + - This command sets or queries the current source for I vs Integral V measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IVSINTEGRALV:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IVSINTEGRALV:ISOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IVSINTEGRALV:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IVSINTEGRALV:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:IVSINTEGRALV:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def vsource(self) -> PowerPowerItemIvsintegralvVsource: + """Return the ``POWer:POWer:IVSINTEGRALV:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for I vs Integral V measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IVSINTEGRALV:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IVSINTEGRALV:VSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IVSINTEGRALV:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IVSINTEGRALV:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:IVSINTEGRALV:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` sets the channel specifier; is 1 through 8 and is limited by the number + of FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemInrushcurrentPeakcurrent(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:INRUSHcurrent:PEAKCURRent`` command. + + Description: + - This command sets or returns the peak current value of the specified Inrush Current + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INRUSHcurrent:PEAKCURRent?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INRUSHcurrent:PEAKCURRent?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INRUSHcurrent:PEAKCURRent value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INRUSHcurrent:PEAKCURRent + - POWer:POWer:INRUSHcurrent:PEAKCURRent? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the peak current value, in amps, in + the range -100 A to 100 A. + """ + + +class PowerPowerItemInrushcurrentInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:INRUSHcurrent:INPUTSOurce`` command. + + Description: + - This command sets or returns the input source of the specified Inrush Current measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INRUSHcurrent:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INRUSHcurrent:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INRUSHcurrent:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INRUSHcurrent:INPUTSOurce {CH|MATH|REF} + - POWer:POWer:INRUSHcurrent:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + + +class PowerPowerItemInrushcurrent(SCPICmdRead): + """The ``POWer:POWer:INRUSHcurrent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INRUSHcurrent?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INRUSHcurrent?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:INRUSHcurrent:INPUTSOurce`` command. + - ``.peakcurrent``: The ``POWer:POWer:INRUSHcurrent:PEAKCURRent`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemInrushcurrentInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + self._peakcurrent = PowerPowerItemInrushcurrentPeakcurrent( + device, f"{self._cmd_syntax}:PEAKCURRent" + ) + + @property + def inputsource(self) -> PowerPowerItemInrushcurrentInputsource: + """Return the ``POWer:POWer:INRUSHcurrent:INPUTSOurce`` command. + + Description: + - This command sets or returns the input source of the specified Inrush Current + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:INRUSHcurrent:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INRUSHcurrent:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INRUSHcurrent:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INRUSHcurrent:INPUTSOurce {CH|MATH|REF} + - POWer:POWer:INRUSHcurrent:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the + number shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number + shown on a Math waveform badge in the UI. + """ + return self._inputsource + + @property + def peakcurrent(self) -> PowerPowerItemInrushcurrentPeakcurrent: + """Return the ``POWer:POWer:INRUSHcurrent:PEAKCURRent`` command. + + Description: + - This command sets or returns the peak current value of the specified Inrush Current + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:INRUSHcurrent:PEAKCURRent?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INRUSHcurrent:PEAKCURRent?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INRUSHcurrent:PEAKCURRent value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INRUSHcurrent:PEAKCURRent + - POWer:POWer:INRUSHcurrent:PEAKCURRent? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the peak current value, in amps, + in the range -100 A to 100 A. + """ + return self._peakcurrent + + +class PowerPowerItemInputcapVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:INPUTCAP:VSOURce`` command. + + Description: + - This command sets or queries the input voltage source of the specified Input Capacitance + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP:VSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INPUTCAP:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:INPUTCAP:VSOURce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:INPUTCAP:VSOURce {CH|REF|MATH} + - POWer:POWer:INPUTCAP:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + + +class PowerPowerItemInputcapPeakvoltage(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:INPUTCAP:PEAKVOLTage`` command. + + Description: + - This command sets or queries the peak voltage value of the specified Input Capacitance + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP:PEAKVOLTage?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INPUTCAP:PEAKVOLTage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INPUTCAP:PEAKVOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INPUTCAP:PEAKVOLTage + - POWer:POWer:INPUTCAP:PEAKVOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the peak voltage value in the range + -100 V to 100 V. + """ + + +class PowerPowerItemInputcapPeakcurrent(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:INPUTCAP:PEAKCURRent`` command. + + Description: + - This command sets or queries the peak current value of the specified Input Capacitance + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP:PEAKCURRent?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INPUTCAP:PEAKCURRent?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INPUTCAP:PEAKCURRent value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INPUTCAP:PEAKCURRent + - POWer:POWer:INPUTCAP:PEAKCURRent? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` is a floating point number that represents the peak current value, in amps, in + the range -100 A to 100 A. + """ + + +class PowerPowerItemInputcapIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:INPUTCAP:ISOURce`` command. + + Description: + - This command sets or queries the inrush current input source of the specified Input + Capacitance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP:ISOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INPUTCAP:ISOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:INPUTCAP:ISOURce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:INPUTCAP:ISOURce {CH|REF|MATH} + - POWer:POWer:INPUTCAP:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the number + shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number shown + on a Math waveform badge in the UI. + """ + + +class PowerPowerItemInputcap(SCPICmdRead): + """The ``POWer:POWer:INPUTCAP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INPUTCAP?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.isource``: The ``POWer:POWer:INPUTCAP:ISOURce`` command. + - ``.peakcurrent``: The ``POWer:POWer:INPUTCAP:PEAKCURRent`` command. + - ``.peakvoltage``: The ``POWer:POWer:INPUTCAP:PEAKVOLTage`` command. + - ``.vsource``: The ``POWer:POWer:INPUTCAP:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._isource = PowerPowerItemInputcapIsource(device, f"{self._cmd_syntax}:ISOURce") + self._peakcurrent = PowerPowerItemInputcapPeakcurrent( + device, f"{self._cmd_syntax}:PEAKCURRent" + ) + self._peakvoltage = PowerPowerItemInputcapPeakvoltage( + device, f"{self._cmd_syntax}:PEAKVOLTage" + ) + self._vsource = PowerPowerItemInputcapVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def isource(self) -> PowerPowerItemInputcapIsource: + """Return the ``POWer:POWer:INPUTCAP:ISOURce`` command. + + Description: + - This command sets or queries the inrush current input source of the specified Input + Capacitance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INPUTCAP:ISOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INPUTCAP:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INPUTCAP:ISOURce {CH|REF|MATH} + - POWer:POWer:INPUTCAP:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the + number shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number + shown on a Math waveform badge in the UI. + """ + return self._isource + + @property + def peakcurrent(self) -> PowerPowerItemInputcapPeakcurrent: + """Return the ``POWer:POWer:INPUTCAP:PEAKCURRent`` command. + + Description: + - This command sets or queries the peak current value of the specified Input Capacitance + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP:PEAKCURRent?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INPUTCAP:PEAKCURRent?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INPUTCAP:PEAKCURRent value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INPUTCAP:PEAKCURRent + - POWer:POWer:INPUTCAP:PEAKCURRent? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the peak current value, in amps, + in the range -100 A to 100 A. + """ + return self._peakcurrent + + @property + def peakvoltage(self) -> PowerPowerItemInputcapPeakvoltage: + """Return the ``POWer:POWer:INPUTCAP:PEAKVOLTage`` command. + + Description: + - This command sets or queries the peak voltage value of the specified Input Capacitance + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP:PEAKVOLTage?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INPUTCAP:PEAKVOLTage?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INPUTCAP:PEAKVOLTage value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INPUTCAP:PEAKVOLTage + - POWer:POWer:INPUTCAP:PEAKVOLTage? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` is a floating point number that represents the peak voltage value in the + range -100 V to 100 V. + """ + return self._peakvoltage + + @property + def vsource(self) -> PowerPowerItemInputcapVsource: + """Return the ``POWer:POWer:INPUTCAP:VSOURce`` command. + + Description: + - This command sets or queries the input voltage source of the specified Input + Capacitance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INPUTCAP:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INPUTCAP:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INPUTCAP:VSOURce {CH|REF|MATH} + - POWer:POWer:INPUTCAP:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` is the channel specifier in the range of 1 through 8 and is limited by the + number of instrument input channels. + - ``REF`` is the Reference waveform specifier ≥1. This is the equivalent of the + number shown on a Reference waveform badge in the UI. + - ``MATH`` is the Math waveform specifier ≥1. This is the equivalent of the number + shown on a Math waveform badge in the UI. + """ + return self._vsource + + +class PowerPowerItemInductanceVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:INDUCTANCE:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for inductance measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INDUCTANCE:VSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INDUCTANCE:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INDUCTANCE:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INDUCTANCE:VSOURce {CH|MATH|REF} + - POWer:POWer:INDUCTANCE:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemInductanceIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:INDUCTANCE:ISOUrce`` command. + + Description: + - This command sets or queries the current signal source for the inductance measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INDUCTANCE:ISOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INDUCTANCE:ISOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INDUCTANCE:ISOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INDUCTANCE:ISOUrce {CH|MATH|REF} + - POWer:POWer:INDUCTANCE:ISOUrce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemInductanceEdgesource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:INDUCTANCE:EDGESource`` command. + + Description: + - This command sets or queries the edge source for the power inductance measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INDUCTANCE:EDGESource?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INDUCTANCE:EDGESource?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INDUCTANCE:EDGESource value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INDUCTANCE:EDGESource {S_Ch|CH|MATH|REF} + - POWer:POWer:INDUCTANCE:EDGESource? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemInductance(SCPICmdRead): + """The ``POWer:POWer:INDUCTANCE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INDUCTANCE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INDUCTANCE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.edgesource``: The ``POWer:POWer:INDUCTANCE:EDGESource`` command. + - ``.isource``: The ``POWer:POWer:INDUCTANCE:ISOUrce`` command. + - ``.vsource``: The ``POWer:POWer:INDUCTANCE:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edgesource = PowerPowerItemInductanceEdgesource( + device, f"{self._cmd_syntax}:EDGESource" + ) + self._isource = PowerPowerItemInductanceIsource(device, f"{self._cmd_syntax}:ISOUrce") + self._vsource = PowerPowerItemInductanceVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def edgesource(self) -> PowerPowerItemInductanceEdgesource: + """Return the ``POWer:POWer:INDUCTANCE:EDGESource`` command. + + Description: + - This command sets or queries the edge source for the power inductance measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INDUCTANCE:EDGESource?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INDUCTANCE:EDGESource?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INDUCTANCE:EDGESource value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INDUCTANCE:EDGESource {S_Ch|CH|MATH|REF} + - POWer:POWer:INDUCTANCE:EDGESource? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._edgesource + + @property + def isource(self) -> PowerPowerItemInductanceIsource: + """Return the ``POWer:POWer:INDUCTANCE:ISOUrce`` command. + + Description: + - This command sets or queries the current signal source for the inductance measurement + of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INDUCTANCE:ISOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INDUCTANCE:ISOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INDUCTANCE:ISOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INDUCTANCE:ISOUrce {CH|MATH|REF} + - POWer:POWer:INDUCTANCE:ISOUrce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def vsource(self) -> PowerPowerItemInductanceVsource: + """Return the ``POWer:POWer:INDUCTANCE:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for inductance measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INDUCTANCE:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:INDUCTANCE:VSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:INDUCTANCE:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:INDUCTANCE:VSOURce {CH|MATH|REF} + - POWer:POWer:INDUCTANCE:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemImpedanceTestconnection(SCPICmdWrite): + """The ``POWer:POWer:IMPEDANCE:TESTCONNection`` command. + + Description: + - This command tests the connection with the external instrument for the specified Impedance + measurement. + + Usage: + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:TESTCONNection value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:TESTCONNection {EXECute} + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``EXECute`` runs the test connection function. + """ + + +class PowerPowerItemImpedanceStopfrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:STOPFREQuency`` command. + + Description: + - Sets or queries the value of the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:STOPFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:STOPFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:STOPFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:STOPFREQuency + - POWer:POWer:IMPEDANCE:STOPFREQuency? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ```` specifies the start frequency, in the range of 10 Hz to 50 MHz. + """ + + +class PowerPowerItemImpedanceStartfrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:STARTFREQuency`` command. + + Description: + - Sets or queries the value for the start frequency of the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:STARTFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:STARTFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:STARTFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:STARTFREQuency + - POWer:POWer:IMPEDANCE:STARTFREQuency? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ```` is a floating point number representing the start frequency, in the range of 10 + Hz to 50 MHz. + """ + + +class PowerPowerItemImpedancePpd(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:PPD`` command. + + Description: + - Sets or queries the value for points per decade for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:PPD?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:PPD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:IMPEDANCE:PPD value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:PPD + - POWer:POWer:IMPEDANCE:PPD? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ```` specifies the number of frequency points between the start and stop frequency in + terms of log scale, in the range of 10 to 100 points. + """ + + +class PowerPowerItemImpedanceOutputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:OUTPUTSOurce`` command. + + Description: + - Sets or queries the source for the Impedance output measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:OUTPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:OUTPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:OUTPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:OUTPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:IMPEDANCE:OUTPUTSOurce? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies the instrument input channel number. + - ``MATH`` specifies the instrument math waveform number. + - ``REF`` specifies the instrument reference waveform number. + """ + + +class PowerPowerItemImpedanceInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:INPUTSOurce`` command. + + Description: + - Sets or queries the source for the Impedance input measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:IMPEDANCE:INPUTSOurce? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies the instrument input channel number. + - ``MATH`` specifies the instrument math waveform number. + - ``REF`` specifies the instrument reference waveform number. + """ + + +class PowerPowerItemImpedanceImpedance(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:IMPEDANCE`` command. + + Description: + - Sets or queries the output impedance of the generator for the specified Impedance power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:IMPEDANCE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:IMPEDANCE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:IMPEDANCE value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:IMPEDANCE {FIFTy|HIGHZ} + - POWer:POWer:IMPEDANCE:IMPEDANCE? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FIFTy`` sets the measurement impedance to 50`Ω. + - ``HIGHZ`` sets the measurement impedance to 1`MΩ. + """ + + +class PowerPowerItemImpedanceGenerator(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:GENerator`` command. + + Description: + - Sets or queries the generator source for the Impedance power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:GENerator?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:GENerator?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:GENerator value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:GENerator {INTernal|EXTernal} + - POWer:POWer:IMPEDANCE:GENerator? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``INTernal`` sets the internal generator as the source for the Impedance power + measurement. + - ``EXTernal`` sets the external generator as the source for the Impedance power + measurement. Supported external generators are the Tektronix AFG31000 and AFG3000 series. + """ + + +class PowerPowerItemImpedanceGenipaddress(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:GENIPADDress`` command. + + Description: + - Sets or queries the external generator IP Address associated with the specified Impedance + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:GENIPADDress?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:GENIPADDress?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:GENIPADDress value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:GENIPADDress + - POWer:POWer:IMPEDANCE:GENIPADDress? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. is the IP address + of the generator. + """ + + +class PowerPowerItemImpedanceFreq9val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ9Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ9Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ9Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ9Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ9Val + - POWer:POWer:IMPEDANCE:FREQ9Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceFreq8val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ8Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ8Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ8Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ8Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ8Val + - POWer:POWer:IMPEDANCE:FREQ8Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceFreq7val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ7Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ7Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ7Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ7Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ7Val + - POWer:POWer:IMPEDANCE:FREQ7Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceFreq6val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ6Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ6Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ6Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ6Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ6Val + - POWer:POWer:IMPEDANCE:FREQ6Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceFreq5val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ5Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ5Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ5Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ5Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ5Val + - POWer:POWer:IMPEDANCE:FREQ5Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceFreq4val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ4Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ4Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ4Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ4Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ4Val + - POWer:POWer:IMPEDANCE:FREQ4Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceFreq3val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ3Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ3Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ3Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ3Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ3Val + - POWer:POWer:IMPEDANCE:FREQ3Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceFreq2val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ2Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ2Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ2Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ2Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ2Val + - POWer:POWer:IMPEDANCE:FREQ2Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceFreq1val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ1Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ1Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ1Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ1Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ1Val + - POWer:POWer:IMPEDANCE:FREQ1Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceFreq10val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:FREQ10Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ10Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:FREQ10Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ10Val + - POWer:POWer:IMPEDANCE:FREQ10Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a maximum + of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next profile + step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, then the + Step one stop frequency is 2`MHz. + """ + + +class PowerPowerItemImpedanceConstamplitude(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:CONSTAMPlitude`` command. + + Description: + - Sets or queries the constant amplitude value for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:CONSTAMPlitude?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:CONSTAMPlitude?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:CONSTAMPlitude value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:CONSTAMPlitude + - POWer:POWer:IMPEDANCE:CONSTAMPlitude? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ```` specifies the constant amplitude value, in the range of -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceConnectstatus(SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:CONNECTSTATus`` command. + + Description: + - Queries the instrument's connection status to the external generator, for the specified + Impedance measurement. The Impedance measurement generator IP address (for external + generators) is set with ``POWER:POWERX:IMPEDANCE:GENIPADDRESS``. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:CONNECTSTATus?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:CONNECTSTATus?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:CONNECTSTATus? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + """ + + +class PowerPowerItemImpedanceAutorbw(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AUTORbw`` command. + + Description: + - This command enables Auto RBW computation. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AUTORbw?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AUTORbw?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AUTORbw value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AUTORbw {True|False} + - POWer:POWer:IMPEDANCE:AUTORbw? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``True`` enables Auto RBW computation. + - ``False`` disables Auto RBW computation. + """ + + +class PowerPowerItemImpedanceAnalysismethod(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:ANALYSISMethod`` command. + + Description: + - This command sets or queries the Analysis Method for Impedance measurements. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:ANALYSISMethod?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:ANALYSISMethod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:ANALYSISMethod value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:ANALYSISMethod {SV|FFT} + - POWer:POWer:IMPEDANCE:ANALYSISMethod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``SV`` sets the Analysis Method as Spectrum View. + - ``FFT`` sets the Analysis Method as FFT. + """ + + +class PowerPowerItemImpedanceAmpmode(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMPMode`` command. + + Description: + - Sets or queries the power amplitude mode for the Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMPMode?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMPMode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMPMode value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMPMode {CONSTant|PROFile} + - POWer:POWer:IMPEDANCE:AMPMode? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``CONSTant`` sets the generator to output a constant level signal. + - ``PROFile`` uses related commands to set the generator output signal profile (Start + frequency, Stop frequency, and Amplitude for each profile step). + """ + + +class PowerPowerItemImpedanceAmp9val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP9Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP9Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP9Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP9Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP9Val + - POWer:POWer:IMPEDANCE:AMP9Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceAmp8val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP8Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP8Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP8Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP8Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP8Val + - POWer:POWer:IMPEDANCE:AMP8Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceAmp7val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP7Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP7Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP7Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP7Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP7Val + - POWer:POWer:IMPEDANCE:AMP7Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceAmp6val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP6Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP6Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP6Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP6Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP6Val + - POWer:POWer:IMPEDANCE:AMP6Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceAmp5val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP5Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP5Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP5Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP5Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP5Val + - POWer:POWer:IMPEDANCE:AMP5Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceAmp4val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP4Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP4Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP4Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP4Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP4Val + - POWer:POWer:IMPEDANCE:AMP4Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceAmp3val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP3Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP3Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP3Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP3Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP3Val + - POWer:POWer:IMPEDANCE:AMP3Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceAmp2val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP2Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP2Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP2Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP2Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP2Val + - POWer:POWer:IMPEDANCE:AMP2Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceAmp1val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP1Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP1Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP1Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP1Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP1Val + - POWer:POWer:IMPEDANCE:AMP1Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +class PowerPowerItemImpedanceAmp10val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE:AMP10Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, for + the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP10Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:AMP10Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP10Val + - POWer:POWer:IMPEDANCE:AMP10Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a maximum of + 10. + - ```` sets the generator output amplitude for the specified profile step, in the range + -100 V to 100 V. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class PowerPowerItemImpedance(SCPICmdRead): + """The ``POWer:POWer:IMPEDANCE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``POWer`` is the number of the Impedance power measurement. + + Properties: + - ``.ampmode``: The ``POWer:POWer:IMPEDANCE:AMPMode`` command. + - ``.amp1val``: The ``POWer:POWer:IMPEDANCE:AMP1Val`` command. + - ``.amp2val``: The ``POWer:POWer:IMPEDANCE:AMP2Val`` command. + - ``.amp3val``: The ``POWer:POWer:IMPEDANCE:AMP3Val`` command. + - ``.amp4val``: The ``POWer:POWer:IMPEDANCE:AMP4Val`` command. + - ``.amp5val``: The ``POWer:POWer:IMPEDANCE:AMP5Val`` command. + - ``.amp6val``: The ``POWer:POWer:IMPEDANCE:AMP6Val`` command. + - ``.amp7val``: The ``POWer:POWer:IMPEDANCE:AMP7Val`` command. + - ``.amp8val``: The ``POWer:POWer:IMPEDANCE:AMP8Val`` command. + - ``.amp9val``: The ``POWer:POWer:IMPEDANCE:AMP9Val`` command. + - ``.amp10val``: The ``POWer:POWer:IMPEDANCE:AMP10Val`` command. + - ``.analysismethod``: The ``POWer:POWer:IMPEDANCE:ANALYSISMethod`` command. + - ``.autorbw``: The ``POWer:POWer:IMPEDANCE:AUTORbw`` command. + - ``.connectstatus``: The ``POWer:POWer:IMPEDANCE:CONNECTSTATus`` command. + - ``.constamplitude``: The ``POWer:POWer:IMPEDANCE:CONSTAMPlitude`` command. + - ``.freq1val``: The ``POWer:POWer:IMPEDANCE:FREQ1Val`` command. + - ``.freq2val``: The ``POWer:POWer:IMPEDANCE:FREQ2Val`` command. + - ``.freq3val``: The ``POWer:POWer:IMPEDANCE:FREQ3Val`` command. + - ``.freq4val``: The ``POWer:POWer:IMPEDANCE:FREQ4Val`` command. + - ``.freq5val``: The ``POWer:POWer:IMPEDANCE:FREQ5Val`` command. + - ``.freq6val``: The ``POWer:POWer:IMPEDANCE:FREQ6Val`` command. + - ``.freq7val``: The ``POWer:POWer:IMPEDANCE:FREQ7Val`` command. + - ``.freq8val``: The ``POWer:POWer:IMPEDANCE:FREQ8Val`` command. + - ``.freq9val``: The ``POWer:POWer:IMPEDANCE:FREQ9Val`` command. + - ``.freq10val``: The ``POWer:POWer:IMPEDANCE:FREQ10Val`` command. + - ``.genipaddress``: The ``POWer:POWer:IMPEDANCE:GENIPADDress`` command. + - ``.generator``: The ``POWer:POWer:IMPEDANCE:GENerator`` command. + - ``.impedance``: The ``POWer:POWer:IMPEDANCE:IMPEDANCE`` command. + - ``.inputsource``: The ``POWer:POWer:IMPEDANCE:INPUTSOurce`` command. + - ``.outputsource``: The ``POWer:POWer:IMPEDANCE:OUTPUTSOurce`` command. + - ``.ppd``: The ``POWer:POWer:IMPEDANCE:PPD`` command. + - ``.startfrequency``: The ``POWer:POWer:IMPEDANCE:STARTFREQuency`` command. + - ``.stopfrequency``: The ``POWer:POWer:IMPEDANCE:STOPFREQuency`` command. + - ``.testconnection``: The ``POWer:POWer:IMPEDANCE:TESTCONNection`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ampmode = PowerPowerItemImpedanceAmpmode(device, f"{self._cmd_syntax}:AMPMode") + self._amp1val = PowerPowerItemImpedanceAmp1val(device, f"{self._cmd_syntax}:AMP1Val") + self._amp2val = PowerPowerItemImpedanceAmp2val(device, f"{self._cmd_syntax}:AMP2Val") + self._amp3val = PowerPowerItemImpedanceAmp3val(device, f"{self._cmd_syntax}:AMP3Val") + self._amp4val = PowerPowerItemImpedanceAmp4val(device, f"{self._cmd_syntax}:AMP4Val") + self._amp5val = PowerPowerItemImpedanceAmp5val(device, f"{self._cmd_syntax}:AMP5Val") + self._amp6val = PowerPowerItemImpedanceAmp6val(device, f"{self._cmd_syntax}:AMP6Val") + self._amp7val = PowerPowerItemImpedanceAmp7val(device, f"{self._cmd_syntax}:AMP7Val") + self._amp8val = PowerPowerItemImpedanceAmp8val(device, f"{self._cmd_syntax}:AMP8Val") + self._amp9val = PowerPowerItemImpedanceAmp9val(device, f"{self._cmd_syntax}:AMP9Val") + self._amp10val = PowerPowerItemImpedanceAmp10val(device, f"{self._cmd_syntax}:AMP10Val") + self._analysismethod = PowerPowerItemImpedanceAnalysismethod( + device, f"{self._cmd_syntax}:ANALYSISMethod" + ) + self._autorbw = PowerPowerItemImpedanceAutorbw(device, f"{self._cmd_syntax}:AUTORbw") + self._connectstatus = PowerPowerItemImpedanceConnectstatus( + device, f"{self._cmd_syntax}:CONNECTSTATus" + ) + self._constamplitude = PowerPowerItemImpedanceConstamplitude( + device, f"{self._cmd_syntax}:CONSTAMPlitude" + ) + self._freq1val = PowerPowerItemImpedanceFreq1val(device, f"{self._cmd_syntax}:FREQ1Val") + self._freq2val = PowerPowerItemImpedanceFreq2val(device, f"{self._cmd_syntax}:FREQ2Val") + self._freq3val = PowerPowerItemImpedanceFreq3val(device, f"{self._cmd_syntax}:FREQ3Val") + self._freq4val = PowerPowerItemImpedanceFreq4val(device, f"{self._cmd_syntax}:FREQ4Val") + self._freq5val = PowerPowerItemImpedanceFreq5val(device, f"{self._cmd_syntax}:FREQ5Val") + self._freq6val = PowerPowerItemImpedanceFreq6val(device, f"{self._cmd_syntax}:FREQ6Val") + self._freq7val = PowerPowerItemImpedanceFreq7val(device, f"{self._cmd_syntax}:FREQ7Val") + self._freq8val = PowerPowerItemImpedanceFreq8val(device, f"{self._cmd_syntax}:FREQ8Val") + self._freq9val = PowerPowerItemImpedanceFreq9val(device, f"{self._cmd_syntax}:FREQ9Val") + self._freq10val = PowerPowerItemImpedanceFreq10val(device, f"{self._cmd_syntax}:FREQ10Val") + self._genipaddress = PowerPowerItemImpedanceGenipaddress( + device, f"{self._cmd_syntax}:GENIPADDress" + ) + self._generator = PowerPowerItemImpedanceGenerator(device, f"{self._cmd_syntax}:GENerator") + self._impedance = PowerPowerItemImpedanceImpedance(device, f"{self._cmd_syntax}:IMPEDANCE") + self._inputsource = PowerPowerItemImpedanceInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + self._outputsource = PowerPowerItemImpedanceOutputsource( + device, f"{self._cmd_syntax}:OUTPUTSOurce" + ) + self._ppd = PowerPowerItemImpedancePpd(device, f"{self._cmd_syntax}:PPD") + self._startfrequency = PowerPowerItemImpedanceStartfrequency( + device, f"{self._cmd_syntax}:STARTFREQuency" + ) + self._stopfrequency = PowerPowerItemImpedanceStopfrequency( + device, f"{self._cmd_syntax}:STOPFREQuency" + ) + self._testconnection = PowerPowerItemImpedanceTestconnection( + device, f"{self._cmd_syntax}:TESTCONNection" + ) + + @property + def ampmode(self) -> PowerPowerItemImpedanceAmpmode: + """Return the ``POWer:POWer:IMPEDANCE:AMPMode`` command. + + Description: + - Sets or queries the power amplitude mode for the Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMPMode?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMPMode?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMPMode value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMPMode {CONSTant|PROFile} + - POWer:POWer:IMPEDANCE:AMPMode? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``CONSTant`` sets the generator to output a constant level signal. + - ``PROFile`` uses related commands to set the generator output signal profile (Start + frequency, Stop frequency, and Amplitude for each profile step). + """ + return self._ampmode + + @property + def amp1val(self) -> PowerPowerItemImpedanceAmp1val: + """Return the ``POWer:POWer:IMPEDANCE:AMP1Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP1Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP1Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP1Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP1Val + - POWer:POWer:IMPEDANCE:AMP1Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp1val + + @property + def amp2val(self) -> PowerPowerItemImpedanceAmp2val: + """Return the ``POWer:POWer:IMPEDANCE:AMP2Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP2Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP2Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP2Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP2Val + - POWer:POWer:IMPEDANCE:AMP2Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp2val + + @property + def amp3val(self) -> PowerPowerItemImpedanceAmp3val: + """Return the ``POWer:POWer:IMPEDANCE:AMP3Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP3Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP3Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP3Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP3Val + - POWer:POWer:IMPEDANCE:AMP3Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp3val + + @property + def amp4val(self) -> PowerPowerItemImpedanceAmp4val: + """Return the ``POWer:POWer:IMPEDANCE:AMP4Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP4Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP4Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP4Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP4Val + - POWer:POWer:IMPEDANCE:AMP4Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp4val + + @property + def amp5val(self) -> PowerPowerItemImpedanceAmp5val: + """Return the ``POWer:POWer:IMPEDANCE:AMP5Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP5Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP5Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP5Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP5Val + - POWer:POWer:IMPEDANCE:AMP5Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp5val + + @property + def amp6val(self) -> PowerPowerItemImpedanceAmp6val: + """Return the ``POWer:POWer:IMPEDANCE:AMP6Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP6Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP6Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP6Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP6Val + - POWer:POWer:IMPEDANCE:AMP6Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp6val + + @property + def amp7val(self) -> PowerPowerItemImpedanceAmp7val: + """Return the ``POWer:POWer:IMPEDANCE:AMP7Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP7Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP7Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP7Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP7Val + - POWer:POWer:IMPEDANCE:AMP7Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp7val + + @property + def amp8val(self) -> PowerPowerItemImpedanceAmp8val: + """Return the ``POWer:POWer:IMPEDANCE:AMP8Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP8Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP8Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP8Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP8Val + - POWer:POWer:IMPEDANCE:AMP8Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp8val + + @property + def amp9val(self) -> PowerPowerItemImpedanceAmp9val: + """Return the ``POWer:POWer:IMPEDANCE:AMP9Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP9Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP9Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP9Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP9Val + - POWer:POWer:IMPEDANCE:AMP9Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp9val + + @property + def amp10val(self) -> PowerPowerItemImpedanceAmp10val: + """Return the ``POWer:POWer:IMPEDANCE:AMP10Val`` command. + + Description: + - Sets or queries the signal generator amplitude setting of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AMP10Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP10Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AMP10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AMP10Val + - POWer:POWer:IMPEDANCE:AMP10Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``AMP`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the generator output amplitude for the specified profile step, in the + range -100 V to 100 V. + """ + return self._amp10val + + @property + def analysismethod(self) -> PowerPowerItemImpedanceAnalysismethod: + """Return the ``POWer:POWer:IMPEDANCE:ANALYSISMethod`` command. + + Description: + - This command sets or queries the Analysis Method for Impedance measurements. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:IMPEDANCE:ANALYSISMethod?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:ANALYSISMethod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:ANALYSISMethod value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:ANALYSISMethod {SV|FFT} + - POWer:POWer:IMPEDANCE:ANALYSISMethod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``SV`` sets the Analysis Method as Spectrum View. + - ``FFT`` sets the Analysis Method as FFT. + """ + return self._analysismethod + + @property + def autorbw(self) -> PowerPowerItemImpedanceAutorbw: + """Return the ``POWer:POWer:IMPEDANCE:AUTORbw`` command. + + Description: + - This command enables Auto RBW computation. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:AUTORbw?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AUTORbw?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:AUTORbw value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:AUTORbw {True|False} + - POWer:POWer:IMPEDANCE:AUTORbw? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``True`` enables Auto RBW computation. + - ``False`` disables Auto RBW computation. + """ + return self._autorbw + + @property + def connectstatus(self) -> PowerPowerItemImpedanceConnectstatus: + """Return the ``POWer:POWer:IMPEDANCE:CONNECTSTATus`` command. + + Description: + - Queries the instrument's connection status to the external generator, for the + specified Impedance measurement. The Impedance measurement generator IP address (for + external generators) is set with ``POWER:POWERX:IMPEDANCE:GENIPADDRESS``. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:IMPEDANCE:CONNECTSTATus?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:CONNECTSTATus?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:CONNECTSTATus? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + """ + return self._connectstatus + + @property + def constamplitude(self) -> PowerPowerItemImpedanceConstamplitude: + """Return the ``POWer:POWer:IMPEDANCE:CONSTAMPlitude`` command. + + Description: + - Sets or queries the constant amplitude value for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:IMPEDANCE:CONSTAMPlitude?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:CONSTAMPlitude?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:CONSTAMPlitude value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:CONSTAMPlitude + - POWer:POWer:IMPEDANCE:CONSTAMPlitude? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ```` specifies the constant amplitude value, in the range of -100 V to 100 V. + """ + return self._constamplitude + + @property + def freq1val(self) -> PowerPowerItemImpedanceFreq1val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ1Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ1Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ1Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ1Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ1Val + - POWer:POWer:IMPEDANCE:FREQ1Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq1val + + @property + def freq2val(self) -> PowerPowerItemImpedanceFreq2val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ2Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ2Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ2Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ2Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ2Val + - POWer:POWer:IMPEDANCE:FREQ2Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq2val + + @property + def freq3val(self) -> PowerPowerItemImpedanceFreq3val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ3Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ3Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ3Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ3Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ3Val + - POWer:POWer:IMPEDANCE:FREQ3Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq3val + + @property + def freq4val(self) -> PowerPowerItemImpedanceFreq4val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ4Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ4Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ4Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ4Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ4Val + - POWer:POWer:IMPEDANCE:FREQ4Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq4val + + @property + def freq5val(self) -> PowerPowerItemImpedanceFreq5val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ5Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ5Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ5Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ5Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ5Val + - POWer:POWer:IMPEDANCE:FREQ5Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq5val + + @property + def freq6val(self) -> PowerPowerItemImpedanceFreq6val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ6Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ6Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ6Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ6Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ6Val + - POWer:POWer:IMPEDANCE:FREQ6Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq6val + + @property + def freq7val(self) -> PowerPowerItemImpedanceFreq7val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ7Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ7Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ7Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ7Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ7Val + - POWer:POWer:IMPEDANCE:FREQ7Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq7val + + @property + def freq8val(self) -> PowerPowerItemImpedanceFreq8val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ8Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ8Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ8Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ8Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ8Val + - POWer:POWer:IMPEDANCE:FREQ8Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq8val + + @property + def freq9val(self) -> PowerPowerItemImpedanceFreq9val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ9Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ9Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ9Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ9Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ9Val + - POWer:POWer:IMPEDANCE:FREQ9Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq9val + + @property + def freq10val(self) -> PowerPowerItemImpedanceFreq10val: + """Return the ``POWer:POWer:IMPEDANCE:FREQ10Val`` command. + + Description: + - Sets or queries the signal generator start frequency of the specified profile step, + for the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:FREQ10Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ10Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:FREQ10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:FREQ10Val + - POWer:POWer:IMPEDANCE:FREQ10Val? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FREQ`` specifies the number of the profile step. x has a minimum of 1 and a + maximum of 10. + - ```` sets the start frequency, in the range of 10 Hz to 50 MHz, for the specified + profile step. You can only set the starting frequency for each profile step; the stop + frequency is automatically set to same value as the start frequency of the next + profile step. For example, if Step one is set to 1`MHz, and Step two is set to 2`MHz, + then the Step one stop frequency is 2`MHz. + """ + return self._freq10val + + @property + def genipaddress(self) -> PowerPowerItemImpedanceGenipaddress: + """Return the ``POWer:POWer:IMPEDANCE:GENIPADDress`` command. + + Description: + - Sets or queries the external generator IP Address associated with the specified + Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:GENIPADDress?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:GENIPADDress?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:GENIPADDress value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:GENIPADDress + - POWer:POWer:IMPEDANCE:GENIPADDress? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. is the IP + address of the generator. + """ + return self._genipaddress + + @property + def generator(self) -> PowerPowerItemImpedanceGenerator: + """Return the ``POWer:POWer:IMPEDANCE:GENerator`` command. + + Description: + - Sets or queries the generator source for the Impedance power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:GENerator?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:GENerator?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:GENerator value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:GENerator {INTernal|EXTernal} + - POWer:POWer:IMPEDANCE:GENerator? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``INTernal`` sets the internal generator as the source for the Impedance power + measurement. + - ``EXTernal`` sets the external generator as the source for the Impedance power + measurement. Supported external generators are the Tektronix AFG31000 and AFG3000 + series. + """ + return self._generator + + @property + def impedance(self) -> PowerPowerItemImpedanceImpedance: + """Return the ``POWer:POWer:IMPEDANCE:IMPEDANCE`` command. + + Description: + - Sets or queries the output impedance of the generator for the specified Impedance + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:IMPEDANCE?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:IMPEDANCE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:IMPEDANCE value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:IMPEDANCE {FIFTy|HIGHZ} + - POWer:POWer:IMPEDANCE:IMPEDANCE? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``FIFTy`` sets the measurement impedance to 50`Ω. + - ``HIGHZ`` sets the measurement impedance to 1`MΩ. + """ + return self._impedance + + @property + def inputsource(self) -> PowerPowerItemImpedanceInputsource: + """Return the ``POWer:POWer:IMPEDANCE:INPUTSOurce`` command. + + Description: + - Sets or queries the source for the Impedance input measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:IMPEDANCE:INPUTSOurce? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies the instrument input channel number. + - ``MATH`` specifies the instrument math waveform number. + - ``REF`` specifies the instrument reference waveform number. + """ + return self._inputsource + + @property + def outputsource(self) -> PowerPowerItemImpedanceOutputsource: + """Return the ``POWer:POWer:IMPEDANCE:OUTPUTSOurce`` command. + + Description: + - Sets or queries the source for the Impedance output measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:OUTPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:OUTPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:OUTPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:OUTPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:IMPEDANCE:OUTPUTSOurce? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` specifies the instrument input channel number. + - ``MATH`` specifies the instrument math waveform number. + - ``REF`` specifies the instrument reference waveform number. + """ + return self._outputsource + + @property + def ppd(self) -> PowerPowerItemImpedancePpd: + """Return the ``POWer:POWer:IMPEDANCE:PPD`` command. + + Description: + - Sets or queries the value for points per decade for the specified Impedance + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE:PPD?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE:PPD?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:PPD value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:PPD + - POWer:POWer:IMPEDANCE:PPD? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ```` specifies the number of frequency points between the start and stop + frequency in terms of log scale, in the range of 10 to 100 points. + """ + return self._ppd + + @property + def startfrequency(self) -> PowerPowerItemImpedanceStartfrequency: + """Return the ``POWer:POWer:IMPEDANCE:STARTFREQuency`` command. + + Description: + - Sets or queries the value for the start frequency of the specified Impedance + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:IMPEDANCE:STARTFREQuency?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:STARTFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:STARTFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:STARTFREQuency + - POWer:POWer:IMPEDANCE:STARTFREQuency? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ```` is a floating point number representing the start frequency, in the range of + 10 Hz to 50 MHz. + """ + return self._startfrequency + + @property + def stopfrequency(self) -> PowerPowerItemImpedanceStopfrequency: + """Return the ``POWer:POWer:IMPEDANCE:STOPFREQuency`` command. + + Description: + - Sets or queries the value of the specified Impedance measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:IMPEDANCE:STOPFREQuency?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:IMPEDANCE:STOPFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:STOPFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:STOPFREQuency + - POWer:POWer:IMPEDANCE:STOPFREQuency? + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ```` specifies the start frequency, in the range of 10 Hz to 50 MHz. + """ + return self._stopfrequency + + @property + def testconnection(self) -> PowerPowerItemImpedanceTestconnection: + """Return the ``POWer:POWer:IMPEDANCE:TESTCONNection`` command. + + Description: + - This command tests the connection with the external instrument for the specified + Impedance measurement. + + Usage: + - Using the ``.write(value)`` method will send the + ``POWer:POWer:IMPEDANCE:TESTCONNection value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:IMPEDANCE:TESTCONNection {EXECute} + ``` + + Info: + - ``POWer`` is the number of the Impedance power measurement. + - ``EXECute`` runs the test connection function. + """ + return self._testconnection + + +class PowerPowerItemHarmonicsVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for SOA measurement of the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:VSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:VSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:HARMONICS:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemHarmonicsUnits(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:UNITs`` command. + + Description: + - This command sets or queries the harmonics results units of the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:UNITs?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:UNITs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:HARMONICS:UNITs value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:UNITs {LOG|LINear} + - POWer:POWer:HARMONICS:UNITs? + ``` + """ + + +class PowerPowerItemHarmonicsStartfrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:STARTFREQUEncy`` command. + + Description: + - This command sets or queries the value for the start frequency for the Harmonics + measurement. in the range of 1 Hz to 1 GHz. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:STARTFREQUEncy?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:STARTFREQUEncy?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:STARTFREQUEncy value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:STARTFREQUEncy + - POWer:POWer:HARMONICS:STARTFREQUEncy? + ``` + + Info: + - ``POWer`` is the Power measurement. + - ```` sets the starting frequency, in hertz. + """ + + +class PowerPowerItemHarmonicsStandard(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:STANDard`` command. + + Description: + - This command sets or queries the test mode for harmonics measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:STANDard?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:STANDard value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:STANDard {NONe|IEC|MIL|AM14|DO160|CUSTOM} + - POWer:POWer:HARMONICS:STANDard? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``NONe`` = No standard. + - ``IEC`` = IEC 61000-3-2 standard. + - ``MIL`` = MIL-STD-1399 standard. + - ``AM14`` = AM14 standard. + - ``DO160`` = DO160 standard. + - ``CUSTOM`` = CUSTOM standard. + """ + + +class PowerPowerItemHarmonicsRcurrent(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:RCURRent`` command. + + Description: + - This command sets or queries the rated current for the harmonics measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:RCURRent?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:RCURRent?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:RCURRent value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:RCURRent + - POWer:POWer:HARMONICS:RCURRent? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` ranges from 0 to 100. + """ + + +class PowerPowerItemHarmonicsPowerrating(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:POWERRating`` command. + + Description: + - This command sets or queries the power level for the harmonics measurement of the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:POWERRating?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:POWERRating?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:POWERRating value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:POWERRating {HIGH|LOW} + - POWer:POWer:HARMONICS:POWERRating? + ``` + """ + + +class PowerPowerItemHarmonicsPfactor(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:PFACtor`` command. + + Description: + - This command sets or queries the value of power factor for the harmonics measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:PFACtor?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:PFACtor?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:PFACtor value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:PFACtor + - POWer:POWer:HARMONICS:PFACtor? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` ranges from 0 to 1. + """ + + +class PowerPowerItemHarmonicsOddeven(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:ODDEVen`` command. + + Description: + - This command sets or queries the harmonics value analysis format of the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:ODDEVen?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:ODDEVen?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:ODDEVen value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:ODDEVen {ALL|ODD|EVEN} + - POWer:POWer:HARMONICS:ODDEVen? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``ALL`` to display all harmonics values. + - ``ODD`` to display only the odd values of harmonics. + - ``EVEN`` to display only the even values of harmonics. + """ + + +class PowerPowerItemHarmonicsLinefrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:LINEFREQUEncy`` command. + + Description: + - This command sets or queries the value for the line frequency for the Harmonics + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:LINEFREQUEncy?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:LINEFREQUEncy?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:LINEFREQUEncy value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:LINEFREQUEncy {Auto|FIFTyhz|SIXTyhz |THREESIXTyhz|FOURHUNDREdhz|SIXFIFTyhz|EIGHTHUNDREdhz|CUSTom + - POWer:POWer:HARMONICS:LINEFREQUEncy? + ``` + + Info: + - ``POWer`` is the Power measurement identifier number. + - ``Auto`` automatically detects and sets the line frequency value. + - ``FIFTyhz`` sets the line frequency value to 50 Hz. + - ``SIXTyhz`` sets the line frequency value to 60 Hz. + - ``THREESIXTyhz`` sets the line frequency value to 360 Hz. + - ``FOURHUNDREdhz`` sets the line frequency value to 400 Hz. + - ``SIXFIFTyhz`` sets the line frequency value to 650 Hz. + - ``EIGHTHUNDREdhz`` sets the line frequency value to 800 Hz. + - ``CUSTom`` sets the line frequency value to Custom. The default value for custom is 100 + Hz. Use the ``POWER:POWERX:HARMONICS:LINEFREQUENCY`` command to set a custom line + frequency value. + """ # noqa: E501 + + +class PowerPowerItemHarmonicsIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:ISOURce`` command. + + Description: + - This command sets or queries the current source for SOA measurement of the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:ISOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:ISOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:HARMONICS:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemHarmonicsIpower(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:IPOWer`` command. + + Description: + - This command sets or queries the input power value for the harmonics measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:IPOWer?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:IPOWer?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:HARMONICS:IPOWer value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:IPOWer + - POWer:POWer:HARMONICS:IPOWer? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` ranges from 0 to 600. + """ + + +class PowerPowerItemHarmonicsHsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:HSOURce`` command. + + Description: + - This command sets or queries the source type for the harmonics measurement of the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:HSOURce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:HSOURce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:HSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:HSOURce {CURRent|VOLTage} + - POWer:POWer:HARMONICS:HSOURce? + ``` + """ + + +class PowerPowerItemHarmonicsHorder(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:HORDer`` command. + + Description: + - This command sets or queries the order value for the harmonics measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:HORDer?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:HORDer?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:HARMONICS:HORDer value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:HORDer + - POWer:POWer:HARMONICS:HORDer? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` ranges from 40 to 100. + """ + + +class PowerPowerItemHarmonicsFundcurrent(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:FUNDCURRent`` command. + + Description: + - This command sets or queries the fundamental current value for the harmonics measurement + of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:FUNDCURRent?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:FUNDCURRent?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:FUNDCURRent value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:FUNDCURRent + - POWer:POWer:HARMONICS:FUNDCURRent? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ```` ranges from 0 to 16. + """ + + +class PowerPowerItemHarmonicsCmethod(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:CMEThod`` command. + + Description: + - This command sets or queries the fundamental current method for the harmonics measurement + of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:CMEThod?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:CMEThod?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:CMEThod value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:CMEThod {RATed|MEASured} + - POWer:POWer:HARMONICS:CMEThod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``RATed`` : select to use the standard input current values in the measurement. + - ``MEASured`` : select to use the measured the input current values in the measurement. + """ + + +class PowerPowerItemHarmonicsClfile(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:CLFile`` command. + + Description: + - This command sets or queries the custom limits file path for the harmonics measurement. + The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:CLFile?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:CLFile?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:HARMONICS:CLFile value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:CLFile + - POWer:POWer:HARMONICS:CLFile? + ``` + + Info: + - ```` specifies the custom limits file path that can be loaded when the harmonics + standard type selected is CUSTom. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class PowerPowerItemHarmonicsClass(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:HARMONICS:CLASs`` command. + + Description: + - This command sets or queries the class type for the harmonics measurement in the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:CLASs?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:CLASs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:HARMONICS:CLASs value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:CLASs {CLASSA|CLASSB|CLASSC|CLASSD} + - POWer:POWer:HARMONICS:CLASs? + ``` + """ + + +# pylint: disable=too-many-instance-attributes +class PowerPowerItemHarmonics(SCPICmdRead): + """The ``POWer:POWer:HARMONICS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.class``: The ``POWer:POWer:HARMONICS:CLASs`` command. + - ``.clfile``: The ``POWer:POWer:HARMONICS:CLFile`` command. + - ``.cmethod``: The ``POWer:POWer:HARMONICS:CMEThod`` command. + - ``.fundcurrent``: The ``POWer:POWer:HARMONICS:FUNDCURRent`` command. + - ``.horder``: The ``POWer:POWer:HARMONICS:HORDer`` command. + - ``.hsource``: The ``POWer:POWer:HARMONICS:HSOURce`` command. + - ``.ipower``: The ``POWer:POWer:HARMONICS:IPOWer`` command. + - ``.isource``: The ``POWer:POWer:HARMONICS:ISOURce`` command. + - ``.linefrequency``: The ``POWer:POWer:HARMONICS:LINEFREQUEncy`` command. + - ``.oddeven``: The ``POWer:POWer:HARMONICS:ODDEVen`` command. + - ``.pfactor``: The ``POWer:POWer:HARMONICS:PFACtor`` command. + - ``.powerrating``: The ``POWer:POWer:HARMONICS:POWERRating`` command. + - ``.rcurrent``: The ``POWer:POWer:HARMONICS:RCURRent`` command. + - ``.standard``: The ``POWer:POWer:HARMONICS:STANDard`` command. + - ``.startfrequency``: The ``POWer:POWer:HARMONICS:STARTFREQUEncy`` command. + - ``.units``: The ``POWer:POWer:HARMONICS:UNITs`` command. + - ``.vsource``: The ``POWer:POWer:HARMONICS:VSOURce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._class = PowerPowerItemHarmonicsClass(device, f"{self._cmd_syntax}:CLASs") + self._clfile = PowerPowerItemHarmonicsClfile(device, f"{self._cmd_syntax}:CLFile") + self._cmethod = PowerPowerItemHarmonicsCmethod(device, f"{self._cmd_syntax}:CMEThod") + self._fundcurrent = PowerPowerItemHarmonicsFundcurrent( + device, f"{self._cmd_syntax}:FUNDCURRent" + ) + self._horder = PowerPowerItemHarmonicsHorder(device, f"{self._cmd_syntax}:HORDer") + self._hsource = PowerPowerItemHarmonicsHsource(device, f"{self._cmd_syntax}:HSOURce") + self._ipower = PowerPowerItemHarmonicsIpower(device, f"{self._cmd_syntax}:IPOWer") + self._isource = PowerPowerItemHarmonicsIsource(device, f"{self._cmd_syntax}:ISOURce") + self._linefrequency = PowerPowerItemHarmonicsLinefrequency( + device, f"{self._cmd_syntax}:LINEFREQUEncy" + ) + self._oddeven = PowerPowerItemHarmonicsOddeven(device, f"{self._cmd_syntax}:ODDEVen") + self._pfactor = PowerPowerItemHarmonicsPfactor(device, f"{self._cmd_syntax}:PFACtor") + self._powerrating = PowerPowerItemHarmonicsPowerrating( + device, f"{self._cmd_syntax}:POWERRating" + ) + self._rcurrent = PowerPowerItemHarmonicsRcurrent(device, f"{self._cmd_syntax}:RCURRent") + self._standard = PowerPowerItemHarmonicsStandard(device, f"{self._cmd_syntax}:STANDard") + self._startfrequency = PowerPowerItemHarmonicsStartfrequency( + device, f"{self._cmd_syntax}:STARTFREQUEncy" + ) + self._units = PowerPowerItemHarmonicsUnits(device, f"{self._cmd_syntax}:UNITs") + self._vsource = PowerPowerItemHarmonicsVsource(device, f"{self._cmd_syntax}:VSOURce") + + @property + def class_(self) -> PowerPowerItemHarmonicsClass: + """Return the ``POWer:POWer:HARMONICS:CLASs`` command. + + Description: + - This command sets or queries the class type for the harmonics measurement in the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:CLASs?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:CLASs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:CLASs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:CLASs {CLASSA|CLASSB|CLASSC|CLASSD} + - POWer:POWer:HARMONICS:CLASs? + ``` + """ + return self._class + + @property + def clfile(self) -> PowerPowerItemHarmonicsClfile: + """Return the ``POWer:POWer:HARMONICS:CLFile`` command. + + Description: + - This command sets or queries the custom limits file path for the harmonics + measurement. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:CLFile?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:CLFile?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:CLFile value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:CLFile + - POWer:POWer:HARMONICS:CLFile? + ``` + + Info: + - ```` specifies the custom limits file path that can be loaded when the + harmonics standard type selected is CUSTom. + """ + return self._clfile + + @property + def cmethod(self) -> PowerPowerItemHarmonicsCmethod: + """Return the ``POWer:POWer:HARMONICS:CMEThod`` command. + + Description: + - This command sets or queries the fundamental current method for the harmonics + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:CMEThod?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:CMEThod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:CMEThod value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:CMEThod {RATed|MEASured} + - POWer:POWer:HARMONICS:CMEThod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``RATed`` : select to use the standard input current values in the measurement. + - ``MEASured`` : select to use the measured the input current values in the measurement. + """ + return self._cmethod + + @property + def fundcurrent(self) -> PowerPowerItemHarmonicsFundcurrent: + """Return the ``POWer:POWer:HARMONICS:FUNDCURRent`` command. + + Description: + - This command sets or queries the fundamental current value for the harmonics + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:FUNDCURRent?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:FUNDCURRent?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:FUNDCURRent value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:FUNDCURRent + - POWer:POWer:HARMONICS:FUNDCURRent? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` ranges from 0 to 16. + """ + return self._fundcurrent + + @property + def horder(self) -> PowerPowerItemHarmonicsHorder: + """Return the ``POWer:POWer:HARMONICS:HORDer`` command. + + Description: + - This command sets or queries the order value for the harmonics measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:HORDer?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:HORDer?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:HORDer value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:HORDer + - POWer:POWer:HARMONICS:HORDer? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` ranges from 40 to 100. + """ + return self._horder + + @property + def hsource(self) -> PowerPowerItemHarmonicsHsource: + """Return the ``POWer:POWer:HARMONICS:HSOURce`` command. + + Description: + - This command sets or queries the source type for the harmonics measurement of the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:HSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:HSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:HSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:HSOURce {CURRent|VOLTage} + - POWer:POWer:HARMONICS:HSOURce? + ``` + """ + return self._hsource + + @property + def ipower(self) -> PowerPowerItemHarmonicsIpower: + """Return the ``POWer:POWer:HARMONICS:IPOWer`` command. + + Description: + - This command sets or queries the input power value for the harmonics measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:IPOWer?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:IPOWer?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:IPOWer value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:IPOWer + - POWer:POWer:HARMONICS:IPOWer? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` ranges from 0 to 600. + """ + return self._ipower + + @property + def isource(self) -> PowerPowerItemHarmonicsIsource: + """Return the ``POWer:POWer:HARMONICS:ISOURce`` command. + + Description: + - This command sets or queries the current source for SOA measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:ISOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:ISOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:ISOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:ISOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:HARMONICS:ISOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def linefrequency(self) -> PowerPowerItemHarmonicsLinefrequency: + """Return the ``POWer:POWer:HARMONICS:LINEFREQUEncy`` command. + + Description: + - This command sets or queries the value for the line frequency for the Harmonics + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:HARMONICS:LINEFREQUEncy?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:LINEFREQUEncy?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:LINEFREQUEncy value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:LINEFREQUEncy {Auto|FIFTyhz|SIXTyhz |THREESIXTyhz|FOURHUNDREdhz|SIXFIFTyhz|EIGHTHUNDREdhz|CUSTom + - POWer:POWer:HARMONICS:LINEFREQUEncy? + ``` + + Info: + - ``POWer`` is the Power measurement identifier number. + - ``Auto`` automatically detects and sets the line frequency value. + - ``FIFTyhz`` sets the line frequency value to 50 Hz. + - ``SIXTyhz`` sets the line frequency value to 60 Hz. + - ``THREESIXTyhz`` sets the line frequency value to 360 Hz. + - ``FOURHUNDREdhz`` sets the line frequency value to 400 Hz. + - ``SIXFIFTyhz`` sets the line frequency value to 650 Hz. + - ``EIGHTHUNDREdhz`` sets the line frequency value to 800 Hz. + - ``CUSTom`` sets the line frequency value to Custom. The default value for custom is + 100 Hz. Use the ``POWER:POWERX:HARMONICS:LINEFREQUENCY`` command to set a custom line + frequency value. + """ # noqa: E501 + return self._linefrequency + + @property + def oddeven(self) -> PowerPowerItemHarmonicsOddeven: + """Return the ``POWer:POWer:HARMONICS:ODDEVen`` command. + + Description: + - This command sets or queries the harmonics value analysis format of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:ODDEVen?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:ODDEVen?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:ODDEVen value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:ODDEVen {ALL|ODD|EVEN} + - POWer:POWer:HARMONICS:ODDEVen? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``ALL`` to display all harmonics values. + - ``ODD`` to display only the odd values of harmonics. + - ``EVEN`` to display only the even values of harmonics. + """ + return self._oddeven + + @property + def pfactor(self) -> PowerPowerItemHarmonicsPfactor: + """Return the ``POWer:POWer:HARMONICS:PFACtor`` command. + + Description: + - This command sets or queries the value of power factor for the harmonics measurement + of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:PFACtor?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:PFACtor?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:PFACtor value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:PFACtor + - POWer:POWer:HARMONICS:PFACtor? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` ranges from 0 to 1. + """ + return self._pfactor + + @property + def powerrating(self) -> PowerPowerItemHarmonicsPowerrating: + """Return the ``POWer:POWer:HARMONICS:POWERRating`` command. + + Description: + - This command sets or queries the power level for the harmonics measurement of the + specified power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:POWERRating?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:POWERRating?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:POWERRating value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:POWERRating {HIGH|LOW} + - POWer:POWer:HARMONICS:POWERRating? + ``` + """ + return self._powerrating + + @property + def rcurrent(self) -> PowerPowerItemHarmonicsRcurrent: + """Return the ``POWer:POWer:HARMONICS:RCURRent`` command. + + Description: + - This command sets or queries the rated current for the harmonics measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:RCURRent?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:RCURRent?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:RCURRent value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:RCURRent + - POWer:POWer:HARMONICS:RCURRent? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ```` ranges from 0 to 100. + """ + return self._rcurrent + + @property + def standard(self) -> PowerPowerItemHarmonicsStandard: + """Return the ``POWer:POWer:HARMONICS:STANDard`` command. + + Description: + - This command sets or queries the test mode for harmonics measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:STANDard?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:STANDard?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:STANDard value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:STANDard {NONe|IEC|MIL|AM14|DO160|CUSTOM} + - POWer:POWer:HARMONICS:STANDard? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``NONe`` = No standard. + - ``IEC`` = IEC 61000-3-2 standard. + - ``MIL`` = MIL-STD-1399 standard. + - ``AM14`` = AM14 standard. + - ``DO160`` = DO160 standard. + - ``CUSTOM`` = CUSTOM standard. + """ + return self._standard + + @property + def startfrequency(self) -> PowerPowerItemHarmonicsStartfrequency: + """Return the ``POWer:POWer:HARMONICS:STARTFREQUEncy`` command. + + Description: + - This command sets or queries the value for the start frequency for the Harmonics + measurement. in the range of 1 Hz to 1 GHz. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:HARMONICS:STARTFREQUEncy?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:STARTFREQUEncy?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:STARTFREQUEncy value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:STARTFREQUEncy + - POWer:POWer:HARMONICS:STARTFREQUEncy? + ``` + + Info: + - ``POWer`` is the Power measurement. + - ```` sets the starting frequency, in hertz. + """ + return self._startfrequency + + @property + def units(self) -> PowerPowerItemHarmonicsUnits: + """Return the ``POWer:POWer:HARMONICS:UNITs`` command. + + Description: + - This command sets or queries the harmonics results units of the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:UNITs?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS:UNITs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:UNITs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:UNITs {LOG|LINear} + - POWer:POWer:HARMONICS:UNITs? + ``` + """ + return self._units + + @property + def vsource(self) -> PowerPowerItemHarmonicsVsource: + """Return the ``POWer:POWer:HARMONICS:VSOURce`` command. + + Description: + - This command sets or queries the voltage source for SOA measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS:VSOURce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:HARMONICS:VSOURce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:HARMONICS:VSOURce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:HARMONICS:VSOURce {S_Ch|CH|MATH|REF} + - POWer:POWer:HARMONICS:VSOURce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemGatingGlobal(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:GATing:GLOBal`` command. + + Description: + - This command sets or queries the gating settings for the specified power measurement + number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:GATing:GLOBal?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:GATing:GLOBal?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:GATing:GLOBal value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:GATing:GLOBal {ON|OFF|1|0} + - POWer:POWer:GATing:GLOBal? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``1`` selects the gating settings as Global. + - ``ON`` selects the gating settings as Global. + - ``0`` selects the gating settings as Local. + - ``OFF`` selects the gating settings as Local. + """ + + +class PowerPowerItemGating(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:GATing`` command. + + Description: + - This command sets or queries the gating type for the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:GATing?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:GATing?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:GATing value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:GATing {NONE|CURSOR|SCREEN|LOGIC} + - POWer:POWer:GATing? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``NONE`` makes measurement across the entire waveform record. + - ``CURSOR`` makes measurements on that portion of the waveform between the cursors. + Selecting Cursors opens cursors on the measurement source. Set the cursors so that the + waveform area of interest is in between the cursors. + - ``SCREEN`` takes measurements on that portion of the waveform shown in the display. When + Zoom is on, the display is the zoom window. + - ``LOGIC`` takes measurements only when the logical state of a specified waveform is true. + + Properties: + - ``.global``: The ``POWer:POWer:GATing:GLOBal`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._global = PowerPowerItemGatingGlobal(device, f"{self._cmd_syntax}:GLOBal") + + @property + def global_(self) -> PowerPowerItemGatingGlobal: + """Return the ``POWer:POWer:GATing:GLOBal`` command. + + Description: + - This command sets or queries the gating settings for the specified power measurement + number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:GATing:GLOBal?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:GATing:GLOBal?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:GATing:GLOBal value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:GATing:GLOBal {ON|OFF|1|0} + - POWer:POWer:GATing:GLOBal? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``1`` selects the gating settings as Global. + - ``ON`` selects the gating settings as Global. + - ``0`` selects the gating settings as Local. + - ``OFF`` selects the gating settings as Local. + """ + return self._global + + +class PowerPowerItemFrequencyInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:FREQUENCY:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for frequency measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:FREQUENCY:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:FREQUENCY:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:FREQUENCY:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:FREQUENCY:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:FREQUENCY:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemFrequencyEdge(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:FREQUENCY:EDGe`` command. + + Description: + - This command sets or queries the edge type for frequency measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:FREQUENCY:EDGe?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:FREQUENCY:EDGe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:FREQUENCY:EDGe value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:FREQUENCY:EDGe {RISE|FALL} + - POWer:POWer:FREQUENCY:EDGe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the power measurement badge on the UI. + """ + + +class PowerPowerItemFrequency(SCPICmdRead): + """The ``POWer:POWer:FREQUENCY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:FREQUENCY?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:FREQUENCY?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.edge``: The ``POWer:POWer:FREQUENCY:EDGe`` command. + - ``.inputsource``: The ``POWer:POWer:FREQUENCY:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edge = PowerPowerItemFrequencyEdge(device, f"{self._cmd_syntax}:EDGe") + self._inputsource = PowerPowerItemFrequencyInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def edge(self) -> PowerPowerItemFrequencyEdge: + """Return the ``POWer:POWer:FREQUENCY:EDGe`` command. + + Description: + - This command sets or queries the edge type for frequency measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:FREQUENCY:EDGe?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:FREQUENCY:EDGe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:FREQUENCY:EDGe value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:FREQUENCY:EDGe {RISE|FALL} + - POWer:POWer:FREQUENCY:EDGe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the power measurement badge on the UI. + """ + return self._edge + + @property + def inputsource(self) -> PowerPowerItemFrequencyInputsource: + """Return the ``POWer:POWer:FREQUENCY:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for frequency measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:FREQUENCY:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:FREQUENCY:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:FREQUENCY:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:FREQUENCY:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:FREQUENCY:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemEfficiencyVsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:VSOUrce`` command. + + Description: + - This command sets or queries the voltage source for the power Efficiency measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:VSOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:EFFICIENCY:VSOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VSOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:VSOUrce {CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VSOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemEfficiencyVout3source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:VOUT3SOUrce`` command. + + Description: + - This command sets or queries the output 3 voltage source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:VOUT3SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT3SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT3SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:VOUT3SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VOUT3SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown on the power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemEfficiencyVout2source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:VOUT2SOUrce`` command. + + Description: + - This command sets or queries the output 2 voltage source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:VOUT2SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT2SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT2SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:VOUT2SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VOUT2SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemEfficiencyVout1source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:VOUT1SOUrce`` command. + + Description: + - This command sets or queries the output 1 voltage source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:VOUT1SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT1SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT1SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:VOUT1SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VOUT1SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemEfficiencyOutputtype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:OUTPUTType`` command. + + Description: + - This command sets or queries the output type (AC or DC) for power Efficiency measurement + of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:OUTPUTType?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUTType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUTType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:OUTPUTType {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUTType? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown on the power measurement badge of the UI. + - ``AC`` sets the output voltage type to AC. + - ``DC`` sets the output voltage type to DC. + """ + + +class PowerPowerItemEfficiencyOutput3type(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:OUTPUT3Type`` command. + + Description: + - ``POWer:POWer:EFFICIENCY:OUTPUT3Type This`` command sets or queries the Output3 type + (AC or DC) for the power Efficiency measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:OUTPUT3Type?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT3Type?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT3Type value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:OUTPUT3Type {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUT3Type? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown on the power measurement badge of the UI. + - ``AC`` sets the Output3 voltage type to AC. + - ``DC`` sets the Output3 voltage type to DC. + """ + + +class PowerPowerItemEfficiencyOutput2type(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:OUTPUT2Type`` command. + + Description: + - ``POWer:POWer:EFFICIENCY:OUTPUT2Type This`` command sets or queries the Output2 type + (AC or DC) for the power Efficiency measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:OUTPUT2Type?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT2Type?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT2Type value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:OUTPUT2Type {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUT2Type? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown on the power measurement badge of the UI. + - ``AC`` sets the Output2 voltage type to AC. + - ``DC`` sets the Output2 voltage type to DC. + """ + + +class PowerPowerItemEfficiencyOutput1type(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:OUTPUT1Type`` command. + + Description: + - ``POWer:POWer:EFFICIENCY:OUTPUT1Type This`` command sets or queries the Output1 type + (AC or DC) for the power Efficiency measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:OUTPUT1Type?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT1Type?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT1Type value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:OUTPUT1Type {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUT1Type? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown on the power measurement badge of the UI. + - ``AC`` sets the output1 voltage type to AC. + - ``DC`` sets the output1 voltage type to DC. + """ + + +class PowerPowerItemEfficiencyNumofoutputs(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:NUMOFOutputs`` command. + + Description: + - This command sets or queries the number of outputs for the power Efficiency measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:NUMOFOutputs?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:NUMOFOutputs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:NUMOFOutputs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:NUMOFOutputs {ONE|TWO|THREE} + - POWer:POWer:EFFICIENCY:NUMOFOutputs? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ``ONE`` , TWO, THREE sets the number of outputs to test in the power efficiency + measurement. + """ + + +class PowerPowerItemEfficiencyIsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:ISOUrce`` command. + + Description: + - This command sets or queries the current source for the power Efficiency measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:ISOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:EFFICIENCY:ISOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:ISOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:ISOUrce {CH|MATH|REF} + - POWer:POWer:EFFICIENCY:ISOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemEfficiencyIout3source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:IOUT3SOUrce`` command. + + Description: + - This command sets or queries the output 3 current source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:IOUT3SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT3SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT3SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:IOUT3SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:IOUT3SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown on the power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemEfficiencyIout2source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:IOUT2SOUrce`` command. + + Description: + - This command sets or queries the output 2 current source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:IOUT2SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT2SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT2SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:IOUT2SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:IOUT2SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemEfficiencyIout1source(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:IOUT1SOUrce`` command. + + Description: + - This command sets or queries the output 1 current source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:IOUT1SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT1SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT1SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:IOUT1SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:IOUT1SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemEfficiencyInputtype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY:INPUTType`` command. + + Description: + - This command sets or queries the input type (AC or DC) for power Efficiency measurement of + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:INPUTType?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:EFFICIENCY:INPUTType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:INPUTType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:INPUTType {AC|DC} + - POWer:POWer:EFFICIENCY:INPUTType? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent of + the number shown on the power measurement badge of the UI. + - ``AC`` sets the input voltage type to AC. + - ``DC`` sets the input voltage type to DC. + """ + + +# pylint: disable=too-many-instance-attributes +class PowerPowerItemEfficiency(SCPICmdRead): + """The ``POWer:POWer:EFFICIENCY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:EFFICIENCY?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputtype``: The ``POWer:POWer:EFFICIENCY:INPUTType`` command. + - ``.iout1source``: The ``POWer:POWer:EFFICIENCY:IOUT1SOUrce`` command. + - ``.iout2source``: The ``POWer:POWer:EFFICIENCY:IOUT2SOUrce`` command. + - ``.iout3source``: The ``POWer:POWer:EFFICIENCY:IOUT3SOUrce`` command. + - ``.isource``: The ``POWer:POWer:EFFICIENCY:ISOUrce`` command. + - ``.numofoutputs``: The ``POWer:POWer:EFFICIENCY:NUMOFOutputs`` command. + - ``.output1type``: The ``POWer:POWer:EFFICIENCY:OUTPUT1Type`` command. + - ``.output2type``: The ``POWer:POWer:EFFICIENCY:OUTPUT2Type`` command. + - ``.output3type``: The ``POWer:POWer:EFFICIENCY:OUTPUT3Type`` command. + - ``.outputtype``: The ``POWer:POWer:EFFICIENCY:OUTPUTType`` command. + - ``.vout1source``: The ``POWer:POWer:EFFICIENCY:VOUT1SOUrce`` command. + - ``.vout2source``: The ``POWer:POWer:EFFICIENCY:VOUT2SOUrce`` command. + - ``.vout3source``: The ``POWer:POWer:EFFICIENCY:VOUT3SOUrce`` command. + - ``.vsource``: The ``POWer:POWer:EFFICIENCY:VSOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputtype = PowerPowerItemEfficiencyInputtype(device, f"{self._cmd_syntax}:INPUTType") + self._iout1source = PowerPowerItemEfficiencyIout1source( + device, f"{self._cmd_syntax}:IOUT1SOUrce" + ) + self._iout2source = PowerPowerItemEfficiencyIout2source( + device, f"{self._cmd_syntax}:IOUT2SOUrce" + ) + self._iout3source = PowerPowerItemEfficiencyIout3source( + device, f"{self._cmd_syntax}:IOUT3SOUrce" + ) + self._isource = PowerPowerItemEfficiencyIsource(device, f"{self._cmd_syntax}:ISOUrce") + self._numofoutputs = PowerPowerItemEfficiencyNumofoutputs( + device, f"{self._cmd_syntax}:NUMOFOutputs" + ) + self._output1type = PowerPowerItemEfficiencyOutput1type( + device, f"{self._cmd_syntax}:OUTPUT1Type" + ) + self._output2type = PowerPowerItemEfficiencyOutput2type( + device, f"{self._cmd_syntax}:OUTPUT2Type" + ) + self._output3type = PowerPowerItemEfficiencyOutput3type( + device, f"{self._cmd_syntax}:OUTPUT3Type" + ) + self._outputtype = PowerPowerItemEfficiencyOutputtype( + device, f"{self._cmd_syntax}:OUTPUTType" + ) + self._vout1source = PowerPowerItemEfficiencyVout1source( + device, f"{self._cmd_syntax}:VOUT1SOUrce" + ) + self._vout2source = PowerPowerItemEfficiencyVout2source( + device, f"{self._cmd_syntax}:VOUT2SOUrce" + ) + self._vout3source = PowerPowerItemEfficiencyVout3source( + device, f"{self._cmd_syntax}:VOUT3SOUrce" + ) + self._vsource = PowerPowerItemEfficiencyVsource(device, f"{self._cmd_syntax}:VSOUrce") + + @property + def inputtype(self) -> PowerPowerItemEfficiencyInputtype: + """Return the ``POWer:POWer:EFFICIENCY:INPUTType`` command. + + Description: + - This command sets or queries the input type (AC or DC) for power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:INPUTType?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:INPUTType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:INPUTType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:INPUTType {AC|DC} + - POWer:POWer:EFFICIENCY:INPUTType? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown on the power measurement badge of the UI. + - ``AC`` sets the input voltage type to AC. + - ``DC`` sets the input voltage type to DC. + """ + return self._inputtype + + @property + def iout1source(self) -> PowerPowerItemEfficiencyIout1source: + """Return the ``POWer:POWer:EFFICIENCY:IOUT1SOUrce`` command. + + Description: + - This command sets or queries the output 1 current source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:IOUT1SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT1SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT1SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:IOUT1SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:IOUT1SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._iout1source + + @property + def iout2source(self) -> PowerPowerItemEfficiencyIout2source: + """Return the ``POWer:POWer:EFFICIENCY:IOUT2SOUrce`` command. + + Description: + - This command sets or queries the output 2 current source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:IOUT2SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT2SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT2SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:IOUT2SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:IOUT2SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._iout2source + + @property + def iout3source(self) -> PowerPowerItemEfficiencyIout3source: + """Return the ``POWer:POWer:EFFICIENCY:IOUT3SOUrce`` command. + + Description: + - This command sets or queries the output 3 current source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:IOUT3SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT3SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:IOUT3SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:IOUT3SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:IOUT3SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown on the power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._iout3source + + @property + def isource(self) -> PowerPowerItemEfficiencyIsource: + """Return the ``POWer:POWer:EFFICIENCY:ISOUrce`` command. + + Description: + - This command sets or queries the current source for the power Efficiency measurement + of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:ISOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:ISOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:ISOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:ISOUrce {CH|MATH|REF} + - POWer:POWer:EFFICIENCY:ISOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._isource + + @property + def numofoutputs(self) -> PowerPowerItemEfficiencyNumofoutputs: + """Return the ``POWer:POWer:EFFICIENCY:NUMOFOutputs`` command. + + Description: + - This command sets or queries the number of outputs for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:EFFICIENCY:NUMOFOutputs?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:NUMOFOutputs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:NUMOFOutputs value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:NUMOFOutputs {ONE|TWO|THREE} + - POWer:POWer:EFFICIENCY:NUMOFOutputs? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ``ONE`` , TWO, THREE sets the number of outputs to test in the power efficiency + measurement. + """ + return self._numofoutputs + + @property + def output1type(self) -> PowerPowerItemEfficiencyOutput1type: + """Return the ``POWer:POWer:EFFICIENCY:OUTPUT1Type`` command. + + Description: + - ``POWer:POWer:EFFICIENCY:OUTPUT1Type This`` command sets or queries the Output1 + type (AC or DC) for the power Efficiency measurement of the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:OUTPUT1Type?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT1Type?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT1Type value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:OUTPUT1Type {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUT1Type? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown on the power measurement badge of the UI. + - ``AC`` sets the output1 voltage type to AC. + - ``DC`` sets the output1 voltage type to DC. + """ + return self._output1type + + @property + def output2type(self) -> PowerPowerItemEfficiencyOutput2type: + """Return the ``POWer:POWer:EFFICIENCY:OUTPUT2Type`` command. + + Description: + - ``POWer:POWer:EFFICIENCY:OUTPUT2Type This`` command sets or queries the Output2 + type (AC or DC) for the power Efficiency measurement of the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:OUTPUT2Type?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT2Type?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT2Type value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:OUTPUT2Type {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUT2Type? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown on the power measurement badge of the UI. + - ``AC`` sets the Output2 voltage type to AC. + - ``DC`` sets the Output2 voltage type to DC. + """ + return self._output2type + + @property + def output3type(self) -> PowerPowerItemEfficiencyOutput3type: + """Return the ``POWer:POWer:EFFICIENCY:OUTPUT3Type`` command. + + Description: + - ``POWer:POWer:EFFICIENCY:OUTPUT3Type This`` command sets or queries the Output3 + type (AC or DC) for the power Efficiency measurement of the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:OUTPUT3Type?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT3Type?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUT3Type value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:OUTPUT3Type {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUT3Type? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown on the power measurement badge of the UI. + - ``AC`` sets the Output3 voltage type to AC. + - ``DC`` sets the Output3 voltage type to DC. + """ + return self._output3type + + @property + def outputtype(self) -> PowerPowerItemEfficiencyOutputtype: + """Return the ``POWer:POWer:EFFICIENCY:OUTPUTType`` command. + + Description: + - This command sets or queries the output type (AC or DC) for power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:OUTPUTType?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUTType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:OUTPUTType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:OUTPUTType {AC|DC} + - POWer:POWer:EFFICIENCY:OUTPUTType? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown on the power measurement badge of the UI. + - ``AC`` sets the output voltage type to AC. + - ``DC`` sets the output voltage type to DC. + """ + return self._outputtype + + @property + def vout1source(self) -> PowerPowerItemEfficiencyVout1source: + """Return the ``POWer:POWer:EFFICIENCY:VOUT1SOUrce`` command. + + Description: + - This command sets or queries the output 1 voltage source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:VOUT1SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT1SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT1SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:VOUT1SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VOUT1SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vout1source + + @property + def vout2source(self) -> PowerPowerItemEfficiencyVout2source: + """Return the ``POWer:POWer:EFFICIENCY:VOUT2SOUrce`` command. + + Description: + - This command sets or queries the output 2 voltage source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:VOUT2SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT2SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT2SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:VOUT2SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VOUT2SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vout2source + + @property + def vout3source(self) -> PowerPowerItemEfficiencyVout3source: + """Return the ``POWer:POWer:EFFICIENCY:VOUT3SOUrce`` command. + + Description: + - This command sets or queries the output 3 voltage source for the power Efficiency + measurement of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:VOUT3SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT3SOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VOUT3SOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:VOUT3SOUrce {S_Ch|CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VOUT3SOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown on the power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vout3source + + @property + def vsource(self) -> PowerPowerItemEfficiencyVsource: + """Return the ``POWer:POWer:EFFICIENCY:VSOUrce`` command. + + Description: + - This command sets or queries the voltage source for the power Efficiency measurement + of the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY:VSOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VSOUrce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:EFFICIENCY:VSOUrce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:EFFICIENCY:VSOUrce {CH|MATH|REF} + - POWer:POWer:EFFICIENCY:VSOUrce? + ``` + + Info: + - ``Power`` is the number of a power efficiency measurement. This is the equivalent + of the number shown in the power measurement badge on the UI. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._vsource + + +class PowerPowerItemDvdtSourceedgetype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:DVDT:SOURCEEDGEType`` command. + + Description: + - This command sets or queries the edge type for dv/dt measurement in the specified power + measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DVDT:SOURCEEDGEType?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DVDT:SOURCEEDGEType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:DVDT:SOURCEEDGEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:DVDT:SOURCEEDGEType {RISE|FALL} + - POWer:POWer:DVDT:SOURCEEDGEType? + ``` + """ + + +class PowerPowerItemDvdtInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:DVDT:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for dv/dt measurement of the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DVDT:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DVDT:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:DVDT:INPUTSOurce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:DVDT:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:DVDT:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemDvdt(SCPICmdRead): + """The ``POWer:POWer:DVDT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DVDT?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DVDT?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:DVDT:INPUTSOurce`` command. + - ``.sourceedgetype``: The ``POWer:POWer:DVDT:SOURCEEDGEType`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemDvdtInputsource(device, f"{self._cmd_syntax}:INPUTSOurce") + self._sourceedgetype = PowerPowerItemDvdtSourceedgetype( + device, f"{self._cmd_syntax}:SOURCEEDGEType" + ) + + @property + def inputsource(self) -> PowerPowerItemDvdtInputsource: + """Return the ``POWer:POWer:DVDT:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for dv/dt measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DVDT:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DVDT:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:DVDT:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:DVDT:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:DVDT:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + @property + def sourceedgetype(self) -> PowerPowerItemDvdtSourceedgetype: + """Return the ``POWer:POWer:DVDT:SOURCEEDGEType`` command. + + Description: + - This command sets or queries the edge type for dv/dt measurement in the specified + power measurement number. The power measurement number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DVDT:SOURCEEDGEType?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:DVDT:SOURCEEDGEType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:DVDT:SOURCEEDGEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:DVDT:SOURCEEDGEType {RISE|FALL} + - POWer:POWer:DVDT:SOURCEEDGEType? + ``` + """ + return self._sourceedgetype + + +class PowerPowerItemDidtSourceedgetype(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:DIDT:SOURCEEDGEType`` command. + + Description: + - This command sets or queries the edge type for di/dt measurement of the specified power + measurement number. specifies the number of the power measurement badge. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DIDT:SOURCEEDGEType?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DIDT:SOURCEEDGEType?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:DIDT:SOURCEEDGEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:DIDT:SOURCEEDGEType {RISE|FALL} + - POWer:POWer:DIDT:SOURCEEDGEType? + ``` + """ + + +class PowerPowerItemDidtInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:DIDT:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for di/dt measurement in the specified power + measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DIDT:INPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DIDT:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:DIDT:INPUTSOurce value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:DIDT:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:DIDT:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemDidt(SCPICmdRead): + """The ``POWer:POWer:DIDT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DIDT?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DIDT?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:DIDT:INPUTSOurce`` command. + - ``.sourceedgetype``: The ``POWer:POWer:DIDT:SOURCEEDGEType`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemDidtInputsource(device, f"{self._cmd_syntax}:INPUTSOurce") + self._sourceedgetype = PowerPowerItemDidtSourceedgetype( + device, f"{self._cmd_syntax}:SOURCEEDGEType" + ) + + @property + def inputsource(self) -> PowerPowerItemDidtInputsource: + """Return the ``POWer:POWer:DIDT:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for di/dt measurement in the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DIDT:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DIDT:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:DIDT:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:DIDT:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:DIDT:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + @property + def sourceedgetype(self) -> PowerPowerItemDidtSourceedgetype: + """Return the ``POWer:POWer:DIDT:SOURCEEDGEType`` command. + + Description: + - This command sets or queries the edge type for di/dt measurement of the specified + power measurement number. specifies the number of the power measurement badge. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DIDT:SOURCEEDGEType?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:DIDT:SOURCEEDGEType?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:DIDT:SOURCEEDGEType value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:DIDT:SOURCEEDGEType {RISE|FALL} + - POWer:POWer:DIDT:SOURCEEDGEType? + ``` + """ + return self._sourceedgetype + + +class PowerPowerItemCycletopInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CYCLETop:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle top measurement in the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLETop:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLETop:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLETop:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLETop:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLETop:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemCycletop(SCPICmdRead): + """The ``POWer:POWer:CYCLETop`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLETop?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLETop?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:CYCLETop:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemCycletopInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def inputsource(self) -> PowerPowerItemCycletopInputsource: + """Return the ``POWer:POWer:CYCLETop:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle top measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLETop:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CYCLETop:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLETop:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLETop:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLETop:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemCyclepkpkInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CYCLEPKPK:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle peak-to-peak measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEPKPK:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CYCLEPKPK:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEPKPK:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEPKPK:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEPKPK:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemCyclepkpk(SCPICmdRead): + """The ``POWer:POWer:CYCLEPKPK`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEPKPK?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEPKPK?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEPKPK:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemCyclepkpkInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def inputsource(self) -> PowerPowerItemCyclepkpkInputsource: + """Return the ``POWer:POWer:CYCLEPKPK:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle peak-to-peak measurement in + the specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEPKPK:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CYCLEPKPK:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEPKPK:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEPKPK:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEPKPK:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemCycleminInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CYCLEMin:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle minimum measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEMin:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEMin:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEMin:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEMin:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEMin:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemCyclemin(SCPICmdRead): + """The ``POWer:POWer:CYCLEMin`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEMin?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEMin?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEMin:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemCycleminInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def inputsource(self) -> PowerPowerItemCycleminInputsource: + """Return the ``POWer:POWer:CYCLEMin:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle minimum measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEMin:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CYCLEMin:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEMin:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEMin:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEMin:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemCyclemaxInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CYCLEMAX:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle maximum measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEMAX:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEMAX:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEMAX:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEMAX:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEMAX:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemCyclemax(SCPICmdRead): + """The ``POWer:POWer:CYCLEMAX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEMAX?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEMAX?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEMAX:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemCyclemaxInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def inputsource(self) -> PowerPowerItemCyclemaxInputsource: + """Return the ``POWer:POWer:CYCLEMAX:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle maximum measurement in the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEMAX:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CYCLEMAX:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEMAX:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEMAX:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEMAX:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemCyclebaseInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CYCLEBase:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle base measurement of the specified + power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEBase:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CYCLEBase:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEBase:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEBase:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEBase:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemCyclebase(SCPICmdRead): + """The ``POWer:POWer:CYCLEBase`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEBase?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEBase?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEBase:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemCyclebaseInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def inputsource(self) -> PowerPowerItemCyclebaseInputsource: + """Return the ``POWer:POWer:CYCLEBase:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle base measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEBase:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CYCLEBase:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEBase:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEBase:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEBase:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemCycleampInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CYCLEAmp:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle amplitude measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEAmp:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEAmp:INPUTSOurce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEAmp:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEAmp:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEAmp:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + + +class PowerPowerItemCycleamp(SCPICmdRead): + """The ``POWer:POWer:CYCLEAmp`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEAmp?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEAmp?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEAmp:INPUTSOurce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._inputsource = PowerPowerItemCycleampInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + + @property + def inputsource(self) -> PowerPowerItemCycleampInputsource: + """Return the ``POWer:POWer:CYCLEAmp:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for cycle amplitude measurement of the + specified power measurement number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEAmp:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CYCLEAmp:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CYCLEAmp:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CYCLEAmp:INPUTSOurce {S_Ch|CH|MATH|REF} + - POWer:POWer:CYCLEAmp:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``S_Ch`` specifies the remote scope number and the analog channel. + - ``CH`` = A channel specifier; is 1 through 8 and is limited by the number of + FlexChannels in your instrument. + - ``MATH`` = A math waveform specifier; is ≥1. + - ``REF`` = A reference waveform specifier; is ≥1. + """ + return self._inputsource + + +class PowerPowerItemClresponseTestconnection(SCPICmdWrite): + """The ``POWer:POWer:CLRESPONSE:TESTCONNection`` command. + + Description: + - This command tests the connection to the external generator used with the specified + Control Loop Response power measurement. + + Usage: + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:TESTCONNection value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:TESTCONNection EXECute + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. + - ``EXECute`` runs the test connection function. + """ + + +class PowerPowerItemClresponseStopfrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:STOPFREQuency`` command. + + Description: + - This command sets or queries the stop frequency value for the Control Loop Response power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:STOPFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:STOPFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:STOPFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:STOPFREQuency + - POWer:POWer:CLRESPONSE:STOPFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` is the stop frequency for the measurement, in the range of 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseStartfrequency(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:STARTFREQuency`` command. + + Description: + - This command sets or queries the start frequency value for the Control Loop Response power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:STARTFREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:STARTFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:STARTFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:STARTFREQuency + - POWer:POWer:CLRESPONSE:STARTFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` is the starting frequency for the measurement, in the range of 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponsePpd(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:PPD`` command. + + Description: + - This command sets or queries the points per decade (PPD) value for the Control Loop + Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:PPD?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:PPD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:CLRESPONSE:PPD value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:PPD + - POWer:POWer:CLRESPONSE:PPD? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` is the PPD value for the measurement, in the range of 10 to 100 points. + """ + + +class PowerPowerItemClresponseOutputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:OUTPUTSOurce`` command. + + Description: + - This command sets or queries the output source for the Control Loop Response power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:OUTPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:OUTPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:OUTPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:OUTPUTSOurce CH + - POWer:POWer:CLRESPONSE:OUTPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` sets the channel to use for the output signal source. + """ + + +class PowerPowerItemClresponseMon(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:MON`` command. + + Description: + - This command sets or returns the measure on for the control loop response, PSRR or + impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:MON?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:MON?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:CLRESPONSE:MON value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:MON {SAVG|SSEQ} + - POWer:POWer:CLRESPONSE:MON? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``SAVG`` specifies the measure analysis method for the Control Loop Response/PSRR or + Impedance measurement to SAVG. + - ``SSEQ`` specifies the measure analysis method for the Control Loop Response/PSRR or + Impedance measurement to SSEQ. + """ + + +class PowerPowerItemClresponseInputsource(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for the Control Loop Response power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:INPUTSOurce CH + - POWer:POWer:CLRESPONSE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CH`` sets the channel to use for the output signal source. + """ + + +class PowerPowerItemClresponseImpedance(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:IMPEDance`` command. + + Description: + - This command sets or queries the vertical termination impedance for the Control Loop + Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:IMPEDance?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:IMPEDance?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:IMPEDance value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:IMPEDance {FIFTy|HIGHZ} + - POWer:POWer:CLRESPONSE:IMPEDance? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FIFTy`` sets the impedance to be 50 Ω. + - ``HIGHZ`` sets the impedance to be 1 MΩ. + """ + + +class PowerPowerItemClresponseGenerator(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:GENerator`` command. + + Description: + - This command sets or queries the generator source used to send stimulus signals to the + DUT, for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:GENerator?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:GENerator?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:GENerator value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:GENerator {INTernal} + - POWer:POWer:CLRESPONSE:GENerator? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``INTernal`` sets the generator to the instrument AFG. This is the only valid argument. + """ + + +class PowerPowerItemClresponseGenipaddress(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:GENIPADDress`` command. + + Description: + - Sets or queries the IP address of the external generator to be used with the specified + Control Loop Response measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:GENIPADDress?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:GENIPADDress?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:GENIPADDress value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:GENIPADDress + - POWer:POWer:CLRESPONSE:GENIPADDress? + ``` + + Info: + - ``POWer`` is the number of the power measurement. is the IP address of the + generator. + """ + + +class PowerPowerItemClresponseFreq9val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ9Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ9Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ9Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ9Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ9Val + - POWer:POWer:CLRESPONSE:FREQ9Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq8val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ8Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ8Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ8Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ8Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ8Val + - POWer:POWer:CLRESPONSE:FREQ8Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq7val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ7Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ7Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ7Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ7Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ7Val + - POWer:POWer:CLRESPONSE:FREQ7Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq6val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ6Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ6Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ6Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ6Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ6Val + - POWer:POWer:CLRESPONSE:FREQ6Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq5val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ5Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ5Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ5Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ5Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ5Val + - POWer:POWer:CLRESPONSE:FREQ5Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq4val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ4Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ4Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ4Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ4Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ4Val + - POWer:POWer:CLRESPONSE:FREQ4Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq3val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ3Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ3Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ3Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ3Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ3Val + - POWer:POWer:CLRESPONSE:FREQ3Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq2val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ2Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ2Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ2Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ2Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ2Val + - POWer:POWer:CLRESPONSE:FREQ2Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq1val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ1Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ1Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ1Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ1Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ1Val + - POWer:POWer:CLRESPONSE:FREQ1Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq11val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ11Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ11Val?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ11Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ11Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ11Val + - POWer:POWer:CLRESPONSE:FREQ11Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseFreq10val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:FREQ10Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ10Val?`` + query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:FREQ10Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ10Val + - POWer:POWer:CLRESPONSE:FREQ10Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range of + 10 Hz to 50 MHz. + """ + + +class PowerPowerItemClresponseConstamplitude(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:CONSTAMPlitude`` command. + + Description: + - This command sets or queries the constant amplitude voltage for the Control Loop Response + power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:CONSTAMPlitude?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:CONSTAMPlitude?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:CONSTAMPlitude value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:CONSTAMPlitude + - POWer:POWer:CLRESPONSE:CONSTAMPlitude? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ```` is the constant amplitude voltage value for the measurement, in the range of + -100 V to 100 V. + """ + + +class PowerPowerItemClresponseConnectstatus(SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:CONNECTSTATus`` command. + + Description: + - Queries connection status to the external generator used with the specified Control Loop + Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:CONNECTSTATus?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:CONNECTSTATus?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:CONNECTSTATus? + ``` + + Info: + - ``POWer`` is the number of the power measurement. + """ + + +class PowerPowerItemClresponseAutorbw(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AUTORbw`` command. + + Description: + - This command enables Auto RBW computation. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AUTORbw?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AUTORbw?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AUTORbw value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AUTORbw {True|False} + - POWer:POWer:CLRESPONSE:AUTORbw? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``True`` enables Auto RBW computation. + - ``False`` disables Auto RBW computation. + """ + + +class PowerPowerItemClresponseAnalysismethod(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:ANALYSISMethod`` command. + + Description: + - This command sets or queries the Analysis Method for Control Loop Response measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:ANALYSISMethod?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:ANALYSISMethod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:ANALYSISMethod value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:ANALYSISMethod {SV|FFT} + - POWer:POWer:CLRESPONSE:ANALYSISMethod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``SV`` sets the Analysis Method as Spectrum View. + - ``FFT`` sets the Analysis Method as FFT. + """ + + +class PowerPowerItemClresponseAmpmode(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMPMode`` command. + + Description: + - This command sets or queries the amplitude mode for the Control Loop Response power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMPMode?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMPMode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMPMode value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMPMode {CONSTant|PROFile} + - POWer:POWer:CLRESPONSE:AMPMode? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``CONSTant`` sets the amplitude mode to output a constant amplitude signal from the DUT + stimulus generator for all frequency bands. + - ``PROFile`` enables configuring the generator to set amplitude values for each frequency + band. + """ + + +class PowerPowerItemClresponseAmp9val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP9Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP9Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP9Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP9Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP9Val + - POWer:POWer:CLRESPONSE:AMP9Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemClresponseAmp8val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP8Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP8Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP8Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP8Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP8Val + - POWer:POWer:CLRESPONSE:AMP8Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemClresponseAmp7val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP7Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP7Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP7Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP7Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP7Val + - POWer:POWer:CLRESPONSE:AMP7Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemClresponseAmp6val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP6Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP6Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP6Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP6Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP6Val + - POWer:POWer:CLRESPONSE:AMP6Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemClresponseAmp5val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP5Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP5Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP5Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP5Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP5Val + - POWer:POWer:CLRESPONSE:AMP5Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemClresponseAmp4val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP4Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP4Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP4Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP4Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP4Val + - POWer:POWer:CLRESPONSE:AMP4Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemClresponseAmp3val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP3Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP3Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP3Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP3Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP3Val + - POWer:POWer:CLRESPONSE:AMP3Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemClresponseAmp2val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP2Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP2Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP2Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP2Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP2Val + - POWer:POWer:CLRESPONSE:AMP2Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemClresponseAmp1val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP1Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP1Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP1Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP1Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP1Val + - POWer:POWer:CLRESPONSE:AMP1Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +class PowerPowerItemClresponseAmp10val(SCPICmdWrite, SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE:AMP10Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified configuration + step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP10Val?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:AMP10Val?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP10Val + - POWer:POWer:CLRESPONSE:AMP10Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number shown + in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the range + of -100 V to 100 V. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class PowerPowerItemClresponse(SCPICmdRead): + """The ``POWer:POWer:CLRESPONSE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ampmode``: The ``POWer:POWer:CLRESPONSE:AMPMode`` command. + - ``.amp1val``: The ``POWer:POWer:CLRESPONSE:AMP1Val`` command. + - ``.amp2val``: The ``POWer:POWer:CLRESPONSE:AMP2Val`` command. + - ``.amp3val``: The ``POWer:POWer:CLRESPONSE:AMP3Val`` command. + - ``.amp4val``: The ``POWer:POWer:CLRESPONSE:AMP4Val`` command. + - ``.amp5val``: The ``POWer:POWer:CLRESPONSE:AMP5Val`` command. + - ``.amp6val``: The ``POWer:POWer:CLRESPONSE:AMP6Val`` command. + - ``.amp7val``: The ``POWer:POWer:CLRESPONSE:AMP7Val`` command. + - ``.amp8val``: The ``POWer:POWer:CLRESPONSE:AMP8Val`` command. + - ``.amp9val``: The ``POWer:POWer:CLRESPONSE:AMP9Val`` command. + - ``.amp10val``: The ``POWer:POWer:CLRESPONSE:AMP10Val`` command. + - ``.analysismethod``: The ``POWer:POWer:CLRESPONSE:ANALYSISMethod`` command. + - ``.autorbw``: The ``POWer:POWer:CLRESPONSE:AUTORbw`` command. + - ``.connectstatus``: The ``POWer:POWer:CLRESPONSE:CONNECTSTATus`` command. + - ``.constamplitude``: The ``POWer:POWer:CLRESPONSE:CONSTAMPlitude`` command. + - ``.freq1val``: The ``POWer:POWer:CLRESPONSE:FREQ1Val`` command. + - ``.freq2val``: The ``POWer:POWer:CLRESPONSE:FREQ2Val`` command. + - ``.freq3val``: The ``POWer:POWer:CLRESPONSE:FREQ3Val`` command. + - ``.freq4val``: The ``POWer:POWer:CLRESPONSE:FREQ4Val`` command. + - ``.freq5val``: The ``POWer:POWer:CLRESPONSE:FREQ5Val`` command. + - ``.freq6val``: The ``POWer:POWer:CLRESPONSE:FREQ6Val`` command. + - ``.freq7val``: The ``POWer:POWer:CLRESPONSE:FREQ7Val`` command. + - ``.freq8val``: The ``POWer:POWer:CLRESPONSE:FREQ8Val`` command. + - ``.freq9val``: The ``POWer:POWer:CLRESPONSE:FREQ9Val`` command. + - ``.freq10val``: The ``POWer:POWer:CLRESPONSE:FREQ10Val`` command. + - ``.freq11val``: The ``POWer:POWer:CLRESPONSE:FREQ11Val`` command. + - ``.genipaddress``: The ``POWer:POWer:CLRESPONSE:GENIPADDress`` command. + - ``.generator``: The ``POWer:POWer:CLRESPONSE:GENerator`` command. + - ``.impedance``: The ``POWer:POWer:CLRESPONSE:IMPEDance`` command. + - ``.inputsource``: The ``POWer:POWer:CLRESPONSE:INPUTSOurce`` command. + - ``.mon``: The ``POWer:POWer:CLRESPONSE:MON`` command. + - ``.outputsource``: The ``POWer:POWer:CLRESPONSE:OUTPUTSOurce`` command. + - ``.ppd``: The ``POWer:POWer:CLRESPONSE:PPD`` command. + - ``.startfrequency``: The ``POWer:POWer:CLRESPONSE:STARTFREQuency`` command. + - ``.stopfrequency``: The ``POWer:POWer:CLRESPONSE:STOPFREQuency`` command. + - ``.testconnection``: The ``POWer:POWer:CLRESPONSE:TESTCONNection`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ampmode = PowerPowerItemClresponseAmpmode(device, f"{self._cmd_syntax}:AMPMode") + self._amp1val = PowerPowerItemClresponseAmp1val(device, f"{self._cmd_syntax}:AMP1Val") + self._amp2val = PowerPowerItemClresponseAmp2val(device, f"{self._cmd_syntax}:AMP2Val") + self._amp3val = PowerPowerItemClresponseAmp3val(device, f"{self._cmd_syntax}:AMP3Val") + self._amp4val = PowerPowerItemClresponseAmp4val(device, f"{self._cmd_syntax}:AMP4Val") + self._amp5val = PowerPowerItemClresponseAmp5val(device, f"{self._cmd_syntax}:AMP5Val") + self._amp6val = PowerPowerItemClresponseAmp6val(device, f"{self._cmd_syntax}:AMP6Val") + self._amp7val = PowerPowerItemClresponseAmp7val(device, f"{self._cmd_syntax}:AMP7Val") + self._amp8val = PowerPowerItemClresponseAmp8val(device, f"{self._cmd_syntax}:AMP8Val") + self._amp9val = PowerPowerItemClresponseAmp9val(device, f"{self._cmd_syntax}:AMP9Val") + self._amp10val = PowerPowerItemClresponseAmp10val(device, f"{self._cmd_syntax}:AMP10Val") + self._analysismethod = PowerPowerItemClresponseAnalysismethod( + device, f"{self._cmd_syntax}:ANALYSISMethod" + ) + self._autorbw = PowerPowerItemClresponseAutorbw(device, f"{self._cmd_syntax}:AUTORbw") + self._connectstatus = PowerPowerItemClresponseConnectstatus( + device, f"{self._cmd_syntax}:CONNECTSTATus" + ) + self._constamplitude = PowerPowerItemClresponseConstamplitude( + device, f"{self._cmd_syntax}:CONSTAMPlitude" + ) + self._freq1val = PowerPowerItemClresponseFreq1val(device, f"{self._cmd_syntax}:FREQ1Val") + self._freq2val = PowerPowerItemClresponseFreq2val(device, f"{self._cmd_syntax}:FREQ2Val") + self._freq3val = PowerPowerItemClresponseFreq3val(device, f"{self._cmd_syntax}:FREQ3Val") + self._freq4val = PowerPowerItemClresponseFreq4val(device, f"{self._cmd_syntax}:FREQ4Val") + self._freq5val = PowerPowerItemClresponseFreq5val(device, f"{self._cmd_syntax}:FREQ5Val") + self._freq6val = PowerPowerItemClresponseFreq6val(device, f"{self._cmd_syntax}:FREQ6Val") + self._freq7val = PowerPowerItemClresponseFreq7val(device, f"{self._cmd_syntax}:FREQ7Val") + self._freq8val = PowerPowerItemClresponseFreq8val(device, f"{self._cmd_syntax}:FREQ8Val") + self._freq9val = PowerPowerItemClresponseFreq9val(device, f"{self._cmd_syntax}:FREQ9Val") + self._freq10val = PowerPowerItemClresponseFreq10val(device, f"{self._cmd_syntax}:FREQ10Val") + self._freq11val = PowerPowerItemClresponseFreq11val(device, f"{self._cmd_syntax}:FREQ11Val") + self._genipaddress = PowerPowerItemClresponseGenipaddress( + device, f"{self._cmd_syntax}:GENIPADDress" + ) + self._generator = PowerPowerItemClresponseGenerator(device, f"{self._cmd_syntax}:GENerator") + self._impedance = PowerPowerItemClresponseImpedance(device, f"{self._cmd_syntax}:IMPEDance") + self._inputsource = PowerPowerItemClresponseInputsource( + device, f"{self._cmd_syntax}:INPUTSOurce" + ) + self._mon = PowerPowerItemClresponseMon(device, f"{self._cmd_syntax}:MON") + self._outputsource = PowerPowerItemClresponseOutputsource( + device, f"{self._cmd_syntax}:OUTPUTSOurce" + ) + self._ppd = PowerPowerItemClresponsePpd(device, f"{self._cmd_syntax}:PPD") + self._startfrequency = PowerPowerItemClresponseStartfrequency( + device, f"{self._cmd_syntax}:STARTFREQuency" + ) + self._stopfrequency = PowerPowerItemClresponseStopfrequency( + device, f"{self._cmd_syntax}:STOPFREQuency" + ) + self._testconnection = PowerPowerItemClresponseTestconnection( + device, f"{self._cmd_syntax}:TESTCONNection" + ) + + @property + def ampmode(self) -> PowerPowerItemClresponseAmpmode: + """Return the ``POWer:POWer:CLRESPONSE:AMPMode`` command. + + Description: + - This command sets or queries the amplitude mode for the Control Loop Response power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMPMode?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMPMode?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMPMode value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMPMode {CONSTant|PROFile} + - POWer:POWer:CLRESPONSE:AMPMode? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CONSTant`` sets the amplitude mode to output a constant amplitude signal from the + DUT stimulus generator for all frequency bands. + - ``PROFile`` enables configuring the generator to set amplitude values for each + frequency band. + """ + return self._ampmode + + @property + def amp1val(self) -> PowerPowerItemClresponseAmp1val: + """Return the ``POWer:POWer:CLRESPONSE:AMP1Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP1Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP1Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP1Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP1Val + - POWer:POWer:CLRESPONSE:AMP1Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp1val + + @property + def amp2val(self) -> PowerPowerItemClresponseAmp2val: + """Return the ``POWer:POWer:CLRESPONSE:AMP2Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP2Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP2Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP2Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP2Val + - POWer:POWer:CLRESPONSE:AMP2Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp2val + + @property + def amp3val(self) -> PowerPowerItemClresponseAmp3val: + """Return the ``POWer:POWer:CLRESPONSE:AMP3Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP3Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP3Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP3Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP3Val + - POWer:POWer:CLRESPONSE:AMP3Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp3val + + @property + def amp4val(self) -> PowerPowerItemClresponseAmp4val: + """Return the ``POWer:POWer:CLRESPONSE:AMP4Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP4Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP4Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP4Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP4Val + - POWer:POWer:CLRESPONSE:AMP4Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp4val + + @property + def amp5val(self) -> PowerPowerItemClresponseAmp5val: + """Return the ``POWer:POWer:CLRESPONSE:AMP5Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP5Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP5Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP5Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP5Val + - POWer:POWer:CLRESPONSE:AMP5Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp5val + + @property + def amp6val(self) -> PowerPowerItemClresponseAmp6val: + """Return the ``POWer:POWer:CLRESPONSE:AMP6Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP6Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP6Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP6Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP6Val + - POWer:POWer:CLRESPONSE:AMP6Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp6val + + @property + def amp7val(self) -> PowerPowerItemClresponseAmp7val: + """Return the ``POWer:POWer:CLRESPONSE:AMP7Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP7Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP7Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP7Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP7Val + - POWer:POWer:CLRESPONSE:AMP7Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp7val + + @property + def amp8val(self) -> PowerPowerItemClresponseAmp8val: + """Return the ``POWer:POWer:CLRESPONSE:AMP8Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP8Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP8Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP8Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP8Val + - POWer:POWer:CLRESPONSE:AMP8Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp8val + + @property + def amp9val(self) -> PowerPowerItemClresponseAmp9val: + """Return the ``POWer:POWer:CLRESPONSE:AMP9Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP9Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP9Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP9Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP9Val + - POWer:POWer:CLRESPONSE:AMP9Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp9val + + @property + def amp10val(self) -> PowerPowerItemClresponseAmp10val: + """Return the ``POWer:POWer:CLRESPONSE:AMP10Val`` command. + + Description: + - This command sets or queries the generator amplitude value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AMP10Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP10Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AMP10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AMP10Val + - POWer:POWer:CLRESPONSE:AMP10Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``AMP`` sets the configuration step number, in the range of 1 to 10. Values outside + this range will report an error. x has a minimum of 1 and a maximum of 10. + - ```` sets the generator amplitude for the specified configuration step, in the + range of -100 V to 100 V. + """ + return self._amp10val + + @property + def analysismethod(self) -> PowerPowerItemClresponseAnalysismethod: + """Return the ``POWer:POWer:CLRESPONSE:ANALYSISMethod`` command. + + Description: + - This command sets or queries the Analysis Method for Control Loop Response + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:CLRESPONSE:ANALYSISMethod?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:ANALYSISMethod?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:ANALYSISMethod value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:ANALYSISMethod {SV|FFT} + - POWer:POWer:CLRESPONSE:ANALYSISMethod? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``SV`` sets the Analysis Method as Spectrum View. + - ``FFT`` sets the Analysis Method as FFT. + """ + return self._analysismethod + + @property + def autorbw(self) -> PowerPowerItemClresponseAutorbw: + """Return the ``POWer:POWer:CLRESPONSE:AUTORbw`` command. + + Description: + - This command enables Auto RBW computation. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:AUTORbw?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AUTORbw?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:AUTORbw value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:AUTORbw {True|False} + - POWer:POWer:CLRESPONSE:AUTORbw? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``True`` enables Auto RBW computation. + - ``False`` disables Auto RBW computation. + """ + return self._autorbw + + @property + def connectstatus(self) -> PowerPowerItemClresponseConnectstatus: + """Return the ``POWer:POWer:CLRESPONSE:CONNECTSTATus`` command. + + Description: + - Queries connection status to the external generator used with the specified Control + Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:CLRESPONSE:CONNECTSTATus?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:CONNECTSTATus?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:CONNECTSTATus? + ``` + + Info: + - ``POWer`` is the number of the power measurement. + """ + return self._connectstatus + + @property + def constamplitude(self) -> PowerPowerItemClresponseConstamplitude: + """Return the ``POWer:POWer:CLRESPONSE:CONSTAMPlitude`` command. + + Description: + - This command sets or queries the constant amplitude voltage for the Control Loop + Response power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:CLRESPONSE:CONSTAMPlitude?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:CONSTAMPlitude?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:CONSTAMPlitude value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:CONSTAMPlitude + - POWer:POWer:CLRESPONSE:CONSTAMPlitude? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` is the constant amplitude voltage value for the measurement, in the range of + -100 V to 100 V. + """ + return self._constamplitude + + @property + def freq1val(self) -> PowerPowerItemClresponseFreq1val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ1Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ1Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ1Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ1Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ1Val + - POWer:POWer:CLRESPONSE:FREQ1Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq1val + + @property + def freq2val(self) -> PowerPowerItemClresponseFreq2val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ2Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ2Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ2Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ2Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ2Val + - POWer:POWer:CLRESPONSE:FREQ2Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq2val + + @property + def freq3val(self) -> PowerPowerItemClresponseFreq3val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ3Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ3Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ3Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ3Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ3Val + - POWer:POWer:CLRESPONSE:FREQ3Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq3val + + @property + def freq4val(self) -> PowerPowerItemClresponseFreq4val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ4Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ4Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ4Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ4Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ4Val + - POWer:POWer:CLRESPONSE:FREQ4Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq4val + + @property + def freq5val(self) -> PowerPowerItemClresponseFreq5val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ5Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ5Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ5Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ5Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ5Val + - POWer:POWer:CLRESPONSE:FREQ5Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq5val + + @property + def freq6val(self) -> PowerPowerItemClresponseFreq6val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ6Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ6Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ6Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ6Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ6Val + - POWer:POWer:CLRESPONSE:FREQ6Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq6val + + @property + def freq7val(self) -> PowerPowerItemClresponseFreq7val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ7Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ7Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ7Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ7Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ7Val + - POWer:POWer:CLRESPONSE:FREQ7Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq7val + + @property + def freq8val(self) -> PowerPowerItemClresponseFreq8val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ8Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ8Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ8Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ8Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ8Val + - POWer:POWer:CLRESPONSE:FREQ8Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq8val + + @property + def freq9val(self) -> PowerPowerItemClresponseFreq9val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ9Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ9Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ9Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ9Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ9Val + - POWer:POWer:CLRESPONSE:FREQ9Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq9val + + @property + def freq10val(self) -> PowerPowerItemClresponseFreq10val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ10Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ10Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ10Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ10Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ10Val + - POWer:POWer:CLRESPONSE:FREQ10Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq10val + + @property + def freq11val(self) -> PowerPowerItemClresponseFreq11val: + """Return the ``POWer:POWer:CLRESPONSE:FREQ11Val`` command. + + Description: + - This command sets or queries the generator frequency value of the specified + configuration step for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:FREQ11Val?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ11Val?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:FREQ11Val value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:FREQ11Val + - POWer:POWer:CLRESPONSE:FREQ11Val? + ``` + + Info: + - ``Power`` sets the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FREQ`` sets the configuration step number, in the range of 1 to 11. Values + outside this range will report an error. x has a minimum of 1 and a maximum of 11. + - ```` sets the frequency of the specified configuration step number, in the range + of 10 Hz to 50 MHz. + """ + return self._freq11val + + @property + def genipaddress(self) -> PowerPowerItemClresponseGenipaddress: + """Return the ``POWer:POWer:CLRESPONSE:GENIPADDress`` command. + + Description: + - Sets or queries the IP address of the external generator to be used with the specified + Control Loop Response measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:CLRESPONSE:GENIPADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:GENIPADDress?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:GENIPADDress value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:GENIPADDress + - POWer:POWer:CLRESPONSE:GENIPADDress? + ``` + + Info: + - ``POWer`` is the number of the power measurement. is the IP address of the + generator. + """ + return self._genipaddress + + @property + def generator(self) -> PowerPowerItemClresponseGenerator: + """Return the ``POWer:POWer:CLRESPONSE:GENerator`` command. + + Description: + - This command sets or queries the generator source used to send stimulus signals to the + DUT, for the Control Loop Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:GENerator?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:GENerator?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:GENerator value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:GENerator {INTernal} + - POWer:POWer:CLRESPONSE:GENerator? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``INTernal`` sets the generator to the instrument AFG. This is the only valid + argument. + """ + return self._generator + + @property + def impedance(self) -> PowerPowerItemClresponseImpedance: + """Return the ``POWer:POWer:CLRESPONSE:IMPEDance`` command. + + Description: + - This command sets or queries the vertical termination impedance for the Control Loop + Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:IMPEDance?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:IMPEDance?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:IMPEDance value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:IMPEDance {FIFTy|HIGHZ} + - POWer:POWer:CLRESPONSE:IMPEDance? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``FIFTy`` sets the impedance to be 50 Ω. + - ``HIGHZ`` sets the impedance to be 1 MΩ. + """ + return self._impedance + + @property + def inputsource(self) -> PowerPowerItemClresponseInputsource: + """Return the ``POWer:POWer:CLRESPONSE:INPUTSOurce`` command. + + Description: + - This command sets or queries the input source for the Control Loop Response power + measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:INPUTSOurce?`` + query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:INPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:INPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:INPUTSOurce CH + - POWer:POWer:CLRESPONSE:INPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` sets the channel to use for the output signal source. + """ + return self._inputsource + + @property + def mon(self) -> PowerPowerItemClresponseMon: + """Return the ``POWer:POWer:CLRESPONSE:MON`` command. + + Description: + - This command sets or returns the measure on for the control loop response, PSRR or + impedance measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:MON?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:MON?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:MON value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:MON {SAVG|SSEQ} + - POWer:POWer:CLRESPONSE:MON? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``SAVG`` specifies the measure analysis method for the Control Loop Response/PSRR or + Impedance measurement to SAVG. + - ``SSEQ`` specifies the measure analysis method for the Control Loop Response/PSRR or + Impedance measurement to SSEQ. + """ + return self._mon + + @property + def outputsource(self) -> PowerPowerItemClresponseOutputsource: + """Return the ``POWer:POWer:CLRESPONSE:OUTPUTSOurce`` command. + + Description: + - This command sets or queries the output source for the Control Loop Response power + measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:CLRESPONSE:OUTPUTSOurce?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:OUTPUTSOurce?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:OUTPUTSOurce value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:OUTPUTSOurce CH + - POWer:POWer:CLRESPONSE:OUTPUTSOurce? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``CH`` sets the channel to use for the output signal source. + """ + return self._outputsource + + @property + def ppd(self) -> PowerPowerItemClresponsePpd: + """Return the ``POWer:POWer:CLRESPONSE:PPD`` command. + + Description: + - This command sets or queries the points per decade (PPD) value for the Control Loop + Response power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE:PPD?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE:PPD?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:PPD value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:PPD + - POWer:POWer:CLRESPONSE:PPD? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` is the PPD value for the measurement, in the range of 10 to 100 points. + """ + return self._ppd + + @property + def startfrequency(self) -> PowerPowerItemClresponseStartfrequency: + """Return the ``POWer:POWer:CLRESPONSE:STARTFREQuency`` command. + + Description: + - This command sets or queries the start frequency value for the Control Loop Response + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:CLRESPONSE:STARTFREQuency?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:STARTFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:STARTFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:STARTFREQuency + - POWer:POWer:CLRESPONSE:STARTFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` is the starting frequency for the measurement, in the range of 10 Hz to 50 + MHz. + """ + return self._startfrequency + + @property + def stopfrequency(self) -> PowerPowerItemClresponseStopfrequency: + """Return the ``POWer:POWer:CLRESPONSE:STOPFREQuency`` command. + + Description: + - This command sets or queries the stop frequency value for the Control Loop Response + power measurement. + + Usage: + - Using the ``.query()`` method will send the + ``POWer:POWer:CLRESPONSE:STOPFREQuency?`` query. + - Using the ``.verify(value)`` method will send the + ``POWer:POWer:CLRESPONSE:STOPFREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:STOPFREQuency value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:STOPFREQuency + - POWer:POWer:CLRESPONSE:STOPFREQuency? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` is the stop frequency for the measurement, in the range of 10 Hz to 50 MHz. + """ + return self._stopfrequency + + @property + def testconnection(self) -> PowerPowerItemClresponseTestconnection: + """Return the ``POWer:POWer:CLRESPONSE:TESTCONNection`` command. + + Description: + - This command tests the connection to the external generator used with the specified + Control Loop Response power measurement. + + Usage: + - Using the ``.write(value)`` method will send the + ``POWer:POWer:CLRESPONSE:TESTCONNection value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:CLRESPONSE:TESTCONNection EXECute + ``` + + Info: + - ``POWer`` is the number of the PSRR power measurement. + - ``EXECute`` runs the test connection function. + """ + return self._testconnection + + +class PowerPowerItemAutoset(SCPICmdWrite): + """The ``POWer:POWer:AUTOSet`` command. + + Description: + - This command executes power autoset for the specified power measurement number. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:POWer:AUTOSet value`` command. + + SCPI Syntax: + ``` + - POWer:POWer:AUTOSet EXECute + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number shown + on a power measurement badge in the UI. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class PowerPowerItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``POWer:POWer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.autoset``: The ``POWer:POWer:AUTOSet`` command. + - ``.clresponse``: The ``POWer:POWer:CLRESPONSE`` command tree. + - ``.cycleamp``: The ``POWer:POWer:CYCLEAmp`` command tree. + - ``.cyclebase``: The ``POWer:POWer:CYCLEBase`` command tree. + - ``.cyclemax``: The ``POWer:POWer:CYCLEMAX`` command tree. + - ``.cyclemin``: The ``POWer:POWer:CYCLEMin`` command tree. + - ``.cyclepkpk``: The ``POWer:POWer:CYCLEPKPK`` command tree. + - ``.cycletop``: The ``POWer:POWer:CYCLETop`` command tree. + - ``.didt``: The ``POWer:POWer:DIDT`` command tree. + - ``.dvdt``: The ``POWer:POWer:DVDT`` command tree. + - ``.efficiency``: The ``POWer:POWer:EFFICIENCY`` command tree. + - ``.frequency``: The ``POWer:POWer:FREQUENCY`` command tree. + - ``.gating``: The ``POWer:POWer:GATing`` command. + - ``.harmonics``: The ``POWer:POWer:HARMONICS`` command tree. + - ``.impedance``: The ``POWer:POWer:IMPEDANCE`` command tree. + - ``.inductance``: The ``POWer:POWer:INDUCTANCE`` command tree. + - ``.inputcap``: The ``POWer:POWer:INPUTCAP`` command tree. + - ``.inrushcurrent``: The ``POWer:POWer:INRUSHcurrent`` command tree. + - ``.ivsintegralv``: The ``POWer:POWer:IVSINTEGRALV`` command tree. + - ``.label``: The ``POWer:POWer:LABel`` command. + - ``.lineripple``: The ``POWer:POWer:LINERIPPLE`` command tree. + - ``.magneticloss``: The ``POWer:POWer:MAGNETICLOSS`` command tree. + - ``.magproperty``: The ``POWer:POWer:MAGPROPERTY`` command tree. + - ``.ndutycycle``: The ``POWer:POWer:NDUTYCYCLE`` command tree. + - ``.npulsewidth``: The ``POWer:POWer:NPULSEWIDTH`` command tree. + - ``.pdutycycle``: The ``POWer:POWer:PDUTYCYCLE`` command tree. + - ``.period``: The ``POWer:POWer:PERIOD`` command tree. + - ``.powerquality``: The ``POWer:POWer:POWERQUALITY`` command tree. + - ``.ppulsewidth``: The ``POWer:POWer:PPULSEWIDTH`` command tree. + - ``.preset``: The ``POWer:POWer:PRESET`` command. + - ``.psrr``: The ``POWer:POWer:PSRR`` command tree. + - ``.rdson``: The ``POWer:POWer:RDSON`` command tree. + - ``.reflevels``: The ``POWer:POWer:REFLevels`` command tree. + - ``.results``: The ``POWer:POWer:RESUlts`` command tree. + - ``.seqsetup``: The ``POWer:POWer:SEQSETup`` command. + - ``.sequence``: The ``POWer:POWer:SEQuence`` command. + - ``.soa``: The ``POWer:POWer:SOA`` command tree. + - ``.switchingloss``: The ``POWer:POWer:SWITCHINGLOSS`` command tree. + - ``.switchingripple``: The ``POWer:POWer:SWITCHINGRIPPLE`` command tree. + - ``.turnofftime``: The ``POWer:POWer:TURNOFFtime`` command tree. + - ``.turnontime``: The ``POWer:POWer:TURNONtime`` command tree. + - ``.type``: The ``POWer:POWer:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._autoset = PowerPowerItemAutoset(device, f"{self._cmd_syntax}:AUTOSet") + self._clresponse = PowerPowerItemClresponse(device, f"{self._cmd_syntax}:CLRESPONSE") + self._cycleamp = PowerPowerItemCycleamp(device, f"{self._cmd_syntax}:CYCLEAmp") + self._cyclebase = PowerPowerItemCyclebase(device, f"{self._cmd_syntax}:CYCLEBase") + self._cyclemax = PowerPowerItemCyclemax(device, f"{self._cmd_syntax}:CYCLEMAX") + self._cyclemin = PowerPowerItemCyclemin(device, f"{self._cmd_syntax}:CYCLEMin") + self._cyclepkpk = PowerPowerItemCyclepkpk(device, f"{self._cmd_syntax}:CYCLEPKPK") + self._cycletop = PowerPowerItemCycletop(device, f"{self._cmd_syntax}:CYCLETop") + self._didt = PowerPowerItemDidt(device, f"{self._cmd_syntax}:DIDT") + self._dvdt = PowerPowerItemDvdt(device, f"{self._cmd_syntax}:DVDT") + self._efficiency = PowerPowerItemEfficiency(device, f"{self._cmd_syntax}:EFFICIENCY") + self._frequency = PowerPowerItemFrequency(device, f"{self._cmd_syntax}:FREQUENCY") + self._gating = PowerPowerItemGating(device, f"{self._cmd_syntax}:GATing") + self._harmonics = PowerPowerItemHarmonics(device, f"{self._cmd_syntax}:HARMONICS") + self._impedance = PowerPowerItemImpedance(device, f"{self._cmd_syntax}:IMPEDANCE") + self._inductance = PowerPowerItemInductance(device, f"{self._cmd_syntax}:INDUCTANCE") + self._inputcap = PowerPowerItemInputcap(device, f"{self._cmd_syntax}:INPUTCAP") + self._inrushcurrent = PowerPowerItemInrushcurrent( + device, f"{self._cmd_syntax}:INRUSHcurrent" + ) + self._ivsintegralv = PowerPowerItemIvsintegralv(device, f"{self._cmd_syntax}:IVSINTEGRALV") + self._label = PowerPowerItemLabel(device, f"{self._cmd_syntax}:LABel") + self._lineripple = PowerPowerItemLineripple(device, f"{self._cmd_syntax}:LINERIPPLE") + self._magneticloss = PowerPowerItemMagneticloss(device, f"{self._cmd_syntax}:MAGNETICLOSS") + self._magproperty = PowerPowerItemMagproperty(device, f"{self._cmd_syntax}:MAGPROPERTY") + self._ndutycycle = PowerPowerItemNdutycycle(device, f"{self._cmd_syntax}:NDUTYCYCLE") + self._npulsewidth = PowerPowerItemNpulsewidth(device, f"{self._cmd_syntax}:NPULSEWIDTH") + self._pdutycycle = PowerPowerItemPdutycycle(device, f"{self._cmd_syntax}:PDUTYCYCLE") + self._period = PowerPowerItemPeriod(device, f"{self._cmd_syntax}:PERIOD") + self._powerquality = PowerPowerItemPowerquality(device, f"{self._cmd_syntax}:POWERQUALITY") + self._ppulsewidth = PowerPowerItemPpulsewidth(device, f"{self._cmd_syntax}:PPULSEWIDTH") + self._preset = PowerPowerItemPreset(device, f"{self._cmd_syntax}:PRESET") + self._psrr = PowerPowerItemPsrr(device, f"{self._cmd_syntax}:PSRR") + self._rdson = PowerPowerItemRdson(device, f"{self._cmd_syntax}:RDSON") + self._reflevels = PowerPowerItemReflevels(device, f"{self._cmd_syntax}:REFLevels") + self._results = PowerPowerItemResults(device, f"{self._cmd_syntax}:RESUlts") + self._seqsetup = PowerPowerItemSeqsetup(device, f"{self._cmd_syntax}:SEQSETup") + self._sequence = PowerPowerItemSequence(device, f"{self._cmd_syntax}:SEQuence") + self._soa = PowerPowerItemSoa(device, f"{self._cmd_syntax}:SOA") + self._switchingloss = PowerPowerItemSwitchingloss( + device, f"{self._cmd_syntax}:SWITCHINGLOSS" + ) + self._switchingripple = PowerPowerItemSwitchingripple( + device, f"{self._cmd_syntax}:SWITCHINGRIPPLE" + ) + self._turnofftime = PowerPowerItemTurnofftime(device, f"{self._cmd_syntax}:TURNOFFtime") + self._turnontime = PowerPowerItemTurnontime(device, f"{self._cmd_syntax}:TURNONtime") + self._type = PowerPowerItemType(device, f"{self._cmd_syntax}:TYPe") + + @property + def autoset(self) -> PowerPowerItemAutoset: + """Return the ``POWer:POWer:AUTOSet`` command. + + Description: + - This command executes power autoset for the specified power measurement number. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:POWer:AUTOSet value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:AUTOSet EXECute + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + """ + return self._autoset + + @property + def clresponse(self) -> PowerPowerItemClresponse: + """Return the ``POWer:POWer:CLRESPONSE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CLRESPONSE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CLRESPONSE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ampmode``: The ``POWer:POWer:CLRESPONSE:AMPMode`` command. + - ``.amp1val``: The ``POWer:POWer:CLRESPONSE:AMP1Val`` command. + - ``.amp2val``: The ``POWer:POWer:CLRESPONSE:AMP2Val`` command. + - ``.amp3val``: The ``POWer:POWer:CLRESPONSE:AMP3Val`` command. + - ``.amp4val``: The ``POWer:POWer:CLRESPONSE:AMP4Val`` command. + - ``.amp5val``: The ``POWer:POWer:CLRESPONSE:AMP5Val`` command. + - ``.amp6val``: The ``POWer:POWer:CLRESPONSE:AMP6Val`` command. + - ``.amp7val``: The ``POWer:POWer:CLRESPONSE:AMP7Val`` command. + - ``.amp8val``: The ``POWer:POWer:CLRESPONSE:AMP8Val`` command. + - ``.amp9val``: The ``POWer:POWer:CLRESPONSE:AMP9Val`` command. + - ``.amp10val``: The ``POWer:POWer:CLRESPONSE:AMP10Val`` command. + - ``.analysismethod``: The ``POWer:POWer:CLRESPONSE:ANALYSISMethod`` command. + - ``.autorbw``: The ``POWer:POWer:CLRESPONSE:AUTORbw`` command. + - ``.connectstatus``: The ``POWer:POWer:CLRESPONSE:CONNECTSTATus`` command. + - ``.constamplitude``: The ``POWer:POWer:CLRESPONSE:CONSTAMPlitude`` command. + - ``.freq1val``: The ``POWer:POWer:CLRESPONSE:FREQ1Val`` command. + - ``.freq2val``: The ``POWer:POWer:CLRESPONSE:FREQ2Val`` command. + - ``.freq3val``: The ``POWer:POWer:CLRESPONSE:FREQ3Val`` command. + - ``.freq4val``: The ``POWer:POWer:CLRESPONSE:FREQ4Val`` command. + - ``.freq5val``: The ``POWer:POWer:CLRESPONSE:FREQ5Val`` command. + - ``.freq6val``: The ``POWer:POWer:CLRESPONSE:FREQ6Val`` command. + - ``.freq7val``: The ``POWer:POWer:CLRESPONSE:FREQ7Val`` command. + - ``.freq8val``: The ``POWer:POWer:CLRESPONSE:FREQ8Val`` command. + - ``.freq9val``: The ``POWer:POWer:CLRESPONSE:FREQ9Val`` command. + - ``.freq10val``: The ``POWer:POWer:CLRESPONSE:FREQ10Val`` command. + - ``.freq11val``: The ``POWer:POWer:CLRESPONSE:FREQ11Val`` command. + - ``.genipaddress``: The ``POWer:POWer:CLRESPONSE:GENIPADDress`` command. + - ``.generator``: The ``POWer:POWer:CLRESPONSE:GENerator`` command. + - ``.impedance``: The ``POWer:POWer:CLRESPONSE:IMPEDance`` command. + - ``.inputsource``: The ``POWer:POWer:CLRESPONSE:INPUTSOurce`` command. + - ``.mon``: The ``POWer:POWer:CLRESPONSE:MON`` command. + - ``.outputsource``: The ``POWer:POWer:CLRESPONSE:OUTPUTSOurce`` command. + - ``.ppd``: The ``POWer:POWer:CLRESPONSE:PPD`` command. + - ``.startfrequency``: The ``POWer:POWer:CLRESPONSE:STARTFREQuency`` command. + - ``.stopfrequency``: The ``POWer:POWer:CLRESPONSE:STOPFREQuency`` command. + - ``.testconnection``: The ``POWer:POWer:CLRESPONSE:TESTCONNection`` command. + """ + return self._clresponse + + @property + def cycleamp(self) -> PowerPowerItemCycleamp: + """Return the ``POWer:POWer:CYCLEAmp`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEAmp?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEAmp?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEAmp:INPUTSOurce`` command. + """ + return self._cycleamp + + @property + def cyclebase(self) -> PowerPowerItemCyclebase: + """Return the ``POWer:POWer:CYCLEBase`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEBase?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEBase?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEBase:INPUTSOurce`` command. + """ + return self._cyclebase + + @property + def cyclemax(self) -> PowerPowerItemCyclemax: + """Return the ``POWer:POWer:CYCLEMAX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEMAX?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEMAX?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEMAX:INPUTSOurce`` command. + """ + return self._cyclemax + + @property + def cyclemin(self) -> PowerPowerItemCyclemin: + """Return the ``POWer:POWer:CYCLEMin`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEMin?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEMin?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEMin:INPUTSOurce`` command. + """ + return self._cyclemin + + @property + def cyclepkpk(self) -> PowerPowerItemCyclepkpk: + """Return the ``POWer:POWer:CYCLEPKPK`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLEPKPK?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLEPKPK?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:CYCLEPKPK:INPUTSOurce`` command. + """ + return self._cyclepkpk + + @property + def cycletop(self) -> PowerPowerItemCycletop: + """Return the ``POWer:POWer:CYCLETop`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:CYCLETop?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:CYCLETop?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:CYCLETop:INPUTSOurce`` command. + """ + return self._cycletop + + @property + def didt(self) -> PowerPowerItemDidt: + """Return the ``POWer:POWer:DIDT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DIDT?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DIDT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:DIDT:INPUTSOurce`` command. + - ``.sourceedgetype``: The ``POWer:POWer:DIDT:SOURCEEDGEType`` command. + """ + return self._didt + + @property + def dvdt(self) -> PowerPowerItemDvdt: + """Return the ``POWer:POWer:DVDT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:DVDT?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:DVDT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:DVDT:INPUTSOurce`` command. + - ``.sourceedgetype``: The ``POWer:POWer:DVDT:SOURCEEDGEType`` command. + """ + return self._dvdt + + @property + def efficiency(self) -> PowerPowerItemEfficiency: + """Return the ``POWer:POWer:EFFICIENCY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:EFFICIENCY?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:EFFICIENCY?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputtype``: The ``POWer:POWer:EFFICIENCY:INPUTType`` command. + - ``.iout1source``: The ``POWer:POWer:EFFICIENCY:IOUT1SOUrce`` command. + - ``.iout2source``: The ``POWer:POWer:EFFICIENCY:IOUT2SOUrce`` command. + - ``.iout3source``: The ``POWer:POWer:EFFICIENCY:IOUT3SOUrce`` command. + - ``.isource``: The ``POWer:POWer:EFFICIENCY:ISOUrce`` command. + - ``.numofoutputs``: The ``POWer:POWer:EFFICIENCY:NUMOFOutputs`` command. + - ``.output1type``: The ``POWer:POWer:EFFICIENCY:OUTPUT1Type`` command. + - ``.output2type``: The ``POWer:POWer:EFFICIENCY:OUTPUT2Type`` command. + - ``.output3type``: The ``POWer:POWer:EFFICIENCY:OUTPUT3Type`` command. + - ``.outputtype``: The ``POWer:POWer:EFFICIENCY:OUTPUTType`` command. + - ``.vout1source``: The ``POWer:POWer:EFFICIENCY:VOUT1SOUrce`` command. + - ``.vout2source``: The ``POWer:POWer:EFFICIENCY:VOUT2SOUrce`` command. + - ``.vout3source``: The ``POWer:POWer:EFFICIENCY:VOUT3SOUrce`` command. + - ``.vsource``: The ``POWer:POWer:EFFICIENCY:VSOUrce`` command. + """ + return self._efficiency + + @property + def frequency(self) -> PowerPowerItemFrequency: + """Return the ``POWer:POWer:FREQUENCY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:FREQUENCY?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:FREQUENCY?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.edge``: The ``POWer:POWer:FREQUENCY:EDGe`` command. + - ``.inputsource``: The ``POWer:POWer:FREQUENCY:INPUTSOurce`` command. + """ + return self._frequency + + @property + def gating(self) -> PowerPowerItemGating: + """Return the ``POWer:POWer:GATing`` command. + + Description: + - This command sets or queries the gating type for the specified power measurement + number. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:GATing?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:GATing?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:GATing value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:GATing {NONE|CURSOR|SCREEN|LOGIC} + - POWer:POWer:GATing? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown on a power measurement badge in the UI. + - ``NONE`` makes measurement across the entire waveform record. + - ``CURSOR`` makes measurements on that portion of the waveform between the cursors. + Selecting Cursors opens cursors on the measurement source. Set the cursors so that the + waveform area of interest is in between the cursors. + - ``SCREEN`` takes measurements on that portion of the waveform shown in the display. + When Zoom is on, the display is the zoom window. + - ``LOGIC`` takes measurements only when the logical state of a specified waveform is + true. + + Sub-properties: + - ``.global``: The ``POWer:POWer:GATing:GLOBal`` command. + """ + return self._gating + + @property + def harmonics(self) -> PowerPowerItemHarmonics: + """Return the ``POWer:POWer:HARMONICS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:HARMONICS?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:HARMONICS?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.class``: The ``POWer:POWer:HARMONICS:CLASs`` command. + - ``.clfile``: The ``POWer:POWer:HARMONICS:CLFile`` command. + - ``.cmethod``: The ``POWer:POWer:HARMONICS:CMEThod`` command. + - ``.fundcurrent``: The ``POWer:POWer:HARMONICS:FUNDCURRent`` command. + - ``.horder``: The ``POWer:POWer:HARMONICS:HORDer`` command. + - ``.hsource``: The ``POWer:POWer:HARMONICS:HSOURce`` command. + - ``.ipower``: The ``POWer:POWer:HARMONICS:IPOWer`` command. + - ``.isource``: The ``POWer:POWer:HARMONICS:ISOURce`` command. + - ``.linefrequency``: The ``POWer:POWer:HARMONICS:LINEFREQUEncy`` command. + - ``.oddeven``: The ``POWer:POWer:HARMONICS:ODDEVen`` command. + - ``.pfactor``: The ``POWer:POWer:HARMONICS:PFACtor`` command. + - ``.powerrating``: The ``POWer:POWer:HARMONICS:POWERRating`` command. + - ``.rcurrent``: The ``POWer:POWer:HARMONICS:RCURRent`` command. + - ``.standard``: The ``POWer:POWer:HARMONICS:STANDard`` command. + - ``.startfrequency``: The ``POWer:POWer:HARMONICS:STARTFREQUEncy`` command. + - ``.units``: The ``POWer:POWer:HARMONICS:UNITs`` command. + - ``.vsource``: The ``POWer:POWer:HARMONICS:VSOURce`` command. + """ + return self._harmonics + + @property + def impedance(self) -> PowerPowerItemImpedance: + """Return the ``POWer:POWer:IMPEDANCE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IMPEDANCE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IMPEDANCE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``POWer`` is the number of the Impedance power measurement. + + Sub-properties: + - ``.ampmode``: The ``POWer:POWer:IMPEDANCE:AMPMode`` command. + - ``.amp1val``: The ``POWer:POWer:IMPEDANCE:AMP1Val`` command. + - ``.amp2val``: The ``POWer:POWer:IMPEDANCE:AMP2Val`` command. + - ``.amp3val``: The ``POWer:POWer:IMPEDANCE:AMP3Val`` command. + - ``.amp4val``: The ``POWer:POWer:IMPEDANCE:AMP4Val`` command. + - ``.amp5val``: The ``POWer:POWer:IMPEDANCE:AMP5Val`` command. + - ``.amp6val``: The ``POWer:POWer:IMPEDANCE:AMP6Val`` command. + - ``.amp7val``: The ``POWer:POWer:IMPEDANCE:AMP7Val`` command. + - ``.amp8val``: The ``POWer:POWer:IMPEDANCE:AMP8Val`` command. + - ``.amp9val``: The ``POWer:POWer:IMPEDANCE:AMP9Val`` command. + - ``.amp10val``: The ``POWer:POWer:IMPEDANCE:AMP10Val`` command. + - ``.analysismethod``: The ``POWer:POWer:IMPEDANCE:ANALYSISMethod`` command. + - ``.autorbw``: The ``POWer:POWer:IMPEDANCE:AUTORbw`` command. + - ``.connectstatus``: The ``POWer:POWer:IMPEDANCE:CONNECTSTATus`` command. + - ``.constamplitude``: The ``POWer:POWer:IMPEDANCE:CONSTAMPlitude`` command. + - ``.freq1val``: The ``POWer:POWer:IMPEDANCE:FREQ1Val`` command. + - ``.freq2val``: The ``POWer:POWer:IMPEDANCE:FREQ2Val`` command. + - ``.freq3val``: The ``POWer:POWer:IMPEDANCE:FREQ3Val`` command. + - ``.freq4val``: The ``POWer:POWer:IMPEDANCE:FREQ4Val`` command. + - ``.freq5val``: The ``POWer:POWer:IMPEDANCE:FREQ5Val`` command. + - ``.freq6val``: The ``POWer:POWer:IMPEDANCE:FREQ6Val`` command. + - ``.freq7val``: The ``POWer:POWer:IMPEDANCE:FREQ7Val`` command. + - ``.freq8val``: The ``POWer:POWer:IMPEDANCE:FREQ8Val`` command. + - ``.freq9val``: The ``POWer:POWer:IMPEDANCE:FREQ9Val`` command. + - ``.freq10val``: The ``POWer:POWer:IMPEDANCE:FREQ10Val`` command. + - ``.genipaddress``: The ``POWer:POWer:IMPEDANCE:GENIPADDress`` command. + - ``.generator``: The ``POWer:POWer:IMPEDANCE:GENerator`` command. + - ``.impedance``: The ``POWer:POWer:IMPEDANCE:IMPEDANCE`` command. + - ``.inputsource``: The ``POWer:POWer:IMPEDANCE:INPUTSOurce`` command. + - ``.outputsource``: The ``POWer:POWer:IMPEDANCE:OUTPUTSOurce`` command. + - ``.ppd``: The ``POWer:POWer:IMPEDANCE:PPD`` command. + - ``.startfrequency``: The ``POWer:POWer:IMPEDANCE:STARTFREQuency`` command. + - ``.stopfrequency``: The ``POWer:POWer:IMPEDANCE:STOPFREQuency`` command. + - ``.testconnection``: The ``POWer:POWer:IMPEDANCE:TESTCONNection`` command. + """ + return self._impedance + + @property + def inductance(self) -> PowerPowerItemInductance: + """Return the ``POWer:POWer:INDUCTANCE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INDUCTANCE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INDUCTANCE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.edgesource``: The ``POWer:POWer:INDUCTANCE:EDGESource`` command. + - ``.isource``: The ``POWer:POWer:INDUCTANCE:ISOUrce`` command. + - ``.vsource``: The ``POWer:POWer:INDUCTANCE:VSOURce`` command. + """ + return self._inductance + + @property + def inputcap(self) -> PowerPowerItemInputcap: + """Return the ``POWer:POWer:INPUTCAP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INPUTCAP?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INPUTCAP?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.isource``: The ``POWer:POWer:INPUTCAP:ISOURce`` command. + - ``.peakcurrent``: The ``POWer:POWer:INPUTCAP:PEAKCURRent`` command. + - ``.peakvoltage``: The ``POWer:POWer:INPUTCAP:PEAKVOLTage`` command. + - ``.vsource``: The ``POWer:POWer:INPUTCAP:VSOURce`` command. + """ + return self._inputcap + + @property + def inrushcurrent(self) -> PowerPowerItemInrushcurrent: + """Return the ``POWer:POWer:INRUSHcurrent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:INRUSHcurrent?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:INRUSHcurrent?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:INRUSHcurrent:INPUTSOurce`` command. + - ``.peakcurrent``: The ``POWer:POWer:INRUSHcurrent:PEAKCURRent`` command. + """ + return self._inrushcurrent + + @property + def ivsintegralv(self) -> PowerPowerItemIvsintegralv: + """Return the ``POWer:POWer:IVSINTEGRALV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:IVSINTEGRALV?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:IVSINTEGRALV?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.isource``: The ``POWer:POWer:IVSINTEGRALV:ISOURce`` command. + - ``.vsource``: The ``POWer:POWer:IVSINTEGRALV:VSOURce`` command. + """ + return self._ivsintegralv + + @property + def label(self) -> PowerPowerItemLabel: + """Return the ``POWer:POWer:LABel`` command. + + Description: + - This command sets or queries the label for the specified power measurement. As the + label can contain non 7-bit ASCII text, it is stored in Percent Encoding format. The + power measurement badge is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:LABel value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:LABel + - POWer:POWer:LABel? + ``` + """ + return self._label + + @property + def lineripple(self) -> PowerPowerItemLineripple: + """Return the ``POWer:POWer:LINERIPPLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:LINERIPPLE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:LINERIPPLE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:LINERIPPLE:INPUTSOurce`` command. + - ``.lfrequency``: The ``POWer:POWer:LINERIPPLE:LFREQuency`` command. + """ + return self._lineripple + + @property + def magneticloss(self) -> PowerPowerItemMagneticloss: + """Return the ``POWer:POWer:MAGNETICLOSS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGNETICLOSS?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGNETICLOSS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.isource``: The ``POWer:POWer:MAGNETICLOSS:ISOURce`` command. + - ``.vsource``: The ``POWer:POWer:MAGNETICLOSS:VSOURce`` command. + """ + return self._magneticloss + + @property + def magproperty(self) -> PowerPowerItemMagproperty: + """Return the ``POWer:POWer:MAGPROPERTY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:MAGPROPERTY?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:MAGPROPERTY?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.areaofcrosssection``: The ``POWer:POWer:MAGPROPERTY:AREAofcrosssection`` + command. + - ``.edgesource``: The ``POWer:POWer:MAGPROPERTY:EDGESOURce`` command. + - ``.isource``: The ``POWer:POWer:MAGPROPERTY:ISOURce`` command. + - ``.length``: The ``POWer:POWer:MAGPROPERTY:LENgth`` command. + - ``.primaryturns``: The ``POWer:POWer:MAGPROPERTY:PRIMARYTURNs`` command. + - ``.sec1source``: The ``POWer:POWer:MAGPROPERTY:SEC1SOURce`` command. + - ``.sec1turns``: The ``POWer:POWer:MAGPROPERTY:SEC1TURNs`` command. + - ``.sec2source``: The ``POWer:POWer:MAGPROPERTY:SEC2SOURce`` command. + - ``.sec2turns``: The ``POWer:POWer:MAGPROPERTY:SEC2TURNs`` command. + - ``.sec3source``: The ``POWer:POWer:MAGPROPERTY:SEC3SOURce`` command. + - ``.sec3turns``: The ``POWer:POWer:MAGPROPERTY:SEC3TURNs`` command. + - ``.sec4source``: The ``POWer:POWer:MAGPROPERTY:SEC4SOURce`` command. + - ``.sec4turns``: The ``POWer:POWer:MAGPROPERTY:SEC4TURNs`` command. + - ``.sec5source``: The ``POWer:POWer:MAGPROPERTY:SEC5SOURce`` command. + - ``.sec5turns``: The ``POWer:POWer:MAGPROPERTY:SEC5TURNs`` command. + - ``.sec6source``: The ``POWer:POWer:MAGPROPERTY:SEC6SOURce`` command. + - ``.sec6turns``: The ``POWer:POWer:MAGPROPERTY:SEC6TURNs`` command. + - ``.secphase``: The ``POWer:POWer:MAGPROPERTY:SECPhase`` command. + - ``.secvolt``: The ``POWer:POWer:MAGPROPERTY:SECVolt`` command. + - ``.secwindings``: The ``POWer:POWer:MAGPROPERTY:SECWINDings`` command. + - ``.units``: The ``POWer:POWer:MAGPROPERTY:UNITs`` command. + - ``.vsource``: The ``POWer:POWer:MAGPROPERTY:VSOURce`` command. + """ + return self._magproperty + + @property + def ndutycycle(self) -> PowerPowerItemNdutycycle: + """Return the ``POWer:POWer:NDUTYCYCLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:NDUTYCYCLE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:NDUTYCYCLE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.edgetype``: The ``POWer:POWer:NDUTYCYCLE:EDGEType`` command. + - ``.inputsource``: The ``POWer:POWer:NDUTYCYCLE:INPUTSOurce`` command. + """ + return self._ndutycycle + + @property + def npulsewidth(self) -> PowerPowerItemNpulsewidth: + """Return the ``POWer:POWer:NPULSEWIDTH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:NPULSEWIDTH?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:NPULSEWIDTH?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:NPULSEWIDTH:INPUTSOurce`` command. + """ + return self._npulsewidth + + @property + def pdutycycle(self) -> PowerPowerItemPdutycycle: + """Return the ``POWer:POWer:PDUTYCYCLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PDUTYCYCLE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PDUTYCYCLE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.edgetype``: The ``POWer:POWer:PDUTYCYCLE:EDGEType`` command. + - ``.inputsource``: The ``POWer:POWer:PDUTYCYCLE:INPUTSOurce`` command. + """ + return self._pdutycycle + + @property + def period(self) -> PowerPowerItemPeriod: + """Return the ``POWer:POWer:PERIOD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PERIOD?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PERIOD?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.edge``: The ``POWer:POWer:PERIOD:EDGe`` command. + - ``.inputsource``: The ``POWer:POWer:PERIOD:INPUTSOurce`` command. + """ + return self._period + + @property + def powerquality(self) -> PowerPowerItemPowerquality: + """Return the ``POWer:POWer:POWERQUALITY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:POWERQUALITY?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:POWERQUALITY?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ccycles``: The ``POWer:POWer:POWERQUALITY:CCYCles`` command. + - ``.freference``: The ``POWer:POWer:POWERQUALITY:FREFerence`` command. + - ``.isource``: The ``POWer:POWer:POWERQUALITY:ISOURce`` command. + - ``.stype``: The ``POWer:POWer:POWERQUALITY:STYPe`` command. + - ``.vsource``: The ``POWer:POWer:POWERQUALITY:VSOURce`` command. + """ + return self._powerquality + + @property + def ppulsewidth(self) -> PowerPowerItemPpulsewidth: + """Return the ``POWer:POWer:PPULSEWIDTH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PPULSEWIDTH?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PPULSEWIDTH?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:PPULSEWIDTH:INPUTSOurce`` command. + """ + return self._ppulsewidth + + @property + def preset(self) -> PowerPowerItemPreset: + """Return the ``POWer:POWer:PRESET`` command. + + Description: + - This command runs a power preset action for the specified power measurement number. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:POWer:PRESET value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:PRESET {EXECute} + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ``EXECute`` runs the power preset action. + """ + return self._preset + + @property + def psrr(self) -> PowerPowerItemPsrr: + """Return the ``POWer:POWer:PSRR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:PSRR?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:PSRR?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ampmode``: The ``POWer:POWer:PSRR:AMPMode`` command. + - ``.amp1val``: The ``POWer:POWer:PSRR:AMP1Val`` command. + - ``.amp2val``: The ``POWer:POWer:PSRR:AMP2Val`` command. + - ``.amp3val``: The ``POWer:POWer:PSRR:AMP3Val`` command. + - ``.amp4val``: The ``POWer:POWer:PSRR:AMP4Val`` command. + - ``.amp5val``: The ``POWer:POWer:PSRR:AMP5Val`` command. + - ``.amp6val``: The ``POWer:POWer:PSRR:AMP6Val`` command. + - ``.amp7val``: The ``POWer:POWer:PSRR:AMP7Val`` command. + - ``.amp8val``: The ``POWer:POWer:PSRR:AMP8Val`` command. + - ``.amp9val``: The ``POWer:POWer:PSRR:AMP9Val`` command. + - ``.amp10val``: The ``POWer:POWer:PSRR:AMP10Val`` command. + - ``.analysismethod``: The ``POWer:POWer:PSRR:ANALYSISMethod`` command. + - ``.autorbw``: The ``POWer:POWer:PSRR:AUTORbw`` command. + - ``.connectstatus``: The ``POWer:POWer:PSRR:CONNECTSTATus`` command. + - ``.constamplitude``: The ``POWer:POWer:PSRR:CONSTAMPlitude`` command. + - ``.freq1val``: The ``POWer:POWer:PSRR:FREQ1Val`` command. + - ``.freq2val``: The ``POWer:POWer:PSRR:FREQ2Val`` command. + - ``.freq3val``: The ``POWer:POWer:PSRR:FREQ3Val`` command. + - ``.freq4val``: The ``POWer:POWer:PSRR:FREQ4Val`` command. + - ``.freq5val``: The ``POWer:POWer:PSRR:FREQ5Val`` command. + - ``.freq6val``: The ``POWer:POWer:PSRR:FREQ6Val`` command. + - ``.freq7val``: The ``POWer:POWer:PSRR:FREQ7Val`` command. + - ``.freq8val``: The ``POWer:POWer:PSRR:FREQ8Val`` command. + - ``.freq9val``: The ``POWer:POWer:PSRR:FREQ9Val`` command. + - ``.freq10val``: The ``POWer:POWer:PSRR:FREQ10Val`` command. + - ``.freq11val``: The ``POWer:POWer:PSRR:FREQ11Val`` command. + - ``.genipaddress``: The ``POWer:POWer:PSRR:GENIPADDress`` command. + - ``.generator``: The ``POWer:POWer:PSRR:GENerator`` command. + - ``.impedance``: The ``POWer:POWer:PSRR:IMPEDance`` command. + - ``.inputsource``: The ``POWer:POWer:PSRR:INPUTSOurce`` command. + - ``.outputsource``: The ``POWer:POWer:PSRR:OUTPUTSOurce`` command. + - ``.ppd``: The ``POWer:POWer:PSRR:PPD`` command. + - ``.startfrequency``: The ``POWer:POWer:PSRR:STARTFREQuency`` command. + - ``.stopfrequency``: The ``POWer:POWer:PSRR:STOPFREQuency`` command. + - ``.testconnection``: The ``POWer:POWer:PSRR:TESTCONNection`` command. + """ + return self._psrr + + @property + def rdson(self) -> PowerPowerItemRdson: + """Return the ``POWer:POWer:RDSON`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RDSON?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RDSON?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.devicetype``: The ``POWer:POWer:RDSON:DEVICEType`` command. + - ``.isource``: The ``POWer:POWer:RDSON:ISOURce`` command. + - ``.vsource``: The ``POWer:POWer:RDSON:VSOURce`` command. + """ + return self._rdson + + @property + def reflevels(self) -> PowerPowerItemReflevels: + """Return the ``POWer:POWer:REFLevels`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:REFLevels?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:REFLevels?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.absolute``: The ``POWer:POWer:REFLevels:ABSolute`` command tree. + - ``.basetop``: The ``POWer:POWer:REFLevels:BASETop`` command. + - ``.method``: The ``POWer:POWer:REFLevels:METHod`` command. + - ``.percent``: The ``POWer:POWer:REFLevels:PERCent`` command tree. + """ + return self._reflevels + + @property + def results(self) -> PowerPowerItemResults: + """Return the ``POWer:POWer:RESUlts`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:RESUlts?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:RESUlts?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.allacqs``: The ``POWer:POWer:RESUlts:ALLAcqs`` command tree. + - ``.currentacq``: The ``POWer:POWer:RESUlts:CURRentacq`` command tree. + """ + return self._results + + @property + def seqsetup(self) -> PowerPowerItemSeqsetup: + """Return the ``POWer:POWer:SEQSETup`` command. + + Description: + - This command sets up the instrument's horizontal, vertical, and trigger parameters to + optimize for taking the specified power measurement. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:POWer:SEQSETup value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SEQSETup Execute + ``` + + Info: + - ``POWer`` is the Power measurement identifier number. The number must be for a + power measurement that requires a single sequence acquisition. + - ``Execute`` sets the measurement to run an acquisition and acquire data for the + specified single sequence power measurement. + """ + return self._seqsetup + + @property + def sequence(self) -> PowerPowerItemSequence: + """Return the ``POWer:POWer:SEQuence`` command. + + Description: + - This command sets or queries the run state of a single sequence power measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SEQuence?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SEQuence?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:SEQuence value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:SEQuence {RUN|RERUN} + - POWer:POWer:SEQuence? + ``` + + Info: + - ``POWer`` is the Power measurement identifier number. The number must be for a + power measurement that requires a single sequence acquisition. + - ``RUN`` sets the measurement to run an acquisition and acquire data for the specified + single sequence power measurement. + - ``RERUN`` sets the measurement to rerun an acquisition and acquire data for the + specified single sequence power measurement. + """ + return self._sequence + + @property + def soa(self) -> PowerPowerItemSoa: + """Return the ``POWer:POWer:SOA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SOA?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SOA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.isource``: The ``POWer:POWer:SOA:ISOURce`` command. + - ``.point``: The ``POWer:POWer:SOA:POINT`` command. + - ``.recallmask``: The ``POWer:POWer:SOA:RECAllmask`` command. + - ``.savemask``: The ``POWer:POWer:SOA:SAVemask`` command. + - ``.vsource``: The ``POWer:POWer:SOA:VSOURce`` command. + """ + return self._soa + + @property + def switchingloss(self) -> PowerPowerItemSwitchingloss: + """Return the ``POWer:POWer:SWITCHINGLOSS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGLOSS?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SWITCHINGLOSS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.devicetype``: The ``POWer:POWer:SWITCHINGLOSS:DEVICEType`` command. + - ``.gatesource``: The ``POWer:POWer:SWITCHINGLOSS:GATESOurce`` command. + - ``.ilevelabs``: The ``POWer:POWer:SWITCHINGLOSS:ILEVELAbs`` command. + - ``.ilevelpct``: The ``POWer:POWer:SWITCHINGLOSS:ILEVELPct`` command. + - ``.isource``: The ``POWer:POWer:SWITCHINGLOSS:ISOURce`` command. + - ``.levelunits``: The ``POWer:POWer:SWITCHINGLOSS:LEVELUNIts`` command. + - ``.rdson``: The ``POWer:POWer:SWITCHINGLOSS:RDSOn`` command. + - ``.swlconfigtype``: The ``POWer:POWer:SWITCHINGLOSS:SWLCONFIGType`` command. + - ``.vcesat``: The ``POWer:POWer:SWITCHINGLOSS:VCESat`` command. + - ``.vglevel``: The ``POWer:POWer:SWITCHINGLOSS:VGLevel`` command. + - ``.vlevelabs``: The ``POWer:POWer:SWITCHINGLOSS:VLEVELAbs`` command. + - ``.vlevelpct``: The ``POWer:POWer:SWITCHINGLOSS:VLEVELPct`` command. + - ``.vsource``: The ``POWer:POWer:SWITCHINGLOSS:VSOURce`` command. + """ + return self._switchingloss + + @property + def switchingripple(self) -> PowerPowerItemSwitchingripple: + """Return the ``POWer:POWer:SWITCHINGRIPPLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:SWITCHINGRIPPLE?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:SWITCHINGRIPPLE?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.inputsource``: The ``POWer:POWer:SWITCHINGRIPPLE:INPUTSOurce`` command. + - ``.lfrequency``: The ``POWer:POWer:SWITCHINGRIPPLE:LFREQuency`` command. + """ + return self._switchingripple + + @property + def turnofftime(self) -> PowerPowerItemTurnofftime: + """Return the ``POWer:POWer:TURNOFFtime`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNOFFtime?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNOFFtime?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.frequency``: The ``POWer:POWer:TURNOFFtime:FREQuency`` command. + - ``.inputlevel``: The ``POWer:POWer:TURNOFFtime:INPUTLEVel`` command. + - ``.inputsource``: The ``POWer:POWer:TURNOFFtime:INPUTSOurce`` command. + - ``.maxtime``: The ``POWer:POWer:TURNOFFtime:MAXTIMe`` command. + - ``.maxvoltage``: The ``POWer:POWer:TURNOFFtime:MAXVoltage`` command. + - ``.numoutputs``: The ``POWer:POWer:TURNOFFtime:NUMOUTputs`` command. + - ``.output1source``: The ``POWer:POWer:TURNOFFtime:OUTPUT1SOURce`` command. + - ``.output1voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT1VOLTage`` command. + - ``.output2source``: The ``POWer:POWer:TURNOFFtime:OUTPUT2SOURce`` command. + - ``.output2voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT2VOLTage`` command. + - ``.output3source``: The ``POWer:POWer:TURNOFFtime:OUTPUT3SOURce`` command. + - ``.output3voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT3VOLTage`` command. + - ``.output4source``: The ``POWer:POWer:TURNOFFtime:OUTPUT4SOURce`` command. + - ``.output4voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT4VOLTage`` command. + - ``.output5source``: The ``POWer:POWer:TURNOFFtime:OUTPUT5SOURce`` command. + - ``.output5voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT5VOLTage`` command. + - ``.output6source``: The ``POWer:POWer:TURNOFFtime:OUTPUT6SOURce`` command. + - ``.output6voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT6VOLTage`` command. + - ``.output7source``: The ``POWer:POWer:TURNOFFtime:OUTPUT7SOURce`` command. + - ``.output7voltage``: The ``POWer:POWer:TURNOFFtime:OUTPUT7VOLTage`` command. + - ``.type``: The ``POWer:POWer:TURNOFFtime:TYPE`` command. + """ + return self._turnofftime + + @property + def turnontime(self) -> PowerPowerItemTurnontime: + """Return the ``POWer:POWer:TURNONtime`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TURNONtime?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TURNONtime?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.frequency``: The ``POWer:POWer:TURNONtime:FREQuency`` command. + - ``.inputlevel``: The ``POWer:POWer:TURNONtime:INPUTLEVel`` command. + - ``.inputsource``: The ``POWer:POWer:TURNONtime:INPUTSOurce`` command. + - ``.maxtime``: The ``POWer:POWer:TURNONtime:MAXTIMe`` command. + - ``.maxvoltage``: The ``POWer:POWer:TURNONtime:MAXVoltage`` command. + - ``.numoutputs``: The ``POWer:POWer:TURNONtime:NUMOUTputs`` command. + - ``.output1source``: The ``POWer:POWer:TURNONtime:OUTPUT1SOURce`` command. + - ``.output1voltage``: The ``POWer:POWer:TURNONtime:OUTPUT1VOLTage`` command. + - ``.output2source``: The ``POWer:POWer:TURNONtime:OUTPUT2SOURce`` command. + - ``.output2voltage``: The ``POWer:POWer:TURNONtime:OUTPUT2VOLTage`` command. + - ``.output3source``: The ``POWer:POWer:TURNONtime:OUTPUT3SOURce`` command. + - ``.output3voltage``: The ``POWer:POWer:TURNONtime:OUTPUT3VOLTage`` command. + - ``.output4source``: The ``POWer:POWer:TURNONtime:OUTPUT4SOURce`` command. + - ``.output4voltage``: The ``POWer:POWer:TURNONtime:OUTPUT4VOLTage`` command. + - ``.output5source``: The ``POWer:POWer:TURNONtime:OUTPUT5SOURce`` command. + - ``.output5voltage``: The ``POWer:POWer:TURNONtime:OUTPUT5VOLTage`` command. + - ``.output6source``: The ``POWer:POWer:TURNONtime:OUTPUT6SOURce`` command. + - ``.output6voltage``: The ``POWer:POWer:TURNONtime:OUTPUT6VOLTage`` command. + - ``.output7source``: The ``POWer:POWer:TURNONtime:OUTPUT7SOURce`` command. + - ``.output7voltage``: The ``POWer:POWer:TURNONtime:OUTPUT7VOLTage`` command. + - ``.type``: The ``POWer:POWer:TURNONtime:TYPE`` command. + """ + return self._turnontime + + @property + def type(self) -> PowerPowerItemType: + r"""Return the ``POWer:POWer:TYPe`` command. + + Description: + - This command sets or queries the measurement type of the specified power measurement + number. If the measurement number does not exist, this command creates a new power + measurement, assigns the specified measurement number to the new measurement, and then + assigns the measurement type to the new measurement. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``POWer:POWer:TYPe value`` + command. + + SCPI Syntax: + ``` + - POWer:POWer:TYPe + - POWer:POWer:TYPe? + ``` + + Info: + - ``Power`` is the power measurement number. This is the equivalent of the number + shown in the UI for a power measurement badge. + - ```` = CYCLEAmp \| CYCLEBase \| CYCLEMAx \| CYCLEMIn \| CYCLEPKpk \| + CYCLETop \| DIDT \| DVDT \| EFFICIENCY \| FREQuency \| HARMonics \|IMPEDANCE\| + INDUCTANCE \| INPUTCAP \| INRUSHcurrent\| \| IVSINTEGRALV \| LINERIpple \| + MAGNETICLOSS \| MAGPROPERTY \| NDUTYCycle \| NPULSEWidth \| PDUTYCycle \| PERIod \| + POWERQUALity \| PPULSEWidth \| RDSON \| SOA \| SWITCHINGLOss \| SWITCHINGRIpple \| + TURNOFFtime \| TURNONtime\| CLRESPONSE \| PSRR. + """ + return self._type + + +class PowerDelete(SCPICmdWrite): + """The ``POWer:DELete`` command. + + Description: + - This command deletes the specified power measurement number. The power measurement number + is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:DELete value`` command. + + SCPI Syntax: + ``` + - POWer:DELete 'POWER' + ``` + """ + + +class PowerAddnew(SCPICmdWrite): + """The ``POWer:ADDNew`` command. + + Description: + - This command adds the specified power measurement number. The power measurement number is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:ADDNew value`` command. + + SCPI Syntax: + ``` + - POWer:ADDNew 'POWER' + ``` + """ + + +class Power(SCPICmdRead): + """The ``POWer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer?`` query. + - Using the ``.verify(value)`` method will send the ``POWer?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.addnew``: The ``POWer:ADDNew`` command. + - ``.delete``: The ``POWer:DELete`` command. + - ``.power``: The ``POWer:POWer`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "POWer") -> None: + super().__init__(device, cmd_syntax) + self._addnew = PowerAddnew(device, f"{self._cmd_syntax}:ADDNew") + self._delete = PowerDelete(device, f"{self._cmd_syntax}:DELete") + self._power: Dict[int, PowerPowerItem] = DefaultDictPassKeyToFactory( + lambda x: PowerPowerItem(device, f"{self._cmd_syntax}:POWer{x}") + ) + + @property + def addnew(self) -> PowerAddnew: + """Return the ``POWer:ADDNew`` command. + + Description: + - This command adds the specified power measurement number. The power measurement number + is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:ADDNew value`` command. + + SCPI Syntax: + ``` + - POWer:ADDNew 'POWER' + ``` + """ + return self._addnew + + @property + def delete(self) -> PowerDelete: + """Return the ``POWer:DELete`` command. + + Description: + - This command deletes the specified power measurement number. The power measurement + number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``POWer:DELete value`` command. + + SCPI Syntax: + ``` + - POWer:DELete 'POWER' + ``` + """ + return self._delete + + @property + def power(self) -> Dict[int, PowerPowerItem]: + """Return the ``POWer:POWer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer:POWer?`` query. + - Using the ``.verify(value)`` method will send the ``POWer:POWer?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.autoset``: The ``POWer:POWer:AUTOSet`` command. + - ``.clresponse``: The ``POWer:POWer:CLRESPONSE`` command tree. + - ``.cycleamp``: The ``POWer:POWer:CYCLEAmp`` command tree. + - ``.cyclebase``: The ``POWer:POWer:CYCLEBase`` command tree. + - ``.cyclemax``: The ``POWer:POWer:CYCLEMAX`` command tree. + - ``.cyclemin``: The ``POWer:POWer:CYCLEMin`` command tree. + - ``.cyclepkpk``: The ``POWer:POWer:CYCLEPKPK`` command tree. + - ``.cycletop``: The ``POWer:POWer:CYCLETop`` command tree. + - ``.didt``: The ``POWer:POWer:DIDT`` command tree. + - ``.dvdt``: The ``POWer:POWer:DVDT`` command tree. + - ``.efficiency``: The ``POWer:POWer:EFFICIENCY`` command tree. + - ``.frequency``: The ``POWer:POWer:FREQUENCY`` command tree. + - ``.gating``: The ``POWer:POWer:GATing`` command. + - ``.harmonics``: The ``POWer:POWer:HARMONICS`` command tree. + - ``.impedance``: The ``POWer:POWer:IMPEDANCE`` command tree. + - ``.inductance``: The ``POWer:POWer:INDUCTANCE`` command tree. + - ``.inputcap``: The ``POWer:POWer:INPUTCAP`` command tree. + - ``.inrushcurrent``: The ``POWer:POWer:INRUSHcurrent`` command tree. + - ``.ivsintegralv``: The ``POWer:POWer:IVSINTEGRALV`` command tree. + - ``.label``: The ``POWer:POWer:LABel`` command. + - ``.lineripple``: The ``POWer:POWer:LINERIPPLE`` command tree. + - ``.magneticloss``: The ``POWer:POWer:MAGNETICLOSS`` command tree. + - ``.magproperty``: The ``POWer:POWer:MAGPROPERTY`` command tree. + - ``.ndutycycle``: The ``POWer:POWer:NDUTYCYCLE`` command tree. + - ``.npulsewidth``: The ``POWer:POWer:NPULSEWIDTH`` command tree. + - ``.pdutycycle``: The ``POWer:POWer:PDUTYCYCLE`` command tree. + - ``.period``: The ``POWer:POWer:PERIOD`` command tree. + - ``.powerquality``: The ``POWer:POWer:POWERQUALITY`` command tree. + - ``.ppulsewidth``: The ``POWer:POWer:PPULSEWIDTH`` command tree. + - ``.preset``: The ``POWer:POWer:PRESET`` command. + - ``.psrr``: The ``POWer:POWer:PSRR`` command tree. + - ``.rdson``: The ``POWer:POWer:RDSON`` command tree. + - ``.reflevels``: The ``POWer:POWer:REFLevels`` command tree. + - ``.results``: The ``POWer:POWer:RESUlts`` command tree. + - ``.seqsetup``: The ``POWer:POWer:SEQSETup`` command. + - ``.sequence``: The ``POWer:POWer:SEQuence`` command. + - ``.soa``: The ``POWer:POWer:SOA`` command tree. + - ``.switchingloss``: The ``POWer:POWer:SWITCHINGLOSS`` command tree. + - ``.switchingripple``: The ``POWer:POWer:SWITCHINGRIPPLE`` command tree. + - ``.turnofftime``: The ``POWer:POWer:TURNOFFtime`` command tree. + - ``.turnontime``: The ``POWer:POWer:TURNONtime`` command tree. + - ``.type``: The ``POWer:POWer:TYPe`` command. + """ + return self._power diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/ref.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/ref.py new file mode 100644 index 00000000..67be9bea --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/ref.py @@ -0,0 +1,831 @@ +"""The ref commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - REF:ADDNew + - REF:DELete + - REF:LIST? + - REF:REF:DESKew + - REF:REF:LABel:COLor + - REF:REF:LABel:FONT:BOLD {ON|OFF|} + - REF:REF:LABel:FONT:ITALic {ON|OFF|} + - REF:REF:LABel:FONT:SIZE + - REF:REF:LABel:FONT:TYPE + - REF:REF:LABel:FONT:UNDERline {ON|OFF|} + - REF:REF:LABel:NAMe + - REF:REF:LABel:NAMe? + - REF:REF:LABel:XPOS + - REF:REF:LABel:XPOS? + - REF:REF:LABel:YPOS + - REF:REF:LABel:YPOS? + - REF:REF:SOUrce + - REF:REF:SOUrce? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class RefRefItemSource(SCPICmdWrite, SCPICmdRead): + """The ``REF:REF:SOUrce`` command. + + Description: + - This command sets or queries the filename used by the given reference. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:SOUrce?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF:REF:SOUrce value`` command. + + SCPI Syntax: + ``` + - REF:REF:SOUrce + - REF:REF:SOUrce? + ``` + + Info: + - ```` is the reference file name. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefRefItemLabelYpos(SCPICmdWrite, SCPICmdRead): + """The ``REF:REF:LABel:YPOS`` command. + + Description: + - This command sets or queries the Y-position of the label (attached to the displayed + waveform of the specified reference), relative to the baseline of the waveform. The + reference waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel:YPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:YPOS value`` command. + + SCPI Syntax: + ``` + - REF:REF:LABel:YPOS + - REF:REF:LABel:YPOS? + ``` + + Info: + - ```` is the location where the waveform label for the selected reference is + displayed, relative to the baseline of the waveform. + """ + + +class RefRefItemLabelXpos(SCPICmdWrite, SCPICmdRead): + """The ``REF:REF:LABel:XPOS`` command. + + Description: + - This command sets or queries the X-position at which the label (attached to the displayed + waveform of the specified reference) is displayed, relative to the left edge of the + waveview. The reference waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel:XPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:XPOS value`` command. + + SCPI Syntax: + ``` + - REF:REF:LABel:XPOS + - REF:REF:LABel:XPOS? + ``` + + Info: + - ```` is the location (control in divisions) where the waveform label for the selected + reference is displayed, relative to the left edge of the screen. + """ + + +class RefRefItemLabelName(SCPICmdWrite, SCPICmdRead): + """The ``REF:REF:LABel:NAMe`` command. + + Description: + - This command sets or queries the label of the specified reference. The reference waveform + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:NAMe value`` command. + + SCPI Syntax: + ``` + - REF:REF:LABel:NAMe + - REF:REF:LABel:NAMe? + ``` + + Info: + - ```` is the character string that will be used for the reference waveform label + name. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefRefItemLabelFontUnderline(SCPICmdWrite): + """The ``REF:REF:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified reference label. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:FONT:UNDERline value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:UNDERline {ON|OFF|} + ``` + + Info: + - ```` = 0 disables underline font; any other value turns this feature on. + - ``OFF`` disables underline font. + - ``ON`` enables underline font. + """ + + +class RefRefItemLabelFontType(SCPICmdWrite): + """The ``REF:REF:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified reference label, such as Arial + or Times New Roman. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:TYPE + ``` + + Info: + - ```` is the font type. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefRefItemLabelFontSize(SCPICmdWrite): + """The ``REF:REF:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified reference label. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:SIZE + ``` + + Info: + - ```` is the font size of the label. + """ + + +class RefRefItemLabelFontItalic(SCPICmdWrite): + """The ``REF:REF:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified reference label. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:ITALic {ON|OFF|} + ``` + + Info: + - ```` = 0 disables italic font; any other value turns this feature on. + - ``OFF`` disables italic font. + - ``ON`` enables italic font. + """ + + +class RefRefItemLabelFontBold(SCPICmdWrite): + """The ``REF:REF:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified reference label. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:BOLD {ON|OFF|} + ``` + + Info: + - ```` = 0 disables bold font; any other value turns this feature on. + - ``OFF`` disables bold font. + - ``ON`` enables bold font. + """ + + +class RefRefItemLabelFont(SCPICmdRead): + """The ``REF:REF:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bold``: The ``REF:REF:LABel:FONT:BOLD`` command. + - ``.italic``: The ``REF:REF:LABel:FONT:ITALic`` command. + - ``.size``: The ``REF:REF:LABel:FONT:SIZE`` command. + - ``.type``: The ``REF:REF:LABel:FONT:TYPE`` command. + - ``.underline``: The ``REF:REF:LABel:FONT:UNDERline`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = RefRefItemLabelFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = RefRefItemLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") + self._size = RefRefItemLabelFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = RefRefItemLabelFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = RefRefItemLabelFontUnderline(device, f"{self._cmd_syntax}:UNDERline") + + @property + def bold(self) -> RefRefItemLabelFontBold: + """Return the ``REF:REF:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified reference label. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:BOLD {ON|OFF|} + ``` + + Info: + - ```` = 0 disables bold font; any other value turns this feature on. + - ``OFF`` disables bold font. + - ``ON`` enables bold font. + """ + return self._bold + + @property + def italic(self) -> RefRefItemLabelFontItalic: + """Return the ``REF:REF:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified reference label. + + Usage: + - Using the ``.write(value)`` method will send the + ``REF:REF:LABel:FONT:ITALic value`` command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:ITALic {ON|OFF|} + ``` + + Info: + - ```` = 0 disables italic font; any other value turns this feature on. + - ``OFF`` disables italic font. + - ``ON`` enables italic font. + """ + return self._italic + + @property + def size(self) -> RefRefItemLabelFontSize: + """Return the ``REF:REF:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified reference label. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:SIZE + ``` + + Info: + - ```` is the font size of the label. + """ + return self._size + + @property + def type(self) -> RefRefItemLabelFontType: + """Return the ``REF:REF:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified reference label, such as + Arial or Times New Roman. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:TYPE + ``` + + Info: + - ```` is the font type. + """ + return self._type + + @property + def underline(self) -> RefRefItemLabelFontUnderline: + """Return the ``REF:REF:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified reference label. + + Usage: + - Using the ``.write(value)`` method will send the + ``REF:REF:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - REF:REF:LABel:FONT:UNDERline {ON|OFF|} + ``` + + Info: + - ```` = 0 disables underline font; any other value turns this feature on. + - ``OFF`` disables underline font. + - ``ON`` enables underline font. + """ + return self._underline + + +class RefRefItemLabelColor(SCPICmdWrite): + """The ``REF:REF:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified ref label. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:COLor value`` command. + + SCPI Syntax: + ``` + - REF:REF:LABel:COLor + ``` + + Info: + - ```` is the label. To return the color to the default color, send an empty string + as in this example: ``:REF:REF1:LABEL:COLOR`` ''. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefRefItemLabel(SCPICmdRead): + """The ``REF:REF:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.color``: The ``REF:REF:LABel:COLor`` command. + - ``.font``: The ``REF:REF:LABel:FONT`` command tree. + - ``.name``: The ``REF:REF:LABel:NAMe`` command. + - ``.xpos``: The ``REF:REF:LABel:XPOS`` command. + - ``.ypos``: The ``REF:REF:LABel:YPOS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._color = RefRefItemLabelColor(device, f"{self._cmd_syntax}:COLor") + self._font = RefRefItemLabelFont(device, f"{self._cmd_syntax}:FONT") + self._name = RefRefItemLabelName(device, f"{self._cmd_syntax}:NAMe") + self._xpos = RefRefItemLabelXpos(device, f"{self._cmd_syntax}:XPOS") + self._ypos = RefRefItemLabelYpos(device, f"{self._cmd_syntax}:YPOS") + + @property + def color(self) -> RefRefItemLabelColor: + """Return the ``REF:REF:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified ref label. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:COLor + ``` + + Info: + - ```` is the label. To return the color to the default color, send an empty + string as in this example: ``:REF:REF1:LABEL:COLOR`` ''. + """ + return self._color + + @property + def font(self) -> RefRefItemLabelFont: + """Return the ``REF:REF:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bold``: The ``REF:REF:LABel:FONT:BOLD`` command. + - ``.italic``: The ``REF:REF:LABel:FONT:ITALic`` command. + - ``.size``: The ``REF:REF:LABel:FONT:SIZE`` command. + - ``.type``: The ``REF:REF:LABel:FONT:TYPE`` command. + - ``.underline``: The ``REF:REF:LABel:FONT:UNDERline`` command. + """ + return self._font + + @property + def name(self) -> RefRefItemLabelName: + """Return the ``REF:REF:LABel:NAMe`` command. + + Description: + - This command sets or queries the label of the specified reference. The reference + waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:NAMe + - REF:REF:LABel:NAMe? + ``` + + Info: + - ```` is the character string that will be used for the reference waveform + label name. + """ + return self._name + + @property + def xpos(self) -> RefRefItemLabelXpos: + """Return the ``REF:REF:LABel:XPOS`` command. + + Description: + - This command sets or queries the X-position at which the label (attached to the + displayed waveform of the specified reference) is displayed, relative to the left edge + of the waveview. The reference waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel:XPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:XPOS value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:XPOS + - REF:REF:LABel:XPOS? + ``` + + Info: + - ```` is the location (control in divisions) where the waveform label for the + selected reference is displayed, relative to the left edge of the screen. + """ + return self._xpos + + @property + def ypos(self) -> RefRefItemLabelYpos: + """Return the ``REF:REF:LABel:YPOS`` command. + + Description: + - This command sets or queries the Y-position of the label (attached to the displayed + waveform of the specified reference), relative to the baseline of the waveform. The + reference waveform is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel:YPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF:REF:LABel:YPOS value`` + command. + + SCPI Syntax: + ``` + - REF:REF:LABel:YPOS + - REF:REF:LABel:YPOS? + ``` + + Info: + - ```` is the location where the waveform label for the selected reference is + displayed, relative to the baseline of the waveform. + """ + return self._ypos + + +class RefRefItemDeskew(SCPICmdWrite): + """The ``REF:REF:DESKew`` command. + + Description: + - This command sets or queries the deskew value used for the specified reference. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:DESKew value`` command. + + SCPI Syntax: + ``` + - REF:REF:DESKew + ``` + + Info: + - ```` is the deskew value used for the specified reference. + """ + + +class RefRefItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``REF:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.deskew``: The ``REF:REF:DESKew`` command. + - ``.label``: The ``REF:REF:LABel`` command tree. + - ``.source``: The ``REF:REF:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._deskew = RefRefItemDeskew(device, f"{self._cmd_syntax}:DESKew") + self._label = RefRefItemLabel(device, f"{self._cmd_syntax}:LABel") + self._source = RefRefItemSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def deskew(self) -> RefRefItemDeskew: + """Return the ``REF:REF:DESKew`` command. + + Description: + - This command sets or queries the deskew value used for the specified reference. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:REF:DESKew value`` command. + + SCPI Syntax: + ``` + - REF:REF:DESKew + ``` + + Info: + - ```` is the deskew value used for the specified reference. + """ + return self._deskew + + @property + def label(self) -> RefRefItemLabel: + """Return the ``REF:REF:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.color``: The ``REF:REF:LABel:COLor`` command. + - ``.font``: The ``REF:REF:LABel:FONT`` command tree. + - ``.name``: The ``REF:REF:LABel:NAMe`` command. + - ``.xpos``: The ``REF:REF:LABel:XPOS`` command. + - ``.ypos``: The ``REF:REF:LABel:YPOS`` command. + """ + return self._label + + @property + def source(self) -> RefRefItemSource: + """Return the ``REF:REF:SOUrce`` command. + + Description: + - This command sets or queries the filename used by the given reference. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF:REF:SOUrce value`` command. + + SCPI Syntax: + ``` + - REF:REF:SOUrce + - REF:REF:SOUrce? + ``` + + Info: + - ```` is the reference file name. + """ + return self._source + + +class RefList(SCPICmdRead): + """The ``REF:LIST`` command. + + Description: + - This command returns a comma separated list of all currently defined references. + + Usage: + - Using the ``.query()`` method will send the ``REF:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``REF:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REF:LIST? + ``` + """ + + +class RefDelete(SCPICmdWrite): + """The ``REF:DELete`` command. + + Description: + - Deletes the specified reference. Argument is of the form 'REF', where NR1 ≥ 1. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:DELete value`` command. + + SCPI Syntax: + ``` + - REF:DELete + ``` + + Info: + - ```` is the specified reference. Argument is of the form 'REF', where NR1 ≥ + 1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefAddnew(SCPICmdWrite): + """The ``REF:ADDNew`` command. + + Description: + - This command adds the specified reference. Argument is of the form 'REF ', where NR1 + ≥ 1. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:ADDNew value`` command. + + SCPI Syntax: + ``` + - REF:ADDNew + ``` + + Info: + - ```` is the specified reference. Argument is of the form 'REF ', where NR1 ≥ + 1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class Ref(SCPICmdRead): + """The ``REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF?`` query. + - Using the ``.verify(value)`` method will send the ``REF?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.addnew``: The ``REF:ADDNew`` command. + - ``.delete``: The ``REF:DELete`` command. + - ``.list``: The ``REF:LIST`` command. + - ``.ref``: The ``REF:REF`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "REF") -> None: + super().__init__(device, cmd_syntax) + self._addnew = RefAddnew(device, f"{self._cmd_syntax}:ADDNew") + self._delete = RefDelete(device, f"{self._cmd_syntax}:DELete") + self._list = RefList(device, f"{self._cmd_syntax}:LIST") + self._ref: Dict[int, RefRefItem] = DefaultDictPassKeyToFactory( + lambda x: RefRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + + @property + def addnew(self) -> RefAddnew: + """Return the ``REF:ADDNew`` command. + + Description: + - This command adds the specified reference. Argument is of the form 'REF ', where + NR1 ≥ 1. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:ADDNew value`` command. + + SCPI Syntax: + ``` + - REF:ADDNew + ``` + + Info: + - ```` is the specified reference. Argument is of the form 'REF ', where + NR1 ≥ 1. + """ + return self._addnew + + @property + def delete(self) -> RefDelete: + """Return the ``REF:DELete`` command. + + Description: + - Deletes the specified reference. Argument is of the form 'REF', where NR1 ≥ 1. + + Usage: + - Using the ``.write(value)`` method will send the ``REF:DELete value`` command. + + SCPI Syntax: + ``` + - REF:DELete + ``` + + Info: + - ```` is the specified reference. Argument is of the form 'REF', where + NR1 ≥ 1. + """ + return self._delete + + @property + def list(self) -> RefList: + """Return the ``REF:LIST`` command. + + Description: + - This command returns a comma separated list of all currently defined references. + + Usage: + - Using the ``.query()`` method will send the ``REF:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``REF:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REF:LIST? + ``` + """ + return self._list + + @property + def ref(self) -> Dict[int, RefRefItem]: + """Return the ``REF:REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF:REF?`` query. + - Using the ``.verify(value)`` method will send the ``REF:REF?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.deskew``: The ``REF:REF:DESKew`` command. + - ``.label``: The ``REF:REF:LABel`` command tree. + - ``.source``: The ``REF:REF:SOUrce`` command. + """ + return self._ref diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/remote.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/remote.py new file mode 100644 index 00000000..eab1d3f0 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/remote.py @@ -0,0 +1,3117 @@ +"""The remote commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - REMOTE:ACQMethod {CONTINuous|SINGLE|SEQuence} + - REMOTE:ACQMethod? + - REMOTE:ACQStatus? + - REMOTE:ACQUIRE + - REMOTE:ADDNew + - REMOTE:COMMInter {Visa|Socket} + - REMOTE:COMMInter? + - REMOTE:CONTROL + - REMOTE:CONTROL? + - REMOTE:DELEte + - REMOTE:LOGGING {START|PAUSE|STOP} + - REMOTE:LOGGING? + - REMOTE:NUMACq? + - REMOTE:S_CH:DIGGRP:D:THReshold + - REMOTE:S_CH:DIGGRP:D:THReshold? + - REMOTE:S_CH:DIGGRP:THReshold + - REMOTE:S_CH:DIGGRP:THReshold? + - REMOTE:S_CH:PROBETYPE? + - REMOTE:S_CH:SELect:DIGGRP:Dall {ON|OFF|} + - REMOTE:S_CH:SELect:DIGGRP:Dall? + - REMOTE:S_CH:STAte + - REMOTE:S_CH:STAte? + - REMOTE:S_CH:SV:CENTERFrequency + - REMOTE:S_CH:SV:CENTERFrequency? + - REMOTE:S_CH:SV:POSition + - REMOTE:S_CH:SV:POSition? + - REMOTE:S_CH:SV:STARTFrequency? + - REMOTE:S_CH:SV:STATE {ON|OFF} + - REMOTE:S_CH:SV:STATE? + - REMOTE:S_CH:SV:STOPFrequency? + - REMOTE:S_DCH:D:THReshold + - REMOTE:S_DCH:D:THReshold? + - REMOTE:S_DCH:GROUPTHReshold + - REMOTE:S_DCH:GROUPTHReshold? + - REMOTE:S_DCH:SELect:DAll {ON|OFF|} + - REMOTE:S_DCH:SELect:DAll? + - REMOTE:SCOPe:BANDWidth? + - REMOTE:SCOPe:CONNECT + - REMOTE:SCOPe:CONNECTIONMessage? + - REMOTE:SCOPe:CONNECTIONState? + - REMOTE:SCOPe:DISCONNECT + - REMOTE:SCOPe:HORizontal:FASTframe:COUNt? + - REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames? + - REMOTE:SCOPe:HORizontal:FASTframe:SELECTED? + - REMOTE:SCOPe:HORizontal:FASTframe:STATE? + - REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE? + - REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame? + - REMOTE:SCOPe:IPADDress + - REMOTE:SCOPe:IPADDress? + - REMOTE:SCOPe:MODELname? + - REMOTE:SCOPe:PORT + - REMOTE:SCOPe:PORT? + - REMOTE:SCOPe:SYNC + - REMOTE:SCOPe:State? + - REMOTE:SCOPe:VISACONNectiontype {Network|USB} + - REMOTE:SCOPe:VISACONNectiontype? + - REMOTE:SEQuence:CURrent? + - REMOTE:SEQuence:NUMSEQuence + - REMOTE:SEQuence:NUMSEQuence? + - REMOTE:SV:RBW + - REMOTE:SV:RBW? + - REMOTE:SV:RBWMode {AUTOmatic|MANual} + - REMOTE:SV:RBWMode? + - REMOTE:SV:SPAN + - REMOTE:SV:SPAN? + - REMOTE:SV:SPANRBWRatio + - REMOTE:SV:SPANRBWRatio? + - REMOTE:SV:WINDOW {KAISerbessel|RECTangular|HAMMing|HANNing|BLACkmanharris|FLATtop2} + - REMOTE:SV:WINDOW? + - REMOTE:USBDEscriptors {Usb} + - REMOTE:USBDEscriptors? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedChannel, + ValidatedDigitalBit, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class RemoteUsbdescriptors(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:USBDEscriptors`` command. + + Description: + - This command sets or queries the USB descriptors available for remote connection. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:USBDEscriptors?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:USBDEscriptors?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:USBDEscriptors value`` command. + + SCPI Syntax: + ``` + - REMOTE:USBDEscriptors {Usb} + - REMOTE:USBDEscriptors? + ``` + + Info: + - ``Usb0`` sets the usb address of the first specified scope. + - ``Usb1`` sets the usb address of the second specified scope. + """ + + +class RemoteSvWindow(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:SV:WINDOW`` command. + + Description: + - This command sets or queries the window type used by the windowing function of the + Spectrum View. The windowing function is a Fast Fourier Transform (FFT) technique used to + minimize the discontinuities between successive frames of an RF time domain signal. The + default window type is Blackman-Harris. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:WINDOW?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:WINDOW?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:WINDOW value`` command. + + SCPI Syntax: + ``` + - REMOTE:SV:WINDOW {KAISerbessel|RECTangular|HAMMing|HANNing|BLACkmanharris|FLATtop2} + - REMOTE:SV:WINDOW? + ``` + + Info: + - ``KAISerbessel`` specifies the Kaiser-Bessel window type (a high or moderate resolution + window). + - ``RECTangular`` specifies the Rectangular window type (a window function is equivalent to + multiplying all gate data by one). + - ``HAMMing`` specifies the Hamming window type (a high or moderate resolution window based + on a cosine series). + - ``HANNing`` specifies the Hanning window type (a high or moderate resolution window based + on a cosine series). + - ``BLACkmanharris`` specifies the Blackman-Harris window type (a low-resolution (high + dynamic range) window based on a cosine series). + - ``FLATtop2`` specifies the Flattop2 window type (a low-resolution (high dynamic range) + window). + """ + + +class RemoteSvSpanrbwratio(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:SV:SPANRBWRatio`` command. + + Description: + - This command sets or queries the ratio of the span to the resolution bandwidth (RBW) that + will be used when the RBW Mode is set to AUTO. The span is the width of the frequency + domain trace in Hz, which is equal to the stop frequency minus the start frequency. The + RBW is the width of the narrowest measurable band of frequencies in a frequency domain + trace. The default RBW ratio is 1000 : 1. Use the command ``REMOTE:SV:RBWMode`` to set the + RBW Mode to Automatic. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:SPANRBWRatio?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:SPANRBWRatio?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:SPANRBWRatio value`` command. + + SCPI Syntax: + ``` + - REMOTE:SV:SPANRBWRatio + - REMOTE:SV:SPANRBWRatio? + ``` + + Info: + - ```` specifies the span-to-RBW ratio. + """ + + +class RemoteSvSpan(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:SV:SPAN`` command. + + Description: + - This command sets or queries the span setting for all channels in the Spectrum View. The + span is the range of frequencies that can be observed centered on the center frequency. + This is the width of the frequency domain trace, which is from the center frequency - + ½span to the center frequency + ½ span. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:SPAN?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:SPAN?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:SPAN value`` command. + + SCPI Syntax: + ``` + - REMOTE:SV:SPAN + - REMOTE:SV:SPAN? + ``` + + Info: + - ```` specifies the span value in Hz. + """ + + +class RemoteSvRbwmode(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:SV:RBWMode`` command. + + Description: + - This command sets or queries the resolution bandwidth (RBW) mode, either Automatic or + Manual. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:RBWMode?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:RBWMode?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:RBWMode value`` command. + + SCPI Syntax: + ``` + - REMOTE:SV:RBWMode {AUTOmatic|MANual} + - REMOTE:SV:RBWMode? + ``` + + Info: + - ``AUTOmatic`` specifies the resolution bandwidth automatically as the span is changed. The + default behavior is ``1000:1``, but you can set it to other values in a 1-2-5 sequence + (e.g. 10000, 20000, 50000). To specify the RBW ratio that will be used when the mode is + set to automatic, use the command ``REMOTE:SV:SPANRBWRatio``. + - ``MANual`` specifies to set the resolution bandwidth, independently from the span, using + the command ``REMOTE:SV:RBW``. + """ + + +class RemoteSvRbw(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:SV:RBW`` command. + + Description: + - This command sets or queries the resolution bandwidth (RBW) when the RBW mode has been set + to MANUAL (using the command ``REMOTE:SV:RBWMode``). The resolution bandwidth is the width + of the narrowest measurable band of frequencies in a Spectrum View trace. By default, the + RBW tracks the span value in a ``1000:1`` ratio. The RBW determines the level to which the + instrument can resolve individual frequencies in the frequency domain. For example, if the + input signal contains two carriers separated by 1 kHz, you will not be able to + discriminate between them unless the RBW is less than 1 kHz. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:RBW?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:RBW?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:RBW value`` command. + + SCPI Syntax: + ``` + - REMOTE:SV:RBW + - REMOTE:SV:RBW? + ``` + + Info: + - ```` specifies the width of the narrowest measurable band of frequencies in a + Spectrum View trace, in Hz. + """ + + +class RemoteSv(SCPICmdRead): + """The ``REMOTE:SV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.rbw``: The ``REMOTE:SV:RBW`` command. + - ``.rbwmode``: The ``REMOTE:SV:RBWMode`` command. + - ``.span``: The ``REMOTE:SV:SPAN`` command. + - ``.spanrbwratio``: The ``REMOTE:SV:SPANRBWRatio`` command. + - ``.window``: The ``REMOTE:SV:WINDOW`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._rbw = RemoteSvRbw(device, f"{self._cmd_syntax}:RBW") + self._rbwmode = RemoteSvRbwmode(device, f"{self._cmd_syntax}:RBWMode") + self._span = RemoteSvSpan(device, f"{self._cmd_syntax}:SPAN") + self._spanrbwratio = RemoteSvSpanrbwratio(device, f"{self._cmd_syntax}:SPANRBWRatio") + self._window = RemoteSvWindow(device, f"{self._cmd_syntax}:WINDOW") + + @property + def rbw(self) -> RemoteSvRbw: + """Return the ``REMOTE:SV:RBW`` command. + + Description: + - This command sets or queries the resolution bandwidth (RBW) when the RBW mode has been + set to MANUAL (using the command ``REMOTE:SV:RBWMode``). The resolution bandwidth is + the width of the narrowest measurable band of frequencies in a Spectrum View trace. By + default, the RBW tracks the span value in a ``1000:1`` ratio. The RBW determines the + level to which the instrument can resolve individual frequencies in the frequency + domain. For example, if the input signal contains two carriers separated by 1 kHz, you + will not be able to discriminate between them unless the RBW is less than 1 kHz. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:RBW?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:RBW?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:RBW value`` command. + + SCPI Syntax: + ``` + - REMOTE:SV:RBW + - REMOTE:SV:RBW? + ``` + + Info: + - ```` specifies the width of the narrowest measurable band of frequencies in a + Spectrum View trace, in Hz. + """ + return self._rbw + + @property + def rbwmode(self) -> RemoteSvRbwmode: + """Return the ``REMOTE:SV:RBWMode`` command. + + Description: + - This command sets or queries the resolution bandwidth (RBW) mode, either Automatic or + Manual. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:RBWMode?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:RBWMode?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:RBWMode value`` command. + + SCPI Syntax: + ``` + - REMOTE:SV:RBWMode {AUTOmatic|MANual} + - REMOTE:SV:RBWMode? + ``` + + Info: + - ``AUTOmatic`` specifies the resolution bandwidth automatically as the span is changed. + The default behavior is ``1000:1``, but you can set it to other values in a 1-2-5 + sequence (e.g. 10000, 20000, 50000). To specify the RBW ratio that will be used when + the mode is set to automatic, use the command ``REMOTE:SV:SPANRBWRatio``. + - ``MANual`` specifies to set the resolution bandwidth, independently from the span, + using the command ``REMOTE:SV:RBW``. + """ + return self._rbwmode + + @property + def span(self) -> RemoteSvSpan: + """Return the ``REMOTE:SV:SPAN`` command. + + Description: + - This command sets or queries the span setting for all channels in the Spectrum View. + The span is the range of frequencies that can be observed centered on the center + frequency. This is the width of the frequency domain trace, which is from the center + frequency - ½span to the center frequency + ½ span. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:SPAN?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:SPAN?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:SPAN value`` command. + + SCPI Syntax: + ``` + - REMOTE:SV:SPAN + - REMOTE:SV:SPAN? + ``` + + Info: + - ```` specifies the span value in Hz. + """ + return self._span + + @property + def spanrbwratio(self) -> RemoteSvSpanrbwratio: + """Return the ``REMOTE:SV:SPANRBWRatio`` command. + + Description: + - This command sets or queries the ratio of the span to the resolution bandwidth (RBW) + that will be used when the RBW Mode is set to AUTO. The span is the width of the + frequency domain trace in Hz, which is equal to the stop frequency minus the start + frequency. The RBW is the width of the narrowest measurable band of frequencies in a + frequency domain trace. The default RBW ratio is 1000 : 1. Use the command + ``REMOTE:SV:RBWMode`` to set the RBW Mode to Automatic. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:SPANRBWRatio?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:SPANRBWRatio?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:SPANRBWRatio value`` + command. + + SCPI Syntax: + ``` + - REMOTE:SV:SPANRBWRatio + - REMOTE:SV:SPANRBWRatio? + ``` + + Info: + - ```` specifies the span-to-RBW ratio. + """ + return self._spanrbwratio + + @property + def window(self) -> RemoteSvWindow: + """Return the ``REMOTE:SV:WINDOW`` command. + + Description: + - This command sets or queries the window type used by the windowing function of the + Spectrum View. The windowing function is a Fast Fourier Transform (FFT) technique used + to minimize the discontinuities between successive frames of an RF time domain signal. + The default window type is Blackman-Harris. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV:WINDOW?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV:WINDOW?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SV:WINDOW value`` command. + + SCPI Syntax: + ``` + - REMOTE:SV:WINDOW {KAISerbessel|RECTangular|HAMMing|HANNing|BLACkmanharris|FLATtop2} + - REMOTE:SV:WINDOW? + ``` + + Info: + - ``KAISerbessel`` specifies the Kaiser-Bessel window type (a high or moderate + resolution window). + - ``RECTangular`` specifies the Rectangular window type (a window function is equivalent + to multiplying all gate data by one). + - ``HAMMing`` specifies the Hamming window type (a high or moderate resolution window + based on a cosine series). + - ``HANNing`` specifies the Hanning window type (a high or moderate resolution window + based on a cosine series). + - ``BLACkmanharris`` specifies the Blackman-Harris window type (a low-resolution (high + dynamic range) window based on a cosine series). + - ``FLATtop2`` specifies the Flattop2 window type (a low-resolution (high dynamic range) + window). + """ + return self._window + + +class RemoteSequenceNumsequence(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:SEQuence:NUMSEQuence`` command. + + Description: + - In single sequence acquisition mode, specify the number of acquisitions or measurements + that comprise the sequence. The default is 1. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SEQuence:NUMSEQuence?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SEQuence:NUMSEQuence?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SEQuence:NUMSEQuence value`` + command. + + SCPI Syntax: + ``` + - REMOTE:SEQuence:NUMSEQuence + - REMOTE:SEQuence:NUMSEQuence? + ``` + + Info: + - ```` is the number of acquisitions or measurements that comprise the sequence. + """ + + +class RemoteSequenceCurrent(SCPICmdRead): + """The ``REMOTE:SEQuence:CURrent`` command. + + Description: + - In single sequence acquisition mode, this query returns the number of acquisitions or + measurements in the sequence completed so far. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SEQuence:CURrent?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SEQuence:CURrent?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SEQuence:CURrent? + ``` + """ + + +class RemoteSequence(SCPICmdRead): + """The ``REMOTE:SEQuence`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SEQuence?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SEQuence?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.current``: The ``REMOTE:SEQuence:CURrent`` command. + - ``.numsequence``: The ``REMOTE:SEQuence:NUMSEQuence`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._current = RemoteSequenceCurrent(device, f"{self._cmd_syntax}:CURrent") + self._numsequence = RemoteSequenceNumsequence(device, f"{self._cmd_syntax}:NUMSEQuence") + + @property + def current(self) -> RemoteSequenceCurrent: + """Return the ``REMOTE:SEQuence:CURrent`` command. + + Description: + - In single sequence acquisition mode, this query returns the number of acquisitions or + measurements in the sequence completed so far. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SEQuence:CURrent?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SEQuence:CURrent?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SEQuence:CURrent? + ``` + """ + return self._current + + @property + def numsequence(self) -> RemoteSequenceNumsequence: + """Return the ``REMOTE:SEQuence:NUMSEQuence`` command. + + Description: + - In single sequence acquisition mode, specify the number of acquisitions or + measurements that comprise the sequence. The default is 1. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SEQuence:NUMSEQuence?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SEQuence:NUMSEQuence?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SEQuence:NUMSEQuence value`` + command. + + SCPI Syntax: + ``` + - REMOTE:SEQuence:NUMSEQuence + - REMOTE:SEQuence:NUMSEQuence? + ``` + + Info: + - ```` is the number of acquisitions or measurements that comprise the sequence. + """ + return self._numsequence + + +class RemoteScopeItemVisaconnectiontype(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:SCOPe:VISACONNectiontype`` command. + + Description: + - This command sets or queries VISA connection type for remote scope connection. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:VISACONNectiontype?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:VISACONNectiontype?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:SCOPe:VISACONNectiontype value`` command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:VISACONNectiontype {Network|USB} + - REMOTE:SCOPe:VISACONNectiontype? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ``Network`` sets the remote scope connection type to Network. + - ``USB`` sets the remote scope connection type to USB. + """ + + +class RemoteScopeItemState(SCPICmdRead): + """The ``REMOTE:SCOPe:State`` command. + + Description: + - This command queries the connected state for the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:State?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:State?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:State? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +class RemoteScopeItemSync(SCPICmdWrite): + """The ``REMOTE:SCOPe:SYNC`` command. + + Description: + - This command refreshes the channel data from the specified remote scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:SCOPe:SYNC value`` command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:SYNC + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` is the remote scope port number. The argument is of the form where NR1 ≥ + 1. + """ + + +class RemoteScopeItemPort(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:SCOPe:PORT`` command. + + Description: + - This command sets or queries the port number for the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:PORT?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:PORT?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SCOPe:PORT value`` command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:PORT + - REMOTE:SCOPe:PORT? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` is the remote scope port number. The argument is of the form where NR1 ≥ + 1. + """ + + +class RemoteScopeItemModelname(SCPICmdRead): + """The ``REMOTE:SCOPe:MODELname`` command. + + Description: + - This command returns model name of the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:MODELname?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:MODELname?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:MODELname? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +class RemoteScopeItemIpaddress(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:SCOPe:IPADDress`` command. + + Description: + - This command sets or queries the IP Address or host name for the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:IPADDress?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:IPADDress?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SCOPe:IPADDress value`` + command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:IPADDress + - REMOTE:SCOPe:IPADDress? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` is the remote scope IP Address or host name. The argument is of the form + 'ScopeIPAddress'. + """ + + +class RemoteScopeItemHorizontalFastframeSumframeState(SCPICmdRead): + """The ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE`` command. + + Description: + - This command returns the state of FastFrame summary frame. Summary frame mode is set + automatically based on the acquisition mode. When in Sample mode, the summary frame type + is set to Average. When in Peak Detect mode, the summary frame type is set to Envelope. + When in High Res mode, the summary frame type is set to Average. FastFrame on the Remote + scope should be turned ON before connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +class RemoteScopeItemHorizontalFastframeSumframe(SCPICmdRead): + """The ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame`` command. + + Description: + - This command returns the summary frame type. Turning on Summary Frame does not adjust the + numberFrames value as long as there is room for an additional frame. If there is not + enough room then numberFrames will be reduced by 1. The numberFrames value is always the + number of frames to acquire. FastFrame on the Remote scope should be turned ON before + connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + + Properties: + - ``.state``: The ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = RemoteScopeItemHorizontalFastframeSumframeState( + device, f"{self._cmd_syntax}:STATE" + ) + + @property + def state(self) -> RemoteScopeItemHorizontalFastframeSumframeState: + """Return the ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE`` command. + + Description: + - This command returns the state of FastFrame summary frame. Summary frame mode is set + automatically based on the acquisition mode. When in Sample mode, the summary frame + type is set to Average. When in Peak Detect mode, the summary frame type is set to + Envelope. When in High Res mode, the summary frame type is set to Average. FastFrame + on the Remote scope should be turned ON before connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._state + + +class RemoteScopeItemHorizontalFastframeState(SCPICmdRead): + """The ``REMOTE:SCOPe:HORizontal:FASTframe:STATE`` command. + + Description: + - This command returns the state of FastFrame. Acquisition modes Envelope and Average are + not compatible with FastFrame. If FastFrame is on, an attempted set to those acquisition + modes will fail and revert to Sample mode. If FastFrame is turned on while in one of those + acquisition modes, the acquisition mode is changed to Sample. FastFrame on the Remote + scope should be turned ON before connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:STATE? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +class RemoteScopeItemHorizontalFastframeSelected(SCPICmdRead): + """The ``REMOTE:SCOPe:HORizontal:FASTframe:SELECTED`` command. + + Description: + - This command returns the selected frame number for acquired frames. Refs have their own + selected frames. FastFrame on the Remote scope should be turned ON before connecting from + TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SELECTED?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SELECTED?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:SELECTED? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +class RemoteScopeItemHorizontalFastframeMaxframes(SCPICmdRead): + """The ``REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames`` command. + + Description: + - This query returns the maximum number of frames. FastFrame on the Remote scope should be + turned ON before connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +class RemoteScopeItemHorizontalFastframeCount(SCPICmdRead): + """The ``REMOTE:SCOPe:HORizontal:FASTframe:COUNt`` command. + + Description: + - This command returns the number of frames. FastFrame on the Remote scope should be turned + ON before connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:COUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:COUNt?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:COUNt? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +class RemoteScopeItemHorizontalFastframe(SCPICmdRead): + """The ``REMOTE:SCOPe:HORizontal:FASTframe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:HORizontal:FASTframe?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``SCOPe`` specifies the remote scope number. + + Properties: + - ``.count``: The ``REMOTE:SCOPe:HORizontal:FASTframe:COUNt`` command. + - ``.maxframes``: The ``REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames`` command. + - ``.selected``: The ``REMOTE:SCOPe:HORizontal:FASTframe:SELECTED`` command. + - ``.state``: The ``REMOTE:SCOPe:HORizontal:FASTframe:STATE`` command. + - ``.sumframe``: The ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._count = RemoteScopeItemHorizontalFastframeCount(device, f"{self._cmd_syntax}:COUNt") + self._maxframes = RemoteScopeItemHorizontalFastframeMaxframes( + device, f"{self._cmd_syntax}:MAXFrames" + ) + self._selected = RemoteScopeItemHorizontalFastframeSelected( + device, f"{self._cmd_syntax}:SELECTED" + ) + self._state = RemoteScopeItemHorizontalFastframeState(device, f"{self._cmd_syntax}:STATE") + self._sumframe = RemoteScopeItemHorizontalFastframeSumframe( + device, f"{self._cmd_syntax}:SUMFrame" + ) + + @property + def count(self) -> RemoteScopeItemHorizontalFastframeCount: + """Return the ``REMOTE:SCOPe:HORizontal:FASTframe:COUNt`` command. + + Description: + - This command returns the number of frames. FastFrame on the Remote scope should be + turned ON before connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:COUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:COUNt?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:COUNt? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._count + + @property + def maxframes(self) -> RemoteScopeItemHorizontalFastframeMaxframes: + """Return the ``REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames`` command. + + Description: + - This query returns the maximum number of frames. FastFrame on the Remote scope should + be turned ON before connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._maxframes + + @property + def selected(self) -> RemoteScopeItemHorizontalFastframeSelected: + """Return the ``REMOTE:SCOPe:HORizontal:FASTframe:SELECTED`` command. + + Description: + - This command returns the selected frame number for acquired frames. Refs have their + own selected frames. FastFrame on the Remote scope should be turned ON before + connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SELECTED?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SELECTED?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:SELECTED? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._selected + + @property + def state(self) -> RemoteScopeItemHorizontalFastframeState: + """Return the ``REMOTE:SCOPe:HORizontal:FASTframe:STATE`` command. + + Description: + - This command returns the state of FastFrame. Acquisition modes Envelope and Average + are not compatible with FastFrame. If FastFrame is on, an attempted set to those + acquisition modes will fail and revert to Sample mode. If FastFrame is turned on while + in one of those acquisition modes, the acquisition mode is changed to Sample. + FastFrame on the Remote scope should be turned ON before connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:STATE?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:STATE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:STATE? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._state + + @property + def sumframe(self) -> RemoteScopeItemHorizontalFastframeSumframe: + """Return the ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame`` command. + + Description: + - This command returns the summary frame type. Turning on Summary Frame does not adjust + the numberFrames value as long as there is room for an additional frame. If there is + not enough room then numberFrames will be reduced by 1. The numberFrames value is + always the number of frames to acquire. FastFrame on the Remote scope should be turned + ON before connecting from TekScope. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame?`` query and raise an AssertionError + if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + + Sub-properties: + - ``.state``: The ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE`` command. + """ + return self._sumframe + + +class RemoteScopeItemHorizontal(SCPICmdRead): + """The ``REMOTE:SCOPe:HORizontal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:HORizontal?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:HORizontal?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``SCOPe`` specifies the remote scope number. + + Properties: + - ``.fastframe``: The ``REMOTE:SCOPe:HORizontal:FASTframe`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fastframe = RemoteScopeItemHorizontalFastframe( + device, f"{self._cmd_syntax}:FASTframe" + ) + + @property + def fastframe(self) -> RemoteScopeItemHorizontalFastframe: + """Return the ``REMOTE:SCOPe:HORizontal:FASTframe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:HORizontal:FASTframe?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:HORizontal:FASTframe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``SCOPe`` specifies the remote scope number. + + Sub-properties: + - ``.count``: The ``REMOTE:SCOPe:HORizontal:FASTframe:COUNt`` command. + - ``.maxframes``: The ``REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames`` command. + - ``.selected``: The ``REMOTE:SCOPe:HORizontal:FASTframe:SELECTED`` command. + - ``.state``: The ``REMOTE:SCOPe:HORizontal:FASTframe:STATE`` command. + - ``.sumframe``: The ``REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame`` command. + """ + return self._fastframe + + +class RemoteScopeItemDisconnect(SCPICmdWriteNoArguments): + """The ``REMOTE:SCOPe:DISCONNECT`` command. + + Description: + - This command disconnects the specified Remote Scope. + + Usage: + - Using the ``.write()`` method will send the ``REMOTE:SCOPe:DISCONNECT`` command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:DISCONNECT + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` sets the Remote Scope to disconnect. + """ + + +class RemoteScopeItemConnectionstate(SCPICmdRead): + """The ``REMOTE:SCOPe:CONNECTIONState`` command. + + Description: + - This command queries the connected state for the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:CONNECTIONState?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:CONNECTIONState?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:CONNECTIONState? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +class RemoteScopeItemConnectionmessage(SCPICmdRead): + """The ``REMOTE:SCOPe:CONNECTIONMessage`` command. + + Description: + - This command queries the connection status message for the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:CONNECTIONMessage?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:CONNECTIONMessage?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:CONNECTIONMessage? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +class RemoteScopeItemConnect(SCPICmdWrite): + """The ``REMOTE:SCOPe:CONNECT`` command. + + Description: + - This command connects the specified Remote Scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:SCOPe:CONNECT value`` + command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:CONNECT + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` sets the Remote Scope to connect to. + """ + + +class RemoteScopeItemBandwidth(SCPICmdRead): + """The ``REMOTE:SCOPe:BANDWidth`` command. + + Description: + - This command queries the maximum licensed bandwidth of the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:BANDWidth?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:BANDWidth?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:BANDWidth? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + + +# pylint: disable=too-many-instance-attributes +class RemoteScopeItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``REMOTE:SCOPe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SCOPe`` specifies the remote scope number. + + Properties: + - ``.bandwidth``: The ``REMOTE:SCOPe:BANDWidth`` command. + - ``.connect``: The ``REMOTE:SCOPe:CONNECT`` command. + - ``.connectionmessage``: The ``REMOTE:SCOPe:CONNECTIONMessage`` command. + - ``.connectionstate``: The ``REMOTE:SCOPe:CONNECTIONState`` command. + - ``.disconnect``: The ``REMOTE:SCOPe:DISCONNECT`` command. + - ``.horizontal``: The ``REMOTE:SCOPe:HORizontal`` command tree. + - ``.ipaddress``: The ``REMOTE:SCOPe:IPADDress`` command. + - ``.modelname``: The ``REMOTE:SCOPe:MODELname`` command. + - ``.port``: The ``REMOTE:SCOPe:PORT`` command. + - ``.sync``: The ``REMOTE:SCOPe:SYNC`` command. + - ``.state``: The ``REMOTE:SCOPe:State`` command. + - ``.visaconnectiontype``: The ``REMOTE:SCOPe:VISACONNectiontype`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bandwidth = RemoteScopeItemBandwidth(device, f"{self._cmd_syntax}:BANDWidth") + self._connect = RemoteScopeItemConnect(device, f"{self._cmd_syntax}:CONNECT") + self._connectionmessage = RemoteScopeItemConnectionmessage( + device, f"{self._cmd_syntax}:CONNECTIONMessage" + ) + self._connectionstate = RemoteScopeItemConnectionstate( + device, f"{self._cmd_syntax}:CONNECTIONState" + ) + self._disconnect = RemoteScopeItemDisconnect(device, f"{self._cmd_syntax}:DISCONNECT") + self._horizontal = RemoteScopeItemHorizontal(device, f"{self._cmd_syntax}:HORizontal") + self._ipaddress = RemoteScopeItemIpaddress(device, f"{self._cmd_syntax}:IPADDress") + self._modelname = RemoteScopeItemModelname(device, f"{self._cmd_syntax}:MODELname") + self._port = RemoteScopeItemPort(device, f"{self._cmd_syntax}:PORT") + self._sync = RemoteScopeItemSync(device, f"{self._cmd_syntax}:SYNC") + self._state = RemoteScopeItemState(device, f"{self._cmd_syntax}:State") + self._visaconnectiontype = RemoteScopeItemVisaconnectiontype( + device, f"{self._cmd_syntax}:VISACONNectiontype" + ) + + @property + def bandwidth(self) -> RemoteScopeItemBandwidth: + """Return the ``REMOTE:SCOPe:BANDWidth`` command. + + Description: + - This command queries the maximum licensed bandwidth of the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:BANDWidth?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:BANDWidth?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:BANDWidth? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._bandwidth + + @property + def connect(self) -> RemoteScopeItemConnect: + """Return the ``REMOTE:SCOPe:CONNECT`` command. + + Description: + - This command connects the specified Remote Scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:SCOPe:CONNECT value`` + command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:CONNECT + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` sets the Remote Scope to connect to. + """ + return self._connect + + @property + def connectionmessage(self) -> RemoteScopeItemConnectionmessage: + """Return the ``REMOTE:SCOPe:CONNECTIONMessage`` command. + + Description: + - This command queries the connection status message for the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:CONNECTIONMessage?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:CONNECTIONMessage?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:CONNECTIONMessage? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._connectionmessage + + @property + def connectionstate(self) -> RemoteScopeItemConnectionstate: + """Return the ``REMOTE:SCOPe:CONNECTIONState`` command. + + Description: + - This command queries the connected state for the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:CONNECTIONState?`` + query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:CONNECTIONState?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:CONNECTIONState? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._connectionstate + + @property + def disconnect(self) -> RemoteScopeItemDisconnect: + """Return the ``REMOTE:SCOPe:DISCONNECT`` command. + + Description: + - This command disconnects the specified Remote Scope. + + Usage: + - Using the ``.write()`` method will send the ``REMOTE:SCOPe:DISCONNECT`` command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:DISCONNECT + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` sets the Remote Scope to disconnect. + """ + return self._disconnect + + @property + def horizontal(self) -> RemoteScopeItemHorizontal: + """Return the ``REMOTE:SCOPe:HORizontal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:HORizontal?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:HORizontal?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``SCOPe`` specifies the remote scope number. + + Sub-properties: + - ``.fastframe``: The ``REMOTE:SCOPe:HORizontal:FASTframe`` command tree. + """ + return self._horizontal + + @property + def ipaddress(self) -> RemoteScopeItemIpaddress: + """Return the ``REMOTE:SCOPe:IPADDress`` command. + + Description: + - This command sets or queries the IP Address or host name for the specified remote + scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:IPADDress?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:IPADDress?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SCOPe:IPADDress value`` + command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:IPADDress + - REMOTE:SCOPe:IPADDress? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` is the remote scope IP Address or host name. The argument is of the form + 'ScopeIPAddress'. + """ + return self._ipaddress + + @property + def modelname(self) -> RemoteScopeItemModelname: + """Return the ``REMOTE:SCOPe:MODELname`` command. + + Description: + - This command returns model name of the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:MODELname?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:MODELname?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:MODELname? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._modelname + + @property + def port(self) -> RemoteScopeItemPort: + """Return the ``REMOTE:SCOPe:PORT`` command. + + Description: + - This command sets or queries the port number for the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:PORT?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:PORT?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:SCOPe:PORT value`` + command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:PORT + - REMOTE:SCOPe:PORT? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` is the remote scope port number. The argument is of the form where NR1 + ≥ 1. + """ + return self._port + + @property + def sync(self) -> RemoteScopeItemSync: + """Return the ``REMOTE:SCOPe:SYNC`` command. + + Description: + - This command refreshes the channel data from the specified remote scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:SCOPe:SYNC value`` + command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:SYNC + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ```` is the remote scope port number. The argument is of the form where NR1 + ≥ 1. + """ + return self._sync + + @property + def state(self) -> RemoteScopeItemState: + """Return the ``REMOTE:SCOPe:State`` command. + + Description: + - This command queries the connected state for the specified remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:State?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe:State?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:State? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + """ + return self._state + + @property + def visaconnectiontype(self) -> RemoteScopeItemVisaconnectiontype: + """Return the ``REMOTE:SCOPe:VISACONNectiontype`` command. + + Description: + - This command sets or queries VISA connection type for remote scope connection. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe:VISACONNectiontype?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:SCOPe:VISACONNectiontype?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:SCOPe:VISACONNectiontype value`` command. + + SCPI Syntax: + ``` + - REMOTE:SCOPe:VISACONNectiontype {Network|USB} + - REMOTE:SCOPe:VISACONNectiontype? + ``` + + Info: + - ``SCOPe`` specifies the remote scope number. + - ``Network`` sets the remote scope connection type to Network. + - ``USB`` sets the remote scope connection type to USB. + """ + return self._visaconnectiontype + + +class RemoteSItemDchItemSelectDall(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_DCH:SELect:DAll`` command. + + Description: + - This command turns on or off all constituent digital channels (D0 through D15) of the + specified source channel. The scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:SELect:DAll?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_DCH:SELect:DAll?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:S_DCH:SELect:DAll value`` + command. + + SCPI Syntax: + ``` + - REMOTE:S_DCH:SELect:DAll {ON|OFF|} + - REMOTE:S_DCH:SELect:DAll? + ``` + """ + + +class RemoteSItemDchItemSelect(SCPICmdRead): + """The ``REMOTE:S_DCH:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_DCH:SELect?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.dall``: The ``REMOTE:S_DCH:SELect:DAll`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dall = RemoteSItemDchItemSelectDall(device, f"{self._cmd_syntax}:DAll") + + @property + def dall(self) -> RemoteSItemDchItemSelectDall: + """Return the ``REMOTE:S_DCH:SELect:DAll`` command. + + Description: + - This command turns on or off all constituent digital channels (D0 through D15) of the + specified source channel. The scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:SELect:DAll?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_DCH:SELect:DAll?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_DCH:SELect:DAll value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_DCH:SELect:DAll {ON|OFF|} + - REMOTE:S_DCH:SELect:DAll? + ``` + """ + return self._dall + + +class RemoteSItemDchItemGroupthresholdItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_DCH:GROUPTHReshold`` command. + + Description: + - This command sets or queries the digital threshold of all bits in digital group 0 (D0-D7) + or group 1 (D8-D15) on ``S_DCH``. The scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:GROUPTHReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_DCH:GROUPTHReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_DCH:GROUPTHReshold value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_DCH:GROUPTHReshold + - REMOTE:S_DCH:GROUPTHReshold? + ``` + """ + + +class RemoteSItemDchItemDigitalBitThreshold(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_DCH:D:THReshold`` command. + + Description: + - This command sets or queries the threshold level in volts for the specified digital + channel. The scope, channel, and digital channel bit number (0-15) are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:D:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_DCH:D:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_DCH:D:THReshold value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_DCH:D:THReshold + - REMOTE:S_DCH:D:THReshold? + ``` + """ + + +class RemoteSItemDchItemDigitalBit(ValidatedDigitalBit, SCPICmdRead): + """The ``REMOTE:S_DCH:D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:D?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_DCH:D?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.threshold``: The ``REMOTE:S_DCH:D:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = RemoteSItemDchItemDigitalBitThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + + @property + def threshold(self) -> RemoteSItemDchItemDigitalBitThreshold: + """Return the ``REMOTE:S_DCH:D:THReshold`` command. + + Description: + - This command sets or queries the threshold level in volts for the specified digital + channel. The scope, channel, and digital channel bit number (0-15) are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:D:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_DCH:D:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_DCH:D:THReshold value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_DCH:D:THReshold + - REMOTE:S_DCH:D:THReshold? + ``` + """ + return self._threshold + + +class RemoteSItemDchItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``REMOTE:S_DCH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_DCH?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.d``: The ``REMOTE:S_DCH:D`` command tree. + - ``.groupthreshold``: The ``REMOTE:S_DCH:GROUPTHReshold`` command. + - ``.select``: The ``REMOTE:S_DCH:SELect`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._d: Dict[int, RemoteSItemDchItemDigitalBit] = DefaultDictPassKeyToFactory( + lambda x: RemoteSItemDchItemDigitalBit(device, f"{self._cmd_syntax}:D{x}") + ) + self._groupthreshold: Dict[int, RemoteSItemDchItemGroupthresholdItem] = ( + DefaultDictPassKeyToFactory( + lambda x: RemoteSItemDchItemGroupthresholdItem( + device, f"{self._cmd_syntax}:GROUP{x}THReshold" + ) + ) + ) + self._select = RemoteSItemDchItemSelect(device, f"{self._cmd_syntax}:SELect") + + @property + def d(self) -> Dict[int, RemoteSItemDchItemDigitalBit]: + """Return the ``REMOTE:S_DCH:D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:D?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_DCH:D?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.threshold``: The ``REMOTE:S_DCH:D:THReshold`` command. + """ + return self._d + + @property + def groupthreshold(self) -> Dict[int, RemoteSItemDchItemGroupthresholdItem]: + """Return the ``REMOTE:S_DCH:GROUPTHReshold`` command. + + Description: + - This command sets or queries the digital threshold of all bits in digital group 0 + (D0-D7) or group 1 (D8-D15) on ``S_DCH``. The scope and channel are specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:GROUPTHReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_DCH:GROUPTHReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_DCH:GROUPTHReshold value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_DCH:GROUPTHReshold + - REMOTE:S_DCH:GROUPTHReshold? + ``` + """ + return self._groupthreshold + + @property + def select(self) -> RemoteSItemDchItemSelect: + """Return the ``REMOTE:S_DCH:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_DCH:SELect?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.dall``: The ``REMOTE:S_DCH:SELect:DAll`` command. + """ + return self._select + + +class RemoteSItemChannelSvStopfrequency(SCPICmdRead): + """The ``REMOTE:S_CH:SV:STOPFrequency`` command. + + Description: + - This command queries the stop frequency of the specified spectrum trace channel in the + Spectrum View window. S is the remote scope number and Ch is the channel number. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:STOPFrequency?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SV:STOPFrequency?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:STOPFrequency? + ``` + """ + + +class RemoteSItemChannelSvState(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_CH:SV:STATE`` command. + + Description: + - This command sets or queries the on/off setting of data acquisition for the specified + spectrum trace channel. S is the remote scope number and Ch is the channel number. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SV:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:S_CH:SV:STATE value`` + command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:STATE {ON|OFF} + - REMOTE:S_CH:SV:STATE? + ``` + + Info: + - ``ON`` enables spectrum data acquisition for the specified spectrum trace channel source. + - ``OFF`` disables spectrum data acquisition for the specified spectrum trace channel + source. + """ + + +class RemoteSItemChannelSvStartfrequency(SCPICmdRead): + """The ``REMOTE:S_CH:SV:STARTFrequency`` command. + + Description: + - This command queries the start frequency of the specified spectrum trace channel in the + Spectrum View window. S is the remote scope number and Ch is the channel number. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:STARTFrequency?`` + query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SV:STARTFrequency?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:STARTFrequency? + ``` + """ + + +class RemoteSItemChannelSvPosition(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_CH:SV:POSition`` command. + + Description: + - This command sets or queries the Spectrum Time setting of the specified spectrum trace + channel in the Spectrum View. Remote scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SV:POSition?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:S_CH:SV:POSition value`` + command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:POSition + - REMOTE:S_CH:SV:POSition? + ``` + + Info: + - ```` specifies the spectrum time location, as a percentage of the record length. The + range of values is 0.0% to 100%. + """ + + +class RemoteSItemChannelSvCenterfrequency(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_CH:SV:CENTERFrequency`` command. + + Description: + - This command sets or queries the center frequency of the specified spectrum trace channel + for Spectrum View. The scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:CENTERFrequency?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_CH:SV:CENTERFrequency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_CH:SV:CENTERFrequency value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:CENTERFrequency + - REMOTE:S_CH:SV:CENTERFrequency? + ``` + + Info: + - ```` specifies the spectrum trace center frequency for the specified channel, in + hertz. The range of values is 0.0 to the maximum licensed bandwidth of the instrument. + """ + + +class RemoteSItemChannelSv(SCPICmdRead): + """The ``REMOTE:S_CH:SV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SV?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.centerfrequency``: The ``REMOTE:S_CH:SV:CENTERFrequency`` command. + - ``.position``: The ``REMOTE:S_CH:SV:POSition`` command. + - ``.startfrequency``: The ``REMOTE:S_CH:SV:STARTFrequency`` command. + - ``.state``: The ``REMOTE:S_CH:SV:STATE`` command. + - ``.stopfrequency``: The ``REMOTE:S_CH:SV:STOPFrequency`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._centerfrequency = RemoteSItemChannelSvCenterfrequency( + device, f"{self._cmd_syntax}:CENTERFrequency" + ) + self._position = RemoteSItemChannelSvPosition(device, f"{self._cmd_syntax}:POSition") + self._startfrequency = RemoteSItemChannelSvStartfrequency( + device, f"{self._cmd_syntax}:STARTFrequency" + ) + self._state = RemoteSItemChannelSvState(device, f"{self._cmd_syntax}:STATE") + self._stopfrequency = RemoteSItemChannelSvStopfrequency( + device, f"{self._cmd_syntax}:STOPFrequency" + ) + + @property + def centerfrequency(self) -> RemoteSItemChannelSvCenterfrequency: + """Return the ``REMOTE:S_CH:SV:CENTERFrequency`` command. + + Description: + - This command sets or queries the center frequency of the specified spectrum trace + channel for Spectrum View. The scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:CENTERFrequency?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_CH:SV:CENTERFrequency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_CH:SV:CENTERFrequency value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:CENTERFrequency + - REMOTE:S_CH:SV:CENTERFrequency? + ``` + + Info: + - ```` specifies the spectrum trace center frequency for the specified channel, in + hertz. The range of values is 0.0 to the maximum licensed bandwidth of the instrument. + """ + return self._centerfrequency + + @property + def position(self) -> RemoteSItemChannelSvPosition: + """Return the ``REMOTE:S_CH:SV:POSition`` command. + + Description: + - This command sets or queries the Spectrum Time setting of the specified spectrum trace + channel in the Spectrum View. Remote scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SV:POSition?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_CH:SV:POSition value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:POSition + - REMOTE:S_CH:SV:POSition? + ``` + + Info: + - ```` specifies the spectrum time location, as a percentage of the record length. + The range of values is 0.0% to 100%. + """ + return self._position + + @property + def startfrequency(self) -> RemoteSItemChannelSvStartfrequency: + """Return the ``REMOTE:S_CH:SV:STARTFrequency`` command. + + Description: + - This command queries the start frequency of the specified spectrum trace channel in + the Spectrum View window. S is the remote scope number and Ch is the channel + number. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:STARTFrequency?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_CH:SV:STARTFrequency?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:STARTFrequency? + ``` + """ + return self._startfrequency + + @property + def state(self) -> RemoteSItemChannelSvState: + """Return the ``REMOTE:S_CH:SV:STATE`` command. + + Description: + - This command sets or queries the on/off setting of data acquisition for the specified + spectrum trace channel. S is the remote scope number and Ch is the channel + number. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SV:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:S_CH:SV:STATE value`` + command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:STATE {ON|OFF} + - REMOTE:S_CH:SV:STATE? + ``` + + Info: + - ``ON`` enables spectrum data acquisition for the specified spectrum trace channel + source. + - ``OFF`` disables spectrum data acquisition for the specified spectrum trace channel + source. + """ + return self._state + + @property + def stopfrequency(self) -> RemoteSItemChannelSvStopfrequency: + """Return the ``REMOTE:S_CH:SV:STOPFrequency`` command. + + Description: + - This command queries the stop frequency of the specified spectrum trace channel in the + Spectrum View window. S is the remote scope number and Ch is the channel number. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV:STOPFrequency?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_CH:SV:STOPFrequency?`` query and raise an AssertionError if the + returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SV:STOPFrequency? + ``` + """ + return self._stopfrequency + + +class RemoteSItemChannelState(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_CH:STAte`` command. + + Description: + - This command sets or queries the state of the specified remote channel in the specified + Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:STAte?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:STAte?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:S_CH:STAte value`` + command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:STAte + - REMOTE:S_CH:STAte? + ``` + + Info: + - ``S`` indicates the remote scope. + - ``CH`` indicates the channel number associated with remote scope. + - ```` sets the channel state value 0 or 1. 0 sets the channel state to false. 1 sets + the channel state to true. + """ + + +class RemoteSItemChannelSelectDiggrpDall(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_CH:SELect:DIGGRP:Dall`` command. + + Description: + - This command sets or queries the display state of the specified digital channel in the + specified Waveform View. The scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SELect:DIGGRP:Dall?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_CH:SELect:DIGGRP:Dall?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_CH:SELect:DIGGRP:Dall value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SELect:DIGGRP:Dall {ON|OFF|} + - REMOTE:S_CH:SELect:DIGGRP:Dall? + ``` + + Info: + - ```` sets the display state. 0 disables the display of the specified channels on the + specified Waveform View; any other value turns this feature on. + - ``OFF`` disables the display of the specified channels on the specified Waveform View. + - ``ON`` enables the display of the specified channels on the specified Waveform View. + """ + + +class RemoteSItemChannelSelectDiggrp(SCPICmdRead): + """The ``REMOTE:S_CH:SELect:DIGGRP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SELect:DIGGRP?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SELect:DIGGRP?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.dall``: The ``REMOTE:S_CH:SELect:DIGGRP:Dall`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._dall = RemoteSItemChannelSelectDiggrpDall(device, f"{self._cmd_syntax}:Dall") + + @property + def dall(self) -> RemoteSItemChannelSelectDiggrpDall: + """Return the ``REMOTE:S_CH:SELect:DIGGRP:Dall`` command. + + Description: + - This command sets or queries the display state of the specified digital channel in the + specified Waveform View. The scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SELect:DIGGRP:Dall?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_CH:SELect:DIGGRP:Dall?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_CH:SELect:DIGGRP:Dall value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:SELect:DIGGRP:Dall {ON|OFF|} + - REMOTE:S_CH:SELect:DIGGRP:Dall? + ``` + + Info: + - ```` sets the display state. 0 disables the display of the specified channels on + the specified Waveform View; any other value turns this feature on. + - ``OFF`` disables the display of the specified channels on the specified Waveform View. + - ``ON`` enables the display of the specified channels on the specified Waveform View. + """ + return self._dall + + +class RemoteSItemChannelSelect(SCPICmdRead): + """The ``REMOTE:S_CH:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SELect?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.diggrp``: The ``REMOTE:S_CH:SELect:DIGGRP`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._diggrp = RemoteSItemChannelSelectDiggrp(device, f"{self._cmd_syntax}:DIGGRP") + + @property + def diggrp(self) -> RemoteSItemChannelSelectDiggrp: + """Return the ``REMOTE:S_CH:SELect:DIGGRP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SELect:DIGGRP?`` + query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SELect:DIGGRP?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.dall``: The ``REMOTE:S_CH:SELect:DIGGRP:Dall`` command. + """ + return self._diggrp + + +class RemoteSItemChannelProbetype(SCPICmdRead): + """The ``REMOTE:S_CH:PROBETYPE`` command. + + Description: + - This command returns the probe type connected to the specified channel. Remote scope and + channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:PROBETYPE?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:PROBETYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:S_CH:PROBETYPE? + ``` + """ + + +class RemoteSItemChannelDiggrpThreshold(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_CH:DIGGRP:THReshold`` command. + + Description: + - This command sets or queries the threshold level in volts for the specified remote scope + channel. The scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:DIGGRP:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:DIGGRP:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_CH:DIGGRP:THReshold value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:DIGGRP:THReshold + - REMOTE:S_CH:DIGGRP:THReshold? + ``` + + Info: + - ```` is the threshold level in volts for the specified remote scope digital channel. + """ + + +class RemoteSItemChannelDiggrpDigitalBitThreshold(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:S_CH:DIGGRP:D:THReshold`` command. + + Description: + - This command sets or queries the threshold level in volts for the specified digital + channel. If the source channel doesn't exist, a hardware missing error event is set. The + scope, channel, and digital channel bit number (0-7) are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:DIGGRP:D:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_CH:DIGGRP:D:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_CH:DIGGRP:D:THReshold value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:DIGGRP:D:THReshold + - REMOTE:S_CH:DIGGRP:D:THReshold? + ``` + + Info: + - ```` is the threshold level in volts for the specified digital channel. + """ + + +class RemoteSItemChannelDiggrpDigitalBit(ValidatedDigitalBit, SCPICmdRead): + """The ``REMOTE:S_CH:DIGGRP:D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:DIGGRP:D?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:DIGGRP:D?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.threshold``: The ``REMOTE:S_CH:DIGGRP:D:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = RemoteSItemChannelDiggrpDigitalBitThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + + @property + def threshold(self) -> RemoteSItemChannelDiggrpDigitalBitThreshold: + """Return the ``REMOTE:S_CH:DIGGRP:D:THReshold`` command. + + Description: + - This command sets or queries the threshold level in volts for the specified digital + channel. If the source channel doesn't exist, a hardware missing error event is set. + The scope, channel, and digital channel bit number (0-7) are specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``REMOTE:S_CH:DIGGRP:D:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_CH:DIGGRP:D:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_CH:DIGGRP:D:THReshold value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:DIGGRP:D:THReshold + - REMOTE:S_CH:DIGGRP:D:THReshold? + ``` + + Info: + - ```` is the threshold level in volts for the specified digital channel. + """ + return self._threshold + + +class RemoteSItemChannelDiggrp(SCPICmdRead): + """The ``REMOTE:S_CH:DIGGRP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:DIGGRP?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:DIGGRP?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.d``: The ``REMOTE:S_CH:DIGGRP:D`` command tree. + - ``.threshold``: The ``REMOTE:S_CH:DIGGRP:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._d: Dict[int, RemoteSItemChannelDiggrpDigitalBit] = DefaultDictPassKeyToFactory( + lambda x: RemoteSItemChannelDiggrpDigitalBit(device, f"{self._cmd_syntax}:D{x}") + ) + self._threshold = RemoteSItemChannelDiggrpThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def d(self) -> Dict[int, RemoteSItemChannelDiggrpDigitalBit]: + """Return the ``REMOTE:S_CH:DIGGRP:D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:DIGGRP:D?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:DIGGRP:D?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.threshold``: The ``REMOTE:S_CH:DIGGRP:D:THReshold`` command. + """ + return self._d + + @property + def threshold(self) -> RemoteSItemChannelDiggrpThreshold: + """Return the ``REMOTE:S_CH:DIGGRP:THReshold`` command. + + Description: + - This command sets or queries the threshold level in volts for the specified remote + scope channel. The scope and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:DIGGRP:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``REMOTE:S_CH:DIGGRP:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REMOTE:S_CH:DIGGRP:THReshold value`` command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:DIGGRP:THReshold + - REMOTE:S_CH:DIGGRP:THReshold? + ``` + + Info: + - ```` is the threshold level in volts for the specified remote scope digital + channel. + """ + return self._threshold + + +class RemoteSItemChannel(ValidatedChannel, SCPICmdRead): + """The ``REMOTE:S_CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.diggrp``: The ``REMOTE:S_CH:DIGGRP`` command tree. + - ``.probetype``: The ``REMOTE:S_CH:PROBETYPE`` command. + - ``.select``: The ``REMOTE:S_CH:SELect`` command tree. + - ``.state``: The ``REMOTE:S_CH:STAte`` command. + - ``.sv``: The ``REMOTE:S_CH:SV`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._diggrp = RemoteSItemChannelDiggrp(device, f"{self._cmd_syntax}:DIGGRP") + self._probetype = RemoteSItemChannelProbetype(device, f"{self._cmd_syntax}:PROBETYPE") + self._select = RemoteSItemChannelSelect(device, f"{self._cmd_syntax}:SELect") + self._state = RemoteSItemChannelState(device, f"{self._cmd_syntax}:STAte") + self._sv = RemoteSItemChannelSv(device, f"{self._cmd_syntax}:SV") + + @property + def diggrp(self) -> RemoteSItemChannelDiggrp: + """Return the ``REMOTE:S_CH:DIGGRP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:DIGGRP?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:DIGGRP?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.d``: The ``REMOTE:S_CH:DIGGRP:D`` command tree. + - ``.threshold``: The ``REMOTE:S_CH:DIGGRP:THReshold`` command. + """ + return self._diggrp + + @property + def probetype(self) -> RemoteSItemChannelProbetype: + """Return the ``REMOTE:S_CH:PROBETYPE`` command. + + Description: + - This command returns the probe type connected to the specified channel. Remote scope + and channel are specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:PROBETYPE?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:PROBETYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:S_CH:PROBETYPE? + ``` + """ + return self._probetype + + @property + def select(self) -> RemoteSItemChannelSelect: + """Return the ``REMOTE:S_CH:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SELect?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.diggrp``: The ``REMOTE:S_CH:SELect:DIGGRP`` command tree. + """ + return self._select + + @property + def state(self) -> RemoteSItemChannelState: + """Return the ``REMOTE:S_CH:STAte`` command. + + Description: + - This command sets or queries the state of the specified remote channel in the + specified Waveform View. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:STAte?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:STAte?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:S_CH:STAte value`` + command. + + SCPI Syntax: + ``` + - REMOTE:S_CH:STAte + - REMOTE:S_CH:STAte? + ``` + + Info: + - ``S`` indicates the remote scope. + - ``CH`` indicates the channel number associated with remote scope. + - ```` sets the channel state value 0 or 1. 0 sets the channel state to false. 1 + sets the channel state to true. + """ + return self._state + + @property + def sv(self) -> RemoteSItemChannelSv: + """Return the ``REMOTE:S_CH:SV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH:SV?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH:SV?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.centerfrequency``: The ``REMOTE:S_CH:SV:CENTERFrequency`` command. + - ``.position``: The ``REMOTE:S_CH:SV:POSition`` command. + - ``.startfrequency``: The ``REMOTE:S_CH:SV:STARTFrequency`` command. + - ``.state``: The ``REMOTE:S_CH:SV:STATE`` command. + - ``.stopfrequency``: The ``REMOTE:S_CH:SV:STOPFrequency`` command. + """ + return self._sv + + +class RemoteSItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``REMOTE:S`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``REMOTE:S_CH`` command tree. + - ``.dch``: The ``REMOTE:S_DCH`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, RemoteSItemChannel] = DefaultDictPassKeyToFactory( + lambda x: RemoteSItemChannel(device, f"{self._cmd_syntax}_CH{x}") + ) + self._dch: Dict[int, RemoteSItemDchItem] = DefaultDictPassKeyToFactory( + lambda x: RemoteSItemDchItem(device, f"{self._cmd_syntax}_DCH{x}") + ) + + @property + def ch(self) -> Dict[int, RemoteSItemChannel]: + """Return the ``REMOTE:S_CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_CH?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.diggrp``: The ``REMOTE:S_CH:DIGGRP`` command tree. + - ``.probetype``: The ``REMOTE:S_CH:PROBETYPE`` command. + - ``.select``: The ``REMOTE:S_CH:SELect`` command tree. + - ``.state``: The ``REMOTE:S_CH:STAte`` command. + - ``.sv``: The ``REMOTE:S_CH:SV`` command tree. + """ + return self._ch + + @property + def dch(self) -> Dict[int, RemoteSItemDchItem]: + """Return the ``REMOTE:S_DCH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S_DCH?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S_DCH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.d``: The ``REMOTE:S_DCH:D`` command tree. + - ``.groupthreshold``: The ``REMOTE:S_DCH:GROUPTHReshold`` command. + - ``.select``: The ``REMOTE:S_DCH:SELect`` command tree. + """ + return self._dch + + +class RemoteNumacq(SCPICmdRead): + """The ``REMOTE:NUMACq`` command. + + Description: + - This query-only command returns the number of waveform acquisitions that have occurred + since the last time acquisitions were stopped. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:NUMACq?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:NUMACq?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:NUMACq? + ``` + """ + + +class RemoteLogging(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:LOGGING`` command. + + Description: + - This command sets or queries the act on event data logging feature. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:LOGGING?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:LOGGING?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:LOGGING value`` command. + + SCPI Syntax: + ``` + - REMOTE:LOGGING {START|PAUSE|STOP} + - REMOTE:LOGGING? + ``` + + Info: + - ``START`` specifies that the act on event data logging feature is started, if + ``REMOTE:ACQStatus`` is set to Acquire. + - ``PAUSE`` specifies that the act on event data logging feature is paused. + - ``STOP`` specifies that the act on event data logging feature is stopped. + """ + + +class RemoteDelete(SCPICmdWrite): + """The ``REMOTE:DELEte`` command. + + Description: + - This command delete the specified remote scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:DELEte value`` command. + + SCPI Syntax: + ``` + - REMOTE:DELEte + ``` + + Info: + - ```` is the remote scope to delete. The argument is of the form 'Scope' + where NR1 ≥ 1. + """ + + +class RemoteControl(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:CONTROL`` command. + + Description: + - This command sets or queries control the settings on the remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:CONTROL?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:CONTROL?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:CONTROL value`` command. + + SCPI Syntax: + ``` + - REMOTE:CONTROL + - REMOTE:CONTROL? + ``` + + Info: + - ```` sets the control to 0 or 1. 0 sets the remote control to off. 1 sets the remote + control to on. + """ + + +class RemoteComminter(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:COMMInter`` command. + + Description: + - This command sets or queries communication Interface for remote connection. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:COMMInter?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:COMMInter?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:COMMInter value`` command. + + SCPI Syntax: + ``` + - REMOTE:COMMInter {Visa|Socket} + - REMOTE:COMMInter? + ``` + + Info: + - ``Visa`` sets the remote communication interface to Visa. + - ``Socket`` sets the remote communication interface to Socket. + """ + + +class RemoteAddnew(SCPICmdWrite): + """The ``REMOTE:ADDNew`` command. + + Description: + - This command adds the specified remote scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:ADDNew value`` command. + + SCPI Syntax: + ``` + - REMOTE:ADDNew + ``` + + Info: + - ```` is the remote scope to add. The argument is of the form 'Scope' where + NR1 ≥ 1. + """ + + +class RemoteAcquire(SCPICmdWrite): + """The ``REMOTE:ACQUIRE`` command. + + Description: + - This command acquires a single sequence on the specified remote Scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:ACQUIRE value`` command. + + SCPI Syntax: + ``` + - REMOTE:ACQUIRE + ``` + + Info: + - ```` specifies the Remote Scope. + """ + + +class RemoteAcqstatus(SCPICmdRead): + """The ``REMOTE:ACQStatus`` command. + + Description: + - This command queries the status of the remote scope acquisition. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:ACQStatus?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:ACQStatus?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:ACQStatus? + ``` + """ + + +class RemoteAcqmethod(SCPICmdWrite, SCPICmdRead): + """The ``REMOTE:ACQMethod`` command. + + Description: + - This command sets or queries whether the instrument continually acquires acquisitions or + acquires a single sequence. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:ACQMethod?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:ACQMethod?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:ACQMethod value`` command. + + SCPI Syntax: + ``` + - REMOTE:ACQMethod {CONTINuous|SINGLE|SEQuence} + - REMOTE:ACQMethod? + ``` + + Info: + - ``CONTINuous`` specifies that the instrument will continually acquire data if + ``:REMOTE:RUNStop`` is set to RUN. + - ``SINGLE`` specifies that the next acquisition will be a single-sequence acquisition if + ``:REMOTE:RUNStop`` is set to RUN. + - ``SEQuence`` specifies that the next acquisition will bea single-sequence acquisition if + ``REMOTE:ACQUIRE`` is set to 1. + """ + + +# pylint: disable=too-many-instance-attributes +class Remote(SCPICmdRead): + """The ``REMOTE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.acqmethod``: The ``REMOTE:ACQMethod`` command. + - ``.acqstatus``: The ``REMOTE:ACQStatus`` command. + - ``.acquire``: The ``REMOTE:ACQUIRE`` command. + - ``.addnew``: The ``REMOTE:ADDNew`` command. + - ``.comminter``: The ``REMOTE:COMMInter`` command. + - ``.control``: The ``REMOTE:CONTROL`` command. + - ``.delete``: The ``REMOTE:DELEte`` command. + - ``.logging``: The ``REMOTE:LOGGING`` command. + - ``.numacq``: The ``REMOTE:NUMACq`` command. + - ``.s``: The ``REMOTE:S`` command tree. + - ``.scope``: The ``REMOTE:SCOPe`` command tree. + - ``.sequence``: The ``REMOTE:SEQuence`` command tree. + - ``.sv``: The ``REMOTE:SV`` command tree. + - ``.usbdescriptors``: The ``REMOTE:USBDEscriptors`` command. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "REMOTE") -> None: + super().__init__(device, cmd_syntax) + self._acqmethod = RemoteAcqmethod(device, f"{self._cmd_syntax}:ACQMethod") + self._acqstatus = RemoteAcqstatus(device, f"{self._cmd_syntax}:ACQStatus") + self._acquire = RemoteAcquire(device, f"{self._cmd_syntax}:ACQUIRE") + self._addnew = RemoteAddnew(device, f"{self._cmd_syntax}:ADDNew") + self._comminter = RemoteComminter(device, f"{self._cmd_syntax}:COMMInter") + self._control = RemoteControl(device, f"{self._cmd_syntax}:CONTROL") + self._delete = RemoteDelete(device, f"{self._cmd_syntax}:DELEte") + self._logging = RemoteLogging(device, f"{self._cmd_syntax}:LOGGING") + self._numacq = RemoteNumacq(device, f"{self._cmd_syntax}:NUMACq") + self._s: Dict[int, RemoteSItem] = DefaultDictPassKeyToFactory( + lambda x: RemoteSItem(device, f"{self._cmd_syntax}:S{x}") + ) + self._scope: Dict[int, RemoteScopeItem] = DefaultDictPassKeyToFactory( + lambda x: RemoteScopeItem(device, f"{self._cmd_syntax}:SCOPe{x}") + ) + self._sequence = RemoteSequence(device, f"{self._cmd_syntax}:SEQuence") + self._sv = RemoteSv(device, f"{self._cmd_syntax}:SV") + self._usbdescriptors = RemoteUsbdescriptors(device, f"{self._cmd_syntax}:USBDEscriptors") + + @property + def acqmethod(self) -> RemoteAcqmethod: + """Return the ``REMOTE:ACQMethod`` command. + + Description: + - This command sets or queries whether the instrument continually acquires acquisitions + or acquires a single sequence. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:ACQMethod?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:ACQMethod?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:ACQMethod value`` command. + + SCPI Syntax: + ``` + - REMOTE:ACQMethod {CONTINuous|SINGLE|SEQuence} + - REMOTE:ACQMethod? + ``` + + Info: + - ``CONTINuous`` specifies that the instrument will continually acquire data if + ``:REMOTE:RUNStop`` is set to RUN. + - ``SINGLE`` specifies that the next acquisition will be a single-sequence acquisition + if ``:REMOTE:RUNStop`` is set to RUN. + - ``SEQuence`` specifies that the next acquisition will bea single-sequence acquisition + if ``REMOTE:ACQUIRE`` is set to 1. + """ + return self._acqmethod + + @property + def acqstatus(self) -> RemoteAcqstatus: + """Return the ``REMOTE:ACQStatus`` command. + + Description: + - This command queries the status of the remote scope acquisition. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:ACQStatus?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:ACQStatus?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:ACQStatus? + ``` + """ + return self._acqstatus + + @property + def acquire(self) -> RemoteAcquire: + """Return the ``REMOTE:ACQUIRE`` command. + + Description: + - This command acquires a single sequence on the specified remote Scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:ACQUIRE value`` command. + + SCPI Syntax: + ``` + - REMOTE:ACQUIRE + ``` + + Info: + - ```` specifies the Remote Scope. + """ + return self._acquire + + @property + def addnew(self) -> RemoteAddnew: + """Return the ``REMOTE:ADDNew`` command. + + Description: + - This command adds the specified remote scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:ADDNew value`` command. + + SCPI Syntax: + ``` + - REMOTE:ADDNew + ``` + + Info: + - ```` is the remote scope to add. The argument is of the form 'Scope' + where NR1 ≥ 1. + """ + return self._addnew + + @property + def comminter(self) -> RemoteComminter: + """Return the ``REMOTE:COMMInter`` command. + + Description: + - This command sets or queries communication Interface for remote connection. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:COMMInter?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:COMMInter?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:COMMInter value`` command. + + SCPI Syntax: + ``` + - REMOTE:COMMInter {Visa|Socket} + - REMOTE:COMMInter? + ``` + + Info: + - ``Visa`` sets the remote communication interface to Visa. + - ``Socket`` sets the remote communication interface to Socket. + """ + return self._comminter + + @property + def control(self) -> RemoteControl: + """Return the ``REMOTE:CONTROL`` command. + + Description: + - This command sets or queries control the settings on the remote scope. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:CONTROL?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:CONTROL?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:CONTROL value`` command. + + SCPI Syntax: + ``` + - REMOTE:CONTROL + - REMOTE:CONTROL? + ``` + + Info: + - ```` sets the control to 0 or 1. 0 sets the remote control to off. 1 sets the + remote control to on. + """ + return self._control + + @property + def delete(self) -> RemoteDelete: + """Return the ``REMOTE:DELEte`` command. + + Description: + - This command delete the specified remote scope. + + Usage: + - Using the ``.write(value)`` method will send the ``REMOTE:DELEte value`` command. + + SCPI Syntax: + ``` + - REMOTE:DELEte + ``` + + Info: + - ```` is the remote scope to delete. The argument is of the form 'Scope' + where NR1 ≥ 1. + """ + return self._delete + + @property + def logging(self) -> RemoteLogging: + """Return the ``REMOTE:LOGGING`` command. + + Description: + - This command sets or queries the act on event data logging feature. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:LOGGING?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:LOGGING?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:LOGGING value`` command. + + SCPI Syntax: + ``` + - REMOTE:LOGGING {START|PAUSE|STOP} + - REMOTE:LOGGING? + ``` + + Info: + - ``START`` specifies that the act on event data logging feature is started, if + ``REMOTE:ACQStatus`` is set to Acquire. + - ``PAUSE`` specifies that the act on event data logging feature is paused. + - ``STOP`` specifies that the act on event data logging feature is stopped. + """ + return self._logging + + @property + def numacq(self) -> RemoteNumacq: + """Return the ``REMOTE:NUMACq`` command. + + Description: + - This query-only command returns the number of waveform acquisitions that have occurred + since the last time acquisitions were stopped. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:NUMACq?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:NUMACq?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - REMOTE:NUMACq? + ``` + """ + return self._numacq + + @property + def s(self) -> Dict[int, RemoteSItem]: + """Return the ``REMOTE:S`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:S?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:S?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``REMOTE:S_CH`` command tree. + - ``.dch``: The ``REMOTE:S_DCH`` command tree. + """ + return self._s + + @property + def scope(self) -> Dict[int, RemoteScopeItem]: + """Return the ``REMOTE:SCOPe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SCOPe?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SCOPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``SCOPe`` specifies the remote scope number. + + Sub-properties: + - ``.bandwidth``: The ``REMOTE:SCOPe:BANDWidth`` command. + - ``.connect``: The ``REMOTE:SCOPe:CONNECT`` command. + - ``.connectionmessage``: The ``REMOTE:SCOPe:CONNECTIONMessage`` command. + - ``.connectionstate``: The ``REMOTE:SCOPe:CONNECTIONState`` command. + - ``.disconnect``: The ``REMOTE:SCOPe:DISCONNECT`` command. + - ``.horizontal``: The ``REMOTE:SCOPe:HORizontal`` command tree. + - ``.ipaddress``: The ``REMOTE:SCOPe:IPADDress`` command. + - ``.modelname``: The ``REMOTE:SCOPe:MODELname`` command. + - ``.port``: The ``REMOTE:SCOPe:PORT`` command. + - ``.sync``: The ``REMOTE:SCOPe:SYNC`` command. + - ``.state``: The ``REMOTE:SCOPe:State`` command. + - ``.visaconnectiontype``: The ``REMOTE:SCOPe:VISACONNectiontype`` command. + """ + return self._scope + + @property + def sequence(self) -> RemoteSequence: + """Return the ``REMOTE:SEQuence`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SEQuence?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SEQuence?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.current``: The ``REMOTE:SEQuence:CURrent`` command. + - ``.numsequence``: The ``REMOTE:SEQuence:NUMSEQuence`` command. + """ + return self._sequence + + @property + def sv(self) -> RemoteSv: + """Return the ``REMOTE:SV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:SV?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:SV?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.rbw``: The ``REMOTE:SV:RBW`` command. + - ``.rbwmode``: The ``REMOTE:SV:RBWMode`` command. + - ``.span``: The ``REMOTE:SV:SPAN`` command. + - ``.spanrbwratio``: The ``REMOTE:SV:SPANRBWRatio`` command. + - ``.window``: The ``REMOTE:SV:WINDOW`` command. + """ + return self._sv + + @property + def usbdescriptors(self) -> RemoteUsbdescriptors: + """Return the ``REMOTE:USBDEscriptors`` command. + + Description: + - This command sets or queries the USB descriptors available for remote connection. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE:USBDEscriptors?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE:USBDEscriptors?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REMOTE:USBDEscriptors value`` + command. + + SCPI Syntax: + ``` + - REMOTE:USBDEscriptors {Usb} + - REMOTE:USBDEscriptors? + ``` + + Info: + - ``Usb0`` sets the usb address of the first specified scope. + - ``Usb1`` sets the usb address of the second specified scope. + """ + return self._usbdescriptors diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/s.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/s.py new file mode 100644 index 00000000..ecbd84cb --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/s.py @@ -0,0 +1,990 @@ +"""The s commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - S_CH:BANdwidth:ACTUal? + - S_CH:CLIPping? + - S_CH:COUPling {AC|DC|DCREJ} + - S_CH:COUPling? + - S_CH:DESKew + - S_CH:DESKew? + - S_CH:LABel:COLor + - S_CH:LABel:FONT:BOLD {ON|OFF|} + - S_CH:LABel:FONT:ITALic {ON|OFF|} + - S_CH:LABel:FONT:SIZE + - S_CH:LABel:FONT:TYPE + - S_CH:LABel:FONT:UNDERline {ON|OFF|} + - S_CH:LABel:NAMe + - S_CH:LABel:NAMe? + - S_CH:LABel:XPOS + - S_CH:LABel:XPOS? + - S_CH:LABel:YPOS + - S_CH:LABel:YPOS? + - S_CH:OFFSet + - S_CH:OFFSet? + - S_CH:POSition + - S_CH:SCAle + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + ValidatedChannel, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class SItemChannelScale(SCPICmdWrite): + """The ``S_CH:SCAle`` command. + + Description: + - This command sets or returns the vertical scale for the specified remote scope analog + channel. The remote scope and the channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:SCAle value`` command. + + SCPI Syntax: + ``` + - S_CH:SCAle + ``` + + Info: + - ```` is the vertical scale for the specified analog channel. + """ + + +class SItemChannelPosition(SCPICmdWrite): + """The ``S_CH:POSition`` command. + + Description: + - This command sets or queries the vertical position for the specified analog channel. The + remote scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:POSition value`` command. + + SCPI Syntax: + ``` + - S_CH:POSition + ``` + + Info: + - ```` is the vertical position for the specified analog channel. + """ + + +class SItemChannelOffset(SCPICmdWrite, SCPICmdRead): + """The ``S_CH:OFFSet`` command. + + Description: + - This command sets or queries the vertical offset for the specified remote scope analog + channel. The remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:OFFSet?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:OFFSet value`` command. + + SCPI Syntax: + ``` + - S_CH:OFFSet + - S_CH:OFFSet? + ``` + + Info: + - ```` is the offset value for the specified remote scope analog channel. + """ + + +class SItemChannelLabelYpos(SCPICmdWrite, SCPICmdRead): + """The ``S_CH:LABel:YPOS`` command. + + Description: + - This command sets or queries the Y-position of the specified remote scope channel. The + remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel:YPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:LABel:YPOS value`` command. + + SCPI Syntax: + ``` + - S_CH:LABel:YPOS + - S_CH:LABel:YPOS? + ``` + + Info: + - ```` is the location (in pixels) where the waveform label for the selected channel is + displayed, relative to the baseline of the waveform. Positive values are above the + baseline and negative values are below. + """ + + +class SItemChannelLabelXpos(SCPICmdWrite, SCPICmdRead): + """The ``S_CH:LABel:XPOS`` command. + + Description: + - This command sets or queries the X-position of the specified remote scope channel. The + remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel:XPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:LABel:XPOS value`` command. + + SCPI Syntax: + ``` + - S_CH:LABel:XPOS + - S_CH:LABel:XPOS? + ``` + + Info: + - ```` is the location (in pixels) where the waveform label for the selected channel is + displayed, relative to the left edge of the screen. + """ + + +class SItemChannelLabelName(SCPICmdWrite, SCPICmdRead): + """The ``S_CH:LABel:NAMe`` command. + + Description: + - This command sets or queries the label attached to the displayed waveform for the + specified remote scope channel. The remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:LABel:NAMe value`` command. + + SCPI Syntax: + ``` + - S_CH:LABel:NAMe + - S_CH:LABel:NAMe? + ``` + + Info: + - ```` is an alphanumeric character string, ranging from 1 through 32 characters in + length. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SItemChannelLabelFontUnderline(SCPICmdWrite): + """The ``S_CH:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified channel label. The + channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:FONT:UNDERline value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:UNDERline {ON|OFF|} + ``` + + Info: + - ``OFF`` argument turns off underlined font. + - ``ON`` argument turns on underlined font. + - ```` = 0 turns off underlined font; any other value turns on underlined font. + """ + + +class SItemChannelLabelFontType(SCPICmdWrite): + """The ``S_CH:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified remote scope channel label, + such as Arial or Times New Roman. The remote scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:TYPE + ``` + + Info: + - ```` is the specified font type. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SItemChannelLabelFontSize(SCPICmdWrite): + """The ``S_CH:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified channel label. The remote + scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:SIZE + ``` + + Info: + - ```` is the font size. + """ + + +class SItemChannelLabelFontItalic(SCPICmdWrite): + """The ``S_CH:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified remote scope channel label. + The remote scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:ITALic {ON|OFF|} + ``` + + Info: + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + + +class SItemChannelLabelFontBold(SCPICmdWrite): + """The ``S_CH:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified remote scope channel label. + The remote scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:BOLD {ON|OFF|} + ``` + + Info: + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + + +class SItemChannelLabelFont(SCPICmdRead): + """The ``S_CH:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bold``: The ``S_CH:LABel:FONT:BOLD`` command. + - ``.italic``: The ``S_CH:LABel:FONT:ITALic`` command. + - ``.size``: The ``S_CH:LABel:FONT:SIZE`` command. + - ``.type``: The ``S_CH:LABel:FONT:TYPE`` command. + - ``.underline``: The ``S_CH:LABel:FONT:UNDERline`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = SItemChannelLabelFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = SItemChannelLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") + self._size = SItemChannelLabelFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = SItemChannelLabelFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = SItemChannelLabelFontUnderline(device, f"{self._cmd_syntax}:UNDERline") + + @property + def bold(self) -> SItemChannelLabelFontBold: + """Return the ``S_CH:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified remote scope channel + label. The remote scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:BOLD {ON|OFF|} + ``` + + Info: + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + return self._bold + + @property + def italic(self) -> SItemChannelLabelFontItalic: + """Return the ``S_CH:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified remote scope channel + label. The remote scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``S_CH:LABel:FONT:ITALic value`` command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:ITALic {ON|OFF|} + ``` + + Info: + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + return self._italic + + @property + def size(self) -> SItemChannelLabelFontSize: + """Return the ``S_CH:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified channel label. The remote + scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:SIZE + ``` + + Info: + - ```` is the font size. + """ + return self._size + + @property + def type(self) -> SItemChannelLabelFontType: + """Return the ``S_CH:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified remote scope channel + label, such as Arial or Times New Roman. The remote scope and channel is specified by + x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:TYPE + ``` + + Info: + - ```` is the specified font type. + """ + return self._type + + @property + def underline(self) -> SItemChannelLabelFontUnderline: + """Return the ``S_CH:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified channel label. The + channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``S_CH:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - S_CH:LABel:FONT:UNDERline {ON|OFF|} + ``` + + Info: + - ``OFF`` argument turns off underlined font. + - ``ON`` argument turns on underlined font. + - ```` = 0 turns off underlined font; any other value turns on underlined font. + """ + return self._underline + + +class SItemChannelLabelColor(SCPICmdWrite): + """The ``S_CH:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified remote scope channel label. The + remote scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:COLor value`` command. + + SCPI Syntax: + ``` + - S_CH:LABel:COLor + ``` + + Info: + - ```` is the label color. To return the color to the default color, send an empty + string as in this example: ``S1_CH5:LABEL:COLOR`` ''. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SItemChannelLabel(SCPICmdRead): + """The ``S_CH:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.color``: The ``S_CH:LABel:COLor`` command. + - ``.font``: The ``S_CH:LABel:FONT`` command tree. + - ``.name``: The ``S_CH:LABel:NAMe`` command. + - ``.xpos``: The ``S_CH:LABel:XPOS`` command. + - ``.ypos``: The ``S_CH:LABel:YPOS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._color = SItemChannelLabelColor(device, f"{self._cmd_syntax}:COLor") + self._font = SItemChannelLabelFont(device, f"{self._cmd_syntax}:FONT") + self._name = SItemChannelLabelName(device, f"{self._cmd_syntax}:NAMe") + self._xpos = SItemChannelLabelXpos(device, f"{self._cmd_syntax}:XPOS") + self._ypos = SItemChannelLabelYpos(device, f"{self._cmd_syntax}:YPOS") + + @property + def color(self) -> SItemChannelLabelColor: + """Return the ``S_CH:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified remote scope channel label. + The remote scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:COLor + ``` + + Info: + - ```` is the label color. To return the color to the default color, send an + empty string as in this example: ``S1_CH5:LABEL:COLOR`` ''. + """ + return self._color + + @property + def font(self) -> SItemChannelLabelFont: + """Return the ``S_CH:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bold``: The ``S_CH:LABel:FONT:BOLD`` command. + - ``.italic``: The ``S_CH:LABel:FONT:ITALic`` command. + - ``.size``: The ``S_CH:LABel:FONT:SIZE`` command. + - ``.type``: The ``S_CH:LABel:FONT:TYPE`` command. + - ``.underline``: The ``S_CH:LABel:FONT:UNDERline`` command. + """ + return self._font + + @property + def name(self) -> SItemChannelLabelName: + """Return the ``S_CH:LABel:NAMe`` command. + + Description: + - This command sets or queries the label attached to the displayed waveform for the + specified remote scope channel. The remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:NAMe + - S_CH:LABel:NAMe? + ``` + + Info: + - ```` is an alphanumeric character string, ranging from 1 through 32 + characters in length. + """ + return self._name + + @property + def xpos(self) -> SItemChannelLabelXpos: + """Return the ``S_CH:LABel:XPOS`` command. + + Description: + - This command sets or queries the X-position of the specified remote scope channel. The + remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel:XPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:LABel:XPOS value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:XPOS + - S_CH:LABel:XPOS? + ``` + + Info: + - ```` is the location (in pixels) where the waveform label for the selected + channel is displayed, relative to the left edge of the screen. + """ + return self._xpos + + @property + def ypos(self) -> SItemChannelLabelYpos: + """Return the ``S_CH:LABel:YPOS`` command. + + Description: + - This command sets or queries the Y-position of the specified remote scope channel. The + remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel:YPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:LABel:YPOS value`` + command. + + SCPI Syntax: + ``` + - S_CH:LABel:YPOS + - S_CH:LABel:YPOS? + ``` + + Info: + - ```` is the location (in pixels) where the waveform label for the selected + channel is displayed, relative to the baseline of the waveform. Positive values are + above the baseline and negative values are below. + """ + return self._ypos + + +class SItemChannelDeskew(SCPICmdWrite, SCPICmdRead): + """The ``S_CH:DESKew`` command. + + Description: + - This command sets or queries the horizontal deskew time for the specified channel. The + remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:DESKew?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:DESKew?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:DESKew value`` command. + + SCPI Syntax: + ``` + - S_CH:DESKew + - S_CH:DESKew? + ``` + + Info: + - ```` is the deskew time for this channel, ranging from -125 ns to +125 ns with a + resolution of 40 ps. Out-of-range values are clipped. + """ + + +class SItemChannelCoupling(SCPICmdWrite, SCPICmdRead): + """The ``S_CH:COUPling`` command. + + Description: + - This command sets or queries the input coupling setting for the specified remote scope + analog channel. The remote scope and the channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:COUPling?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:COUPling?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:COUPling value`` command. + + SCPI Syntax: + ``` + - S_CH:COUPling {AC|DC|DCREJ} + - S_CH:COUPling? + ``` + + Info: + - ``AC`` sets the specified channel to AC coupling. + - ``DC`` sets the specified channel to DC coupling. + - ``DCREJect`` sets DC Reject coupling when probes are attached that support that feature. + """ + + +class SItemChannelClipping(SCPICmdRead): + """The ``S_CH:CLIPping`` command. + + Description: + - Queries whether the specified remote scope channel's input signal is clipping (exceeding) + the channel A/D converter range. The remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:CLIPping?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:CLIPping?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - S_CH:CLIPping? + ``` + """ + + +class SItemChannelBandwidthActual(SCPICmdRead): + """The ``S_CH:BANdwidth:ACTUal`` command. + + Description: + - Queries whether the actual bandwidth of the specified remote scope channel. The remote + scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:BANdwidth:ACTUal?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:BANdwidth:ACTUal?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - S_CH:BANdwidth:ACTUal? + ``` + """ + + +class SItemChannelBandwidth(SCPICmdRead): + """The ``S_CH:BANdwidth`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:BANdwidth?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:BANdwidth?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.actual``: The ``S_CH:BANdwidth:ACTUal`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._actual = SItemChannelBandwidthActual(device, f"{self._cmd_syntax}:ACTUal") + + @property + def actual(self) -> SItemChannelBandwidthActual: + """Return the ``S_CH:BANdwidth:ACTUal`` command. + + Description: + - Queries whether the actual bandwidth of the specified remote scope channel. The remote + scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:BANdwidth:ACTUal?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:BANdwidth:ACTUal?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - S_CH:BANdwidth:ACTUal? + ``` + """ + return self._actual + + +# pylint: disable=too-many-instance-attributes +class SItemChannel(ValidatedChannel, SCPICmdRead): + """The ``S_CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S_CH?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bandwidth``: The ``S_CH:BANdwidth`` command tree. + - ``.clipping``: The ``S_CH:CLIPping`` command. + - ``.coupling``: The ``S_CH:COUPling`` command. + - ``.deskew``: The ``S_CH:DESKew`` command. + - ``.label``: The ``S_CH:LABel`` command tree. + - ``.offset``: The ``S_CH:OFFSet`` command. + - ``.position``: The ``S_CH:POSition`` command. + - ``.scale``: The ``S_CH:SCAle`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bandwidth = SItemChannelBandwidth(device, f"{self._cmd_syntax}:BANdwidth") + self._clipping = SItemChannelClipping(device, f"{self._cmd_syntax}:CLIPping") + self._coupling = SItemChannelCoupling(device, f"{self._cmd_syntax}:COUPling") + self._deskew = SItemChannelDeskew(device, f"{self._cmd_syntax}:DESKew") + self._label = SItemChannelLabel(device, f"{self._cmd_syntax}:LABel") + self._offset = SItemChannelOffset(device, f"{self._cmd_syntax}:OFFSet") + self._position = SItemChannelPosition(device, f"{self._cmd_syntax}:POSition") + self._scale = SItemChannelScale(device, f"{self._cmd_syntax}:SCAle") + + @property + def bandwidth(self) -> SItemChannelBandwidth: + """Return the ``S_CH:BANdwidth`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:BANdwidth?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:BANdwidth?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.actual``: The ``S_CH:BANdwidth:ACTUal`` command. + """ + return self._bandwidth + + @property + def clipping(self) -> SItemChannelClipping: + """Return the ``S_CH:CLIPping`` command. + + Description: + - Queries whether the specified remote scope channel's input signal is clipping + (exceeding) the channel A/D converter range. The remote scope and channel is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:CLIPping?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:CLIPping?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - S_CH:CLIPping? + ``` + """ + return self._clipping + + @property + def coupling(self) -> SItemChannelCoupling: + """Return the ``S_CH:COUPling`` command. + + Description: + - This command sets or queries the input coupling setting for the specified remote scope + analog channel. The remote scope and the channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:COUPling?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:COUPling?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:COUPling value`` + command. + + SCPI Syntax: + ``` + - S_CH:COUPling {AC|DC|DCREJ} + - S_CH:COUPling? + ``` + + Info: + - ``AC`` sets the specified channel to AC coupling. + - ``DC`` sets the specified channel to DC coupling. + - ``DCREJect`` sets DC Reject coupling when probes are attached that support that + feature. + """ + return self._coupling + + @property + def deskew(self) -> SItemChannelDeskew: + """Return the ``S_CH:DESKew`` command. + + Description: + - This command sets or queries the horizontal deskew time for the specified channel. The + remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:DESKew?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:DESKew?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:DESKew value`` command. + + SCPI Syntax: + ``` + - S_CH:DESKew + - S_CH:DESKew? + ``` + + Info: + - ```` is the deskew time for this channel, ranging from -125 ns to +125 ns with a + resolution of 40 ps. Out-of-range values are clipped. + """ + return self._deskew + + @property + def label(self) -> SItemChannelLabel: + """Return the ``S_CH:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.color``: The ``S_CH:LABel:COLor`` command. + - ``.font``: The ``S_CH:LABel:FONT`` command tree. + - ``.name``: The ``S_CH:LABel:NAMe`` command. + - ``.xpos``: The ``S_CH:LABel:XPOS`` command. + - ``.ypos``: The ``S_CH:LABel:YPOS`` command. + """ + return self._label + + @property + def offset(self) -> SItemChannelOffset: + """Return the ``S_CH:OFFSet`` command. + + Description: + - This command sets or queries the vertical offset for the specified remote scope analog + channel. The remote scope and channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``S_CH:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH:OFFSet?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``S_CH:OFFSet value`` command. + + SCPI Syntax: + ``` + - S_CH:OFFSet + - S_CH:OFFSet? + ``` + + Info: + - ```` is the offset value for the specified remote scope analog channel. + """ + return self._offset + + @property + def position(self) -> SItemChannelPosition: + """Return the ``S_CH:POSition`` command. + + Description: + - This command sets or queries the vertical position for the specified analog channel. + The remote scope and channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:POSition value`` + command. + + SCPI Syntax: + ``` + - S_CH:POSition + ``` + + Info: + - ```` is the vertical position for the specified analog channel. + """ + return self._position + + @property + def scale(self) -> SItemChannelScale: + """Return the ``S_CH:SCAle`` command. + + Description: + - This command sets or returns the vertical scale for the specified remote scope analog + channel. The remote scope and the channel is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``S_CH:SCAle value`` command. + + SCPI Syntax: + ``` + - S_CH:SCAle + ``` + + Info: + - ```` is the vertical scale for the specified analog channel. + """ + return self._scale + + +class SItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``S`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S?`` query. + - Using the ``.verify(value)`` method will send the ``S?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``S_CH`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "S") -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, SItemChannel] = DefaultDictPassKeyToFactory( + lambda x: SItemChannel(device, f"{self._cmd_syntax}_CH{x}") + ) + + @property + def ch(self) -> Dict[int, SItemChannel]: + """Return the ``S_CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S_CH?`` query. + - Using the ``.verify(value)`` method will send the ``S_CH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bandwidth``: The ``S_CH:BANdwidth`` command tree. + - ``.clipping``: The ``S_CH:CLIPping`` command. + - ``.coupling``: The ``S_CH:COUPling`` command. + - ``.deskew``: The ``S_CH:DESKew`` command. + - ``.label``: The ``S_CH:LABel`` command tree. + - ``.offset``: The ``S_CH:OFFSet`` command. + - ``.position``: The ``S_CH:POSition`` command. + - ``.scale``: The ``S_CH:SCAle`` command. + """ + return self._ch diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/save.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/save.py new file mode 100644 index 00000000..f4ac9fc3 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/save.py @@ -0,0 +1,1275 @@ +# pylint: disable=line-too-long +"""The save commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - SAVe:EVENTtable:BUS + - SAVe:EVENTtable:CUSTom + - SAVe:EVENTtable:CUSTom:COMMents + - SAVe:EVENTtable:CUSTom:COMMents? + - SAVe:EVENTtable:CUSTom:DATAFormat [SCIentific|ENGineering] + - SAVe:EVENTtable:CUSTom:DATAFormat? + - SAVe:EVENTtable:CUSTom:INCLUDEREFs {1|0} + - SAVe:EVENTtable:CUSTom:INCLUDEREFs? + - SAVe:EVENTtable:MEASUrement + - SAVe:EVENTtable:PEAKS + - SAVe:EVENTtable:SEARCHTable + - SAVe:IMAGe + - SAVe:IMAGe:COMPosition {NORMal|INVErted} + - SAVe:IMAGe:COMPosition? + - SAVe:IMAGe:VIEWTYpe {FULLScreen} + - SAVe:IMAGe:VIEWTYpe? + - SAVe:PLOTData + - SAVe:REPOrt + - SAVe:REPOrt:COMMents + - SAVe:REPOrt:COMMents? + - SAVe:SESsion + - SAVe:SETUp + - SAVe:SETUp:INCLUDEREFs {OFF|ON|0|1} + - SAVe:SETUp:INCLUDEREFs? + - SAVe:WAVEform {CH[_DALL|_SV_NORMal|_SV_AVErage|_SV_MAXHold| _SV_MINHold|_MAG_VS_TIME|_FREQ_VS_TIME| _PHASE_VS_TIME]|MATH|REF|ALL| }, + - SAVe:WAVEform:GATing {NONe|CURSors|SCREEN|RESAMPLE|SELected} + - SAVe:WAVEform:GATing:RESAMPLErate + - SAVe:WAVEform:GATing:RESAMPLErate? + - SAVe:WAVEform:GATing? + - SAVe:WAVEform:SOURCELIst? + ``` +""" # noqa: E501 + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class SaveWaveformSourcelist(SCPICmdRead): + """The ``SAVe:WAVEform:SOURCELIst`` command. + + Description: + - This query returns a list of the available waveforms that can be specified as the source + for the ``SAVe:WAVEform`` command. Source waveforms must have their display mode set to On + to appear in this list and to be saved. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:SOURCELIst?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:WAVEform:SOURCELIst?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SAVe:WAVEform:SOURCELIst? + ``` + """ + + +class SaveWaveformGatingResamplerate(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:WAVEform:GATing:RESAMPLErate`` command. + + Description: + - This command saves the waveform data at a sample interval. The resulting saved waveform is + a resampled version of the original waveform with fewer data points. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:GATing:RESAMPLErate?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:WAVEform:GATing:RESAMPLErate?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVe:WAVEform:GATing:RESAMPLErate value`` command. + + SCPI Syntax: + ``` + - SAVe:WAVEform:GATing:RESAMPLErate + - SAVe:WAVEform:GATing:RESAMPLErate? + ``` + + Info: + - ```` specifies the resample interval. + """ + + +class SaveWaveformGating(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:WAVEform:GATing`` command. + + Description: + - This command specifies the method to save a specified part of the waveform data or the + entire 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|RESAMPLE|SELected} + - SAVe:WAVEform:GATing? + ``` + + Info: + - ``NONe`` saves the full waveform data. + - ``CURSors`` saves the waveform data located between the vertical cursors. + - ``SCREEN`` saves the waveform data that is on the screen. Nothing outside the waveform + will be saved. + - ``RESAMPLE`` saves the waveform data at a sample interval set by the user. The resulting + saved waveform is a resampled version of the original waveform with fewer data points. + - ``SELected`` saves the data from the currently selected history or FastFrame acquisition. + + Properties: + - ``.resamplerate``: The ``SAVe:WAVEform:GATing:RESAMPLErate`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._resamplerate = SaveWaveformGatingResamplerate( + device, f"{self._cmd_syntax}:RESAMPLErate" + ) + + @property + def resamplerate(self) -> SaveWaveformGatingResamplerate: + """Return the ``SAVe:WAVEform:GATing:RESAMPLErate`` command. + + Description: + - This command saves the waveform data at a sample interval. The resulting saved + waveform is a resampled version of the original waveform with fewer data points. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:GATing:RESAMPLErate?`` + query. + - Using the ``.verify(value)`` method will send the + ``SAVe:WAVEform:GATing:RESAMPLErate?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVe:WAVEform:GATing:RESAMPLErate value`` command. + + SCPI Syntax: + ``` + - SAVe:WAVEform:GATing:RESAMPLErate + - SAVe:WAVEform:GATing:RESAMPLErate? + ``` + + Info: + - ```` specifies the resample interval. + """ + return self._resamplerate + + +class SaveWaveform(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:WAVEform`` command. + + Description: + - This command 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 {CH[_DALL|_SV_NORMal|_SV_AVErage|_SV_MAXHold| _SV_MINHold|_MAG_VS_TIME|_FREQ_VS_TIME| _PHASE_VS_TIME]|MATH|REF|ALL| }, + ``` + + Info: + - ```` is the number of the analog channel, math, or reference waveform source used to + save the waveform data. + - ``_DALL`` saves the digital channel waveform data of the specified channel. + - ``_SV_NORMal`` saves the Normal Spectrum view waveform of the specified channel. + - ``_SV_AVErage`` saves the Average Spectrum view waveform of the specified channel. + - ``_SV_MAXHold`` saves the Maximum Hold Spectrum view waveform of the specified channel. + - ``_SV_MINHold`` saves the Minimum Hold Spectrum view waveform of the specified channel. + - ``_MAG_VS_TIME`` saves the Magnitude vs. + - ``_FREQ_VS_TIME`` saves the Freuency vs. + - ``_PHASE_VS_TIME`` saves the Phase vs. + - ``_SV_BASEBAND_IQ`` saves the baseband I & Q data of the specified channel. + - ``ALL`` saves all displayed analog, math, and reference waveforms to individual files. + - ```` is a quoted string that defines the path and file name to use to save the + specified file, in the format '[]`` uses the form '/. + - ```` sets the file name to use to create the file. + - ``<.ext>`` sets the file format to which to save the data. + + Properties: + - ``.gating``: The ``SAVe:WAVEform:GATing`` command. + - ``.sourcelist``: The ``SAVe:WAVEform:SOURCELIst`` command. + """ # noqa: E501 + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._gating = SaveWaveformGating(device, f"{self._cmd_syntax}:GATing") + self._sourcelist = SaveWaveformSourcelist(device, f"{self._cmd_syntax}:SOURCELIst") + + @property + def gating(self) -> SaveWaveformGating: + """Return the ``SAVe:WAVEform:GATing`` command. + + Description: + - This command specifies the method to save a specified part of the waveform data or the + entire 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|RESAMPLE|SELected} + - SAVe:WAVEform:GATing? + ``` + + Info: + - ``NONe`` saves the full waveform data. + - ``CURSors`` saves the waveform data located between the vertical cursors. + - ``SCREEN`` saves the waveform data that is on the screen. Nothing outside the waveform + will be saved. + - ``RESAMPLE`` saves the waveform data at a sample interval set by the user. The + resulting saved waveform is a resampled version of the original waveform with fewer + data points. + - ``SELected`` saves the data from the currently selected history or FastFrame + acquisition. + + Sub-properties: + - ``.resamplerate``: The ``SAVe:WAVEform:GATing:RESAMPLErate`` command. + """ + return self._gating + + @property + def sourcelist(self) -> SaveWaveformSourcelist: + """Return the ``SAVe:WAVEform:SOURCELIst`` command. + + Description: + - This query returns a list of the available waveforms that can be specified as the + source for the ``SAVe:WAVEform`` command. Source waveforms must have their display + mode set to On to appear in this list and to be saved. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:SOURCELIst?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:WAVEform:SOURCELIst?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SAVe:WAVEform:SOURCELIst? + ``` + """ + return self._sourcelist + + +class SaveSetupIncluderefs(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:SETUp:INCLUDEREFs`` command. + + Description: + - This command sets or queries whether displayed reference waveforms are to be included in + saved setups. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:SETUp:INCLUDEREFs?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:SETUp:INCLUDEREFs?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:SETUp:INCLUDEREFs value`` command. + + SCPI Syntax: + ``` + - SAVe:SETUp:INCLUDEREFs {OFF|ON|0|1} + - SAVe:SETUp:INCLUDEREFs? + ``` + + Info: + - ``OFF`` specifies not including displayed reference waveforms in saved setups. + - ``ON`` specifies including displayed reference waveforms in saved setups. + - ``0`` specifies not including displayed reference waveforms in saved setups. + - ``1`` specifies including displayed reference waveforms in saved setups. + """ + + +class SaveSetup(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:SETUp`` command. + + Description: + - Saves the current instrument state to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:SETUp value`` command. + + SCPI Syntax: + ``` + - SAVe:SETUp + ``` + + Info: + - ```` is a quoted string that is the complete path specification. If a file name + or path is specified, the file is expected to be located in a directory relative to the + current working directory (specified by ``FILESYSTEM:CWD``) unless a complete path is + specified. + + Properties: + - ``.includerefs``: The ``SAVe:SETUp:INCLUDEREFs`` command. + """ + + _WRAP_ARG_WITH_QUOTES = True + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._includerefs = SaveSetupIncluderefs(device, f"{self._cmd_syntax}:INCLUDEREFs") + + @property + def includerefs(self) -> SaveSetupIncluderefs: + """Return the ``SAVe:SETUp:INCLUDEREFs`` command. + + Description: + - This command sets or queries whether displayed reference waveforms are to be included + in saved setups. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:SETUp:INCLUDEREFs?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:SETUp:INCLUDEREFs?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:SETUp:INCLUDEREFs value`` + command. + + SCPI Syntax: + ``` + - SAVe:SETUp:INCLUDEREFs {OFF|ON|0|1} + - SAVe:SETUp:INCLUDEREFs? + ``` + + Info: + - ``OFF`` specifies not including displayed reference waveforms in saved setups. + - ``ON`` specifies including displayed reference waveforms in saved setups. + - ``0`` specifies not including displayed reference waveforms in saved setups. + - ``1`` specifies including displayed reference waveforms in saved setups. + """ + return self._includerefs + + +class SaveSession(SCPICmdWrite): + """The ``SAVe:SESsion`` command. + + Description: + - Saves the state of the instrument, including reference waveforms, to a saved session file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:SESsion value`` command. + + SCPI Syntax: + ``` + - SAVe:SESsion + ``` + + Info: + - ```` is the file path that specifies the location to save the specified + instrument session file. If a file name or path is specified, the file is expected to be + located in a directory relative to the current working directory (specified by. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SaveReportComments(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:REPOrt:COMMents`` command. + + Description: + - This command sets or queries the comments to be included in saved report files. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:REPOrt:COMMents?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:REPOrt:COMMents?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:REPOrt:COMMents value`` command. + + SCPI Syntax: + ``` + - SAVe:REPOrt:COMMents + - SAVe:REPOrt:COMMents? + ``` + + Info: + - ```` is the comments to be included in saved report files. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SaveReport(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:REPOrt`` command. + + Description: + - This command saves a report to the specified file. Supported report formats are PDF and + MHT (web page archive file). + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:REPOrt value`` command. + + SCPI Syntax: + ``` + - SAVe:REPOrt + ``` + + Info: + - ```` is the complete path specification. When specifying the file name with this + command, use the correct file extension (.pdf for PDF format, or .mht for MHT format). + + Properties: + - ``.comments``: The ``SAVe:REPOrt:COMMents`` command. + """ + + _WRAP_ARG_WITH_QUOTES = True + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._comments = SaveReportComments(device, f"{self._cmd_syntax}:COMMents") + + @property + def comments(self) -> SaveReportComments: + """Return the ``SAVe:REPOrt:COMMents`` command. + + Description: + - This command sets or queries the comments to be included in saved report files. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:REPOrt:COMMents?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:REPOrt:COMMents?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:REPOrt:COMMents value`` + command. + + SCPI Syntax: + ``` + - SAVe:REPOrt:COMMents + - SAVe:REPOrt:COMMents? + ``` + + Info: + - ```` is the comments to be included in saved report files. + """ + return self._comments + + +class SavePlotdata(SCPICmdWrite): + """The ``SAVe:PLOTData`` command. + + Description: + - Saves the plot data of the currently selected plot to a specified file. Supported file + format is CSV. When specifying the file name with this command, use the correct file + extension (.CSV). If a file name or path is specified, the file is expected to be located + in a directory relative to the current working directory (specified by ``FILESYSTEM:CWD``) + unless a complete path is specified. If the file argument begins with a drive designator + (such as C:), then the file name is interpreted as a full path. If the file argument + begins with '.' or '', or has a file path separator appearing anywhere other than the + first character position, then the file name is treated as a path that is relative to the + current working directory. To export an eye diagram plot data to a .csv file, the + prerequisite command is ``MEASUrement:ADDMEAS TIE`` + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:PLOTData value`` command. + + SCPI Syntax: + ``` + - SAVe:PLOTData + ``` + + Info: + - ```` sets the file name and location used to store the plot data. + """ + + +class SaveImageViewtype(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:IMAGe:VIEWTYpe`` command. + + Description: + - Sets or queries the view type for saved images. Currently only FULLScreen is supported. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:VIEWTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:VIEWTYpe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:VIEWTYpe value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:VIEWTYpe {FULLScreen} + - SAVe:IMAGe:VIEWTYpe? + ``` + + Info: + - ``FULLScreen`` sets the screen capture mode to capture the full screen. + """ + + +class SaveImageComposition(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:IMAGe:COMPosition`` command. + + Description: + - Sets or queries the color mode for saved images (normal or inverted). + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:COMPosition?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:COMPosition?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:COMPosition value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:COMPosition {NORMal|INVErted} + - SAVe:IMAGe:COMPosition? + ``` + + Info: + - ``NORMal`` Sets the saved screen capture to Normal colors. + - ``INVErted`` sets the saved screen capture to Inverted colors. + """ + + +class SaveImage(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:IMAGe`` command. + + Description: + - Saves a capture of the screen contents to the specified image file. Supported image + formats are PNG, Windows Bitmap, and JPEG. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe + ``` + + Info: + - ```` is the file name and location used to store the image file. + + Properties: + - ``.composition``: The ``SAVe:IMAGe:COMPosition`` command. + - ``.viewtype``: The ``SAVe:IMAGe:VIEWTYpe`` command. + """ + + _WRAP_ARG_WITH_QUOTES = True + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._composition = SaveImageComposition(device, f"{self._cmd_syntax}:COMPosition") + self._viewtype = SaveImageViewtype(device, f"{self._cmd_syntax}:VIEWTYpe") + + @property + def composition(self) -> SaveImageComposition: + """Return the ``SAVe:IMAGe:COMPosition`` command. + + Description: + - Sets or queries the color mode for saved images (normal or inverted). + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:COMPosition?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:COMPosition?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:COMPosition value`` + command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:COMPosition {NORMal|INVErted} + - SAVe:IMAGe:COMPosition? + ``` + + Info: + - ``NORMal`` Sets the saved screen capture to Normal colors. + - ``INVErted`` sets the saved screen capture to Inverted colors. + """ + return self._composition + + @property + def viewtype(self) -> SaveImageViewtype: + """Return the ``SAVe:IMAGe:VIEWTYpe`` command. + + Description: + - Sets or queries the view type for saved images. Currently only FULLScreen is + supported. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:VIEWTYpe?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:VIEWTYpe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:VIEWTYpe value`` + command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:VIEWTYpe {FULLScreen} + - SAVe:IMAGe:VIEWTYpe? + ``` + + Info: + - ``FULLScreen`` sets the screen capture mode to capture the full screen. + """ + return self._viewtype + + +class SaveEventtableSearchtable(SCPICmdWrite): + """The ``SAVe:EVENTtable:SEARCHTable`` command. + + Description: + - This command saves a search results table to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:SEARCHTable value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:SEARCHTable + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory (specified + by ``FILESYSTEM:CWD``) unless a complete path is specified. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SaveEventtablePeaks(SCPICmdWrite): + """The ``SAVe:EVENTtable:PEAKS`` command. + + Description: + - This command saves peak markers results table to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:PEAKS value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:PEAKS + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory (specified + by ``FILESYSTEM:CWD``) unless a complete path is specified. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SaveEventtableMeasurement(SCPICmdWrite): + """The ``SAVe:EVENTtable:MEASUrement`` command. + + Description: + - This command saves data (measurement) results to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:MEASUrement value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:MEASUrement + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory (specified + by ``FILESYSTEM:CWD``) unless a complete path is specified. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SaveEventtableCustomIncluderefs(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:EVENTtable:CUSTom:INCLUDEREFs`` command. + + Description: + - This command sets or queries whether to include displayed reference waveforms with saved + results table files. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:EVENTtable:CUSTom:INCLUDEREFs?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:EVENTtable:CUSTom:INCLUDEREFs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVe:EVENTtable:CUSTom:INCLUDEREFs value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:CUSTom:INCLUDEREFs {1|0} + - SAVe:EVENTtable:CUSTom:INCLUDEREFs? + ``` + + Info: + - ``1`` sets the instrument to save all displayed reference waveforms as part of a saved + results table file. + - ``0`` sets the instrument to not save all displayed reference waveforms as part of a saved + results table file. + """ + + +class SaveEventtableCustomDataformat(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:EVENTtable:CUSTom:DATAFormat`` command. + + Description: + - This command sets or queries the data format to use for saving results table data. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:EVENTtable:CUSTom:DATAFormat?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:EVENTtable:CUSTom:DATAFormat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVe:EVENTtable:CUSTom:DATAFormat value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:CUSTom:DATAFormat [SCIentific|ENGineering] + - SAVe:EVENTtable:CUSTom:DATAFormat? + ``` + + Info: + - ``SCIentific`` sets the instrument to save results tables data in scientific notation (for + example, 5.0100E-12). + - ``ENGineering`` sets the instrument to save results tables data in engineering notation + (for example, 5.0100ps). + """ + + +class SaveEventtableCustomComments(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:EVENTtable:CUSTom:COMMents`` command. + + Description: + - This command sets or queries comments to be included in saved results table files. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:EVENTtable:CUSTom:COMMents?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:EVENTtable:CUSTom:COMMents?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:CUSTom:COMMents value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:CUSTom:COMMents + - SAVe:EVENTtable:CUSTom:COMMents? + ``` + + Info: + - ```` sets the instrument to save the quoted string as a comment in the saved + results table file. + """ + + +class SaveEventtableCustom(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:EVENTtable:CUSTom`` command. + + Description: + - This command saves the results table to the specified file path and name. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:CUSTom value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:CUSTom + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory (specified + by ``FILESYSTEM:CWD``) unless a complete path is specified. + + Properties: + - ``.comments``: The ``SAVe:EVENTtable:CUSTom:COMMents`` command. + - ``.dataformat``: The ``SAVe:EVENTtable:CUSTom:DATAFormat`` command. + - ``.includerefs``: The ``SAVe:EVENTtable:CUSTom:INCLUDEREFs`` command. + """ + + _WRAP_ARG_WITH_QUOTES = True + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._comments = SaveEventtableCustomComments(device, f"{self._cmd_syntax}:COMMents") + self._dataformat = SaveEventtableCustomDataformat(device, f"{self._cmd_syntax}:DATAFormat") + self._includerefs = SaveEventtableCustomIncluderefs( + device, f"{self._cmd_syntax}:INCLUDEREFs" + ) + + @property + def comments(self) -> SaveEventtableCustomComments: + """Return the ``SAVe:EVENTtable:CUSTom:COMMents`` command. + + Description: + - This command sets or queries comments to be included in saved results table files. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:EVENTtable:CUSTom:COMMents?`` + query. + - Using the ``.verify(value)`` method will send the ``SAVe:EVENTtable:CUSTom:COMMents?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVe:EVENTtable:CUSTom:COMMents value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:CUSTom:COMMents + - SAVe:EVENTtable:CUSTom:COMMents? + ``` + + Info: + - ```` sets the instrument to save the quoted string as a comment in the saved + results table file. + """ + return self._comments + + @property + def dataformat(self) -> SaveEventtableCustomDataformat: + """Return the ``SAVe:EVENTtable:CUSTom:DATAFormat`` command. + + Description: + - This command sets or queries the data format to use for saving results table data. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:EVENTtable:CUSTom:DATAFormat?`` + query. + - Using the ``.verify(value)`` method will send the + ``SAVe:EVENTtable:CUSTom:DATAFormat?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVe:EVENTtable:CUSTom:DATAFormat value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:CUSTom:DATAFormat [SCIentific|ENGineering] + - SAVe:EVENTtable:CUSTom:DATAFormat? + ``` + + Info: + - ``SCIentific`` sets the instrument to save results tables data in scientific notation + (for example, 5.0100E-12). + - ``ENGineering`` sets the instrument to save results tables data in engineering + notation (for example, 5.0100ps). + """ + return self._dataformat + + @property + def includerefs(self) -> SaveEventtableCustomIncluderefs: + """Return the ``SAVe:EVENTtable:CUSTom:INCLUDEREFs`` command. + + Description: + - This command sets or queries whether to include displayed reference waveforms with + saved results table files. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:EVENTtable:CUSTom:INCLUDEREFs?`` + query. + - Using the ``.verify(value)`` method will send the + ``SAVe:EVENTtable:CUSTom:INCLUDEREFs?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVe:EVENTtable:CUSTom:INCLUDEREFs value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:CUSTom:INCLUDEREFs {1|0} + - SAVe:EVENTtable:CUSTom:INCLUDEREFs? + ``` + + Info: + - ``1`` sets the instrument to save all displayed reference waveforms as part of a saved + results table file. + - ``0`` sets the instrument to not save all displayed reference waveforms as part of a + saved results table file. + """ + return self._includerefs + + +class SaveEventtableBus(SCPICmdWrite): + """The ``SAVe:EVENTtable:BUS`` command. + + Description: + - This command saves bus results table to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:BUS value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:BUS + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory (specified + by ``FILESYSTEM:CWD``) unless a complete path is specified. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +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. + - ``.custom``: The ``SAVe:EVENTtable:CUSTom`` command. + - ``.measurement``: The ``SAVe:EVENTtable:MEASUrement`` command. + - ``.peaks``: The ``SAVe:EVENTtable:PEAKS`` command. + - ``.searchtable``: The ``SAVe:EVENTtable:SEARCHTable`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bus = SaveEventtableBus(device, f"{self._cmd_syntax}:BUS") + self._custom = SaveEventtableCustom(device, f"{self._cmd_syntax}:CUSTom") + self._measurement = SaveEventtableMeasurement(device, f"{self._cmd_syntax}:MEASUrement") + self._peaks = SaveEventtablePeaks(device, f"{self._cmd_syntax}:PEAKS") + self._searchtable = SaveEventtableSearchtable(device, f"{self._cmd_syntax}:SEARCHTable") + + @property + def bus(self) -> SaveEventtableBus: + """Return the ``SAVe:EVENTtable:BUS`` command. + + Description: + - This command saves bus results table to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:BUS value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:BUS + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory + (specified by ``FILESYSTEM:CWD``) unless a complete path is specified. + """ + return self._bus + + @property + def custom(self) -> SaveEventtableCustom: + """Return the ``SAVe:EVENTtable:CUSTom`` command. + + Description: + - This command saves the results table to the specified file path and name. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:CUSTom value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:CUSTom + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory + (specified by ``FILESYSTEM:CWD``) unless a complete path is specified. + + Sub-properties: + - ``.comments``: The ``SAVe:EVENTtable:CUSTom:COMMents`` command. + - ``.dataformat``: The ``SAVe:EVENTtable:CUSTom:DATAFormat`` command. + - ``.includerefs``: The ``SAVe:EVENTtable:CUSTom:INCLUDEREFs`` command. + """ + return self._custom + + @property + def measurement(self) -> SaveEventtableMeasurement: + """Return the ``SAVe:EVENTtable:MEASUrement`` command. + + Description: + - This command saves data (measurement) results to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:MEASUrement value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:MEASUrement + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory + (specified by ``FILESYSTEM:CWD``) unless a complete path is specified. + """ + return self._measurement + + @property + def peaks(self) -> SaveEventtablePeaks: + """Return the ``SAVe:EVENTtable:PEAKS`` command. + + Description: + - This command saves peak markers results table to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:PEAKS value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:PEAKS + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory + (specified by ``FILESYSTEM:CWD``) unless a complete path is specified. + """ + return self._peaks + + @property + def searchtable(self) -> SaveEventtableSearchtable: + """Return the ``SAVe:EVENTtable:SEARCHTable`` command. + + Description: + - This command saves a search results table to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:SEARCHTable value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:SEARCHTable + ``` + + Info: + - ```` is the specified file. If a file name or path is specified, the file is + expected to be located in a directory relative to the current working directory + (specified by ``FILESYSTEM:CWD``) unless a complete path is specified. + """ + return self._searchtable + + +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: + - ``.eventtable``: The ``SAVe:EVENTtable`` command tree. + - ``.image``: The ``SAVe:IMAGe`` command. + - ``.plotdata``: The ``SAVe:PLOTData`` command. + - ``.report``: The ``SAVe:REPOrt`` command. + - ``.session``: The ``SAVe:SESsion`` command. + - ``.setup``: The ``SAVe:SETUp`` command. + - ``.waveform``: The ``SAVe:WAVEform`` command. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "SAVe") -> None: + super().__init__(device, cmd_syntax) + self._eventtable = SaveEventtable(device, f"{self._cmd_syntax}:EVENTtable") + self._image = SaveImage(device, f"{self._cmd_syntax}:IMAGe") + self._plotdata = SavePlotdata(device, f"{self._cmd_syntax}:PLOTData") + self._report = SaveReport(device, f"{self._cmd_syntax}:REPOrt") + self._session = SaveSession(device, f"{self._cmd_syntax}:SESsion") + self._setup = SaveSetup(device, f"{self._cmd_syntax}:SETUp") + self._waveform = SaveWaveform(device, f"{self._cmd_syntax}:WAVEform") + + @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. + - ``.custom``: The ``SAVe:EVENTtable:CUSTom`` command. + - ``.measurement``: The ``SAVe:EVENTtable:MEASUrement`` command. + - ``.peaks``: The ``SAVe:EVENTtable:PEAKS`` command. + - ``.searchtable``: The ``SAVe:EVENTtable:SEARCHTable`` command. + """ + return self._eventtable + + @property + def image(self) -> SaveImage: + """Return the ``SAVe:IMAGe`` command. + + Description: + - Saves a capture of the screen contents to the specified image file. Supported image + formats are PNG, Windows Bitmap, and JPEG. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe + ``` + + Info: + - ```` is the file name and location used to store the image file. + + Sub-properties: + - ``.composition``: The ``SAVe:IMAGe:COMPosition`` command. + - ``.viewtype``: The ``SAVe:IMAGe:VIEWTYpe`` command. + """ + return self._image + + @property + def plotdata(self) -> SavePlotdata: + """Return the ``SAVe:PLOTData`` command. + + Description: + - Saves the plot data of the currently selected plot to a specified file. Supported file + format is CSV. When specifying the file name with this command, use the correct file + extension (.CSV). If a file name or path is specified, the file is expected to be + located in a directory relative to the current working directory (specified by + ``FILESYSTEM:CWD``) unless a complete path is specified. If the file argument begins + with a drive designator (such as C:), then the file name is interpreted as a full + path. If the file argument begins with '.' or '', or has a file path separator + appearing anywhere other than the first character position, then the file name is + treated as a path that is relative to the current working directory. To export an eye + diagram plot data to a .csv file, the prerequisite command is + ``MEASUrement:ADDMEAS TIE`` + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:PLOTData value`` command. + + SCPI Syntax: + ``` + - SAVe:PLOTData + ``` + + Info: + - ```` sets the file name and location used to store the plot data. + """ + return self._plotdata + + @property + def report(self) -> SaveReport: + """Return the ``SAVe:REPOrt`` command. + + Description: + - This command saves a report to the specified file. Supported report formats are PDF + and MHT (web page archive file). + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:REPOrt value`` command. + + SCPI Syntax: + ``` + - SAVe:REPOrt + ``` + + Info: + - ```` is the complete path specification. When specifying the file name with + this command, use the correct file extension (.pdf for PDF format, or .mht for MHT + format). + + Sub-properties: + - ``.comments``: The ``SAVe:REPOrt:COMMents`` command. + """ + return self._report + + @property + def session(self) -> SaveSession: + """Return the ``SAVe:SESsion`` command. + + Description: + - Saves the state of the instrument, including reference waveforms, to a saved session + file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:SESsion value`` command. + + SCPI Syntax: + ``` + - SAVe:SESsion + ``` + + Info: + - ```` is the file path that specifies the location to save the specified + instrument session file. If a file name or path is specified, the file is expected to + be located in a directory relative to the current working directory (specified by. + """ + return self._session + + @property + def setup(self) -> SaveSetup: + """Return the ``SAVe:SETUp`` command. + + Description: + - Saves the current instrument state to the specified file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:SETUp value`` command. + + SCPI Syntax: + ``` + - SAVe:SETUp + ``` + + Info: + - ```` is a quoted string that is the complete path specification. If a file + name or path is specified, the file is expected to be located in a directory relative + to the current working directory (specified by ``FILESYSTEM:CWD``) unless a complete + path is specified. + + Sub-properties: + - ``.includerefs``: The ``SAVe:SETUp:INCLUDEREFs`` command. + """ + return self._setup + + @property + def waveform(self) -> SaveWaveform: + """Return the ``SAVe:WAVEform`` command. + + Description: + - This command 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 {CH[_DALL|_SV_NORMal|_SV_AVErage|_SV_MAXHold| _SV_MINHold|_MAG_VS_TIME|_FREQ_VS_TIME| _PHASE_VS_TIME]|MATH|REF|ALL| }, + ``` + + Info: + - ```` is the number of the analog channel, math, or reference waveform source used + to save the waveform data. + - ``_DALL`` saves the digital channel waveform data of the specified channel. + - ``_SV_NORMal`` saves the Normal Spectrum view waveform of the specified channel. + - ``_SV_AVErage`` saves the Average Spectrum view waveform of the specified channel. + - ``_SV_MAXHold`` saves the Maximum Hold Spectrum view waveform of the specified + channel. + - ``_SV_MINHold`` saves the Minimum Hold Spectrum view waveform of the specified + channel. + - ``_MAG_VS_TIME`` saves the Magnitude vs. + - ``_FREQ_VS_TIME`` saves the Freuency vs. + - ``_PHASE_VS_TIME`` saves the Phase vs. + - ``_SV_BASEBAND_IQ`` saves the baseband I & Q data of the specified channel. + - ``ALL`` saves all displayed analog, math, and reference waveforms to individual files. + - ```` is a quoted string that defines the path and file name to use to save + the specified file, in the format '[]`` uses the form '/. + - ```` sets the file name to use to create the file. + - ``<.ext>`` sets the file format to which to save the data. + + Sub-properties: + - ``.gating``: The ``SAVe:WAVEform:GATing`` command. + - ``.sourcelist``: The ``SAVe:WAVEform:SOURCELIst`` command. + """ # noqa: E501 + return self._waveform diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/saveonevent.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/saveonevent.py new file mode 100644 index 00000000..bf33b9a2 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/saveonevent.py @@ -0,0 +1,404 @@ +"""The saveonevent commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - SAVEONEVent:FILEDest + - SAVEONEVent:FILEDest? + - SAVEONEVent:FILEName + - SAVEONEVent:FILEName? + - SAVEONEVent:IMAGe:FILEFormat {PNG|BMP|JPG} + - SAVEONEVent:IMAGe:FILEFormat? + - SAVEONEVent:WAVEform:FILEFormat {INTERNal|SPREADSheet|MATlab} + - SAVEONEVent:WAVEform:FILEFormat? + - SAVEONEVent:WAVEform:SOUrce {S_CH|CH|MATH|REF|ALL} + - SAVEONEVent:WAVEform:SOUrce? + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdReadWithArguments, SCPICmdWrite, SCPICmdWriteNoArguments + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class SaveoneventWaveformSource(SCPICmdWrite, SCPICmdRead): + """The ``SAVEONEVent:WAVEform:SOUrce`` command. + + Description: + - This command sets or returns the sources for saving waveforms when an event occurs. This + command replaces ``SAVEON:WAVEform:SOURce`` (still valid command, but only an alias for + this new command). + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:WAVEform:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:WAVEform:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVEONEVent:WAVEform:SOUrce value`` + command. + + SCPI Syntax: + ``` + - SAVEONEVent:WAVEform:SOUrce {S_CH|CH|MATH|REF|ALL} + - SAVEONEVent:WAVEform:SOUrce? + ``` + + Info: + - ``S_CH`` specifies the remote scope and the analog channel. + - ``CH`` specifies an analog channel as the source waveform for saving. + - ``Math`` specifies a math waveform as the source waveform for saving. + - ``REF`` specifies a reference waveform as the source waveform for saving. + - ``ALL`` specifies all analog, math, and reference waveforms as the source waveforms for + saving. + """ + + +class SaveoneventWaveformFileformat(SCPICmdWrite, SCPICmdRead): + """The ``SAVEONEVent:WAVEform:FILEFormat`` command. + + Description: + - This command sets or returns the file extension (csv, wfm, mat). This command replaces + ``SAVEON:WAVEFORM:FILEFORMAT`` (still valid command, but only an alias for this new + command). + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:WAVEform:FILEFormat?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:WAVEform:FILEFormat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVEONEVent:WAVEform:FILEFormat value`` + command. + + SCPI Syntax: + ``` + - SAVEONEVent:WAVEform:FILEFormat {INTERNal|SPREADSheet|MATlab} + - SAVEONEVent:WAVEform:FILEFormat? + ``` + + Info: + - ``INTERNal`` specifies saving the waveform in the instrument internal format. + - ``SPREADSheet`` specifies saving the waveform in comma separated values format. + - ``MATlab`` specifies saving the waveform in matlab compatible file format. + """ + + +class SaveoneventWaveform(SCPICmdRead): + """The ``SAVEONEVent:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:WAVEform?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:WAVEform?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.fileformat``: The ``SAVEONEVent:WAVEform:FILEFormat`` command. + - ``.source``: The ``SAVEONEVent:WAVEform:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fileformat = SaveoneventWaveformFileformat(device, f"{self._cmd_syntax}:FILEFormat") + self._source = SaveoneventWaveformSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def fileformat(self) -> SaveoneventWaveformFileformat: + """Return the ``SAVEONEVent:WAVEform:FILEFormat`` command. + + Description: + - This command sets or returns the file extension (csv, wfm, mat). This command replaces + ``SAVEON:WAVEFORM:FILEFORMAT`` (still valid command, but only an alias for this new + command). + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:WAVEform:FILEFormat?`` + query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:WAVEform:FILEFormat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVEONEVent:WAVEform:FILEFormat value`` command. + + SCPI Syntax: + ``` + - SAVEONEVent:WAVEform:FILEFormat {INTERNal|SPREADSheet|MATlab} + - SAVEONEVent:WAVEform:FILEFormat? + ``` + + Info: + - ``INTERNal`` specifies saving the waveform in the instrument internal format. + - ``SPREADSheet`` specifies saving the waveform in comma separated values format. + - ``MATlab`` specifies saving the waveform in matlab compatible file format. + """ + return self._fileformat + + @property + def source(self) -> SaveoneventWaveformSource: + """Return the ``SAVEONEVent:WAVEform:SOUrce`` command. + + Description: + - This command sets or returns the sources for saving waveforms when an event occurs. + This command replaces ``SAVEON:WAVEform:SOURce`` (still valid command, but only an + alias for this new command). + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:WAVEform:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:WAVEform:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVEONEVent:WAVEform:SOUrce value`` + command. + + SCPI Syntax: + ``` + - SAVEONEVent:WAVEform:SOUrce {S_CH|CH|MATH|REF|ALL} + - SAVEONEVent:WAVEform:SOUrce? + ``` + + Info: + - ``S_CH`` specifies the remote scope and the analog channel. + - ``CH`` specifies an analog channel as the source waveform for saving. + - ``Math`` specifies a math waveform as the source waveform for saving. + - ``REF`` specifies a reference waveform as the source waveform for saving. + - ``ALL`` specifies all analog, math, and reference waveforms as the source waveforms + for saving. + """ + return self._source + + +class SaveoneventImageFileformat(SCPICmdWrite, SCPICmdRead): + """The ``SAVEONEVent:IMAGe:FILEFormat`` command. + + Description: + - This command sets or returns the image file extension (png, jpg, bmp). This command + replaces ``SAVEON:IMAGE:FILEFORMAT`` (still valid command, but only an alias for this new + command). + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:IMAGe:FILEFormat?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:IMAGe:FILEFormat?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVEONEVent:IMAGe:FILEFormat value`` + command. + + SCPI Syntax: + ``` + - SAVEONEVent:IMAGe:FILEFormat {PNG|BMP|JPG} + - SAVEONEVent:IMAGe:FILEFormat? + ``` + + Info: + - ``PNG`` specifies using PNG format for saved image files. + - ``BMP`` specifies using BMP format for saved image files. + - ``JPG`` specifies using JPEG format for saved image files. + """ + + +class SaveoneventImage(SCPICmdRead): + """The ``SAVEONEVent:IMAGe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:IMAGe?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:IMAGe?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.fileformat``: The ``SAVEONEVent:IMAGe:FILEFormat`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fileformat = SaveoneventImageFileformat(device, f"{self._cmd_syntax}:FILEFormat") + + @property + def fileformat(self) -> SaveoneventImageFileformat: + """Return the ``SAVEONEVent:IMAGe:FILEFormat`` command. + + Description: + - This command sets or returns the image file extension (png, jpg, bmp). This command + replaces ``SAVEON:IMAGE:FILEFORMAT`` (still valid command, but only an alias for this + new command). + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:IMAGe:FILEFormat?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:IMAGe:FILEFormat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVEONEVent:IMAGe:FILEFormat value`` command. + + SCPI Syntax: + ``` + - SAVEONEVent:IMAGe:FILEFormat {PNG|BMP|JPG} + - SAVEONEVent:IMAGe:FILEFormat? + ``` + + Info: + - ``PNG`` specifies using PNG format for saved image files. + - ``BMP`` specifies using BMP format for saved image files. + - ``JPG`` specifies using JPEG format for saved image files. + """ + return self._fileformat + + +class SaveoneventFilename(SCPICmdWrite, SCPICmdRead): + """The ``SAVEONEVent:FILEName`` command. + + Description: + - This command sets or queries the file name without the extension. This command replaces + ``SAVEON:FILE:NAME`` (still valid command, but only an alias for this new command). + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:FILEName?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:FILEName?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVEONEVent:FILEName value`` command. + + SCPI Syntax: + ``` + - SAVEONEVent:FILEName + - SAVEONEVent:FILEName? + ``` + + Info: + - ```` specifies the name of the file. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SaveoneventFiledest(SCPICmdWriteNoArguments, SCPICmdReadWithArguments): + """The ``SAVEONEVent:FILEDest`` command. + + Description: + - This command sets or queries the location where files are saved. This command replaces + ``SAVEON:FILE:DEST`` (still valid command, but only an alias for this new command). + + Usage: + - Using the ``.query(argument)`` method will send the ``SAVEONEVent:FILEDest? argument`` + query. + - Using the ``.verify(argument, value)`` method will send the + ``SAVEONEVent:FILEDest? argument`` query and raise an AssertionError if the returned value + does not match ``value``. + - Using the ``.write()`` method will send the ``SAVEONEVent:FILEDest`` command. + + SCPI Syntax: + ``` + - SAVEONEVent:FILEDest + - SAVEONEVent:FILEDest? + ``` + + Info: + - ```` specifies the location to store files. + """ + + +class Saveonevent(SCPICmdRead): + """The ``SAVEONEVent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.filedest``: The ``SAVEONEVent:FILEDest`` command. + - ``.filename``: The ``SAVEONEVent:FILEName`` command. + - ``.image``: The ``SAVEONEVent:IMAGe`` command tree. + - ``.waveform``: The ``SAVEONEVent:WAVEform`` command tree. + """ + + def __init__( + self, device: Optional["PIDevice"] = None, cmd_syntax: str = "SAVEONEVent" + ) -> None: + super().__init__(device, cmd_syntax) + self._filedest = SaveoneventFiledest(device, f"{self._cmd_syntax}:FILEDest") + self._filename = SaveoneventFilename(device, f"{self._cmd_syntax}:FILEName") + self._image = SaveoneventImage(device, f"{self._cmd_syntax}:IMAGe") + self._waveform = SaveoneventWaveform(device, f"{self._cmd_syntax}:WAVEform") + + @property + def filedest(self) -> SaveoneventFiledest: + """Return the ``SAVEONEVent:FILEDest`` command. + + Description: + - This command sets or queries the location where files are saved. This command replaces + ``SAVEON:FILE:DEST`` (still valid command, but only an alias for this new command). + + Usage: + - Using the ``.query(argument)`` method will send the ``SAVEONEVent:FILEDest? argument`` + query. + - Using the ``.verify(argument, value)`` method will send the + ``SAVEONEVent:FILEDest? argument`` query and raise an AssertionError if the returned + value does not match ``value``. + - Using the ``.write()`` method will send the ``SAVEONEVent:FILEDest`` command. + + SCPI Syntax: + ``` + - SAVEONEVent:FILEDest + - SAVEONEVent:FILEDest? + ``` + + Info: + - ```` specifies the location to store files. + """ + return self._filedest + + @property + def filename(self) -> SaveoneventFilename: + """Return the ``SAVEONEVent:FILEName`` command. + + Description: + - This command sets or queries the file name without the extension. This command + replaces ``SAVEON:FILE:NAME`` (still valid command, but only an alias for this new + command). + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:FILEName?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:FILEName?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVEONEVent:FILEName value`` + command. + + SCPI Syntax: + ``` + - SAVEONEVent:FILEName + - SAVEONEVent:FILEName? + ``` + + Info: + - ```` specifies the name of the file. + """ + return self._filename + + @property + def image(self) -> SaveoneventImage: + """Return the ``SAVEONEVent:IMAGe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:IMAGe?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:IMAGe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.fileformat``: The ``SAVEONEVent:IMAGe:FILEFormat`` command. + """ + return self._image + + @property + def waveform(self) -> SaveoneventWaveform: + """Return the ``SAVEONEVent:WAVEform`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent:WAVEform?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent:WAVEform?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.fileformat``: The ``SAVEONEVent:WAVEform:FILEFormat`` command. + - ``.source``: The ``SAVEONEVent:WAVEform:SOUrce`` command. + """ + return self._waveform diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/search.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/search.py new file mode 100644 index 00000000..cccb1fdb --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/search.py @@ -0,0 +1,54615 @@ +# pylint: disable=line-too-long +"""The search commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - SEARCH:ADDNew + - SEARCH:DELETEALL + - SEARCH:DELete + - SEARCH:LIST? + - SEARCH:SEARCH:COPy {SEARCHtotrigger|TRIGgertosearch} + - SEARCH:SEARCH:NAVigate {NEXT|PREVious|MIN|NONE|MAX} + - SEARCH:SEARCH:TOTAL? + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition {SOW|LABel|DATa|LABELANDDATA|EOW|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe {ANY|PARity|WORD|GAP} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition {SOF|DATa} + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet? + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD {EITher|LEFt|RIGht} + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition {SSD|SFD|MACADDRess|MACLENgth|IPHeader|TCPHeader|DATa|EOP|FCSError|QTAG} + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition {DATa} + - SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition {STARt|STATus|DATa|BLOCkid|SENSORSTATus|ERRors|STARTBIT|FUNCTIONCODe|ECUDATa|SENSORADDRess|REGISTERADDRess|SENSORSTATus|CRCERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs {FOURBIT|EIGHTBIT|TWENTYBIT} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe {ANY|PARity|CRC|RESPONSECODe} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess {TWOBIT|SIXBIT|EIGHTBIT} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe {READy|BUSY|DEFect|SERVICEMODe|UNLocked} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition {SYMbols|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition {SOF|FRAMEtype|IDentifier|DATa|IDANDDATA|EOF|ERRor|FDBITS} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection {READ|WRITE|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier {EQUal|LESSEQual|MOREEQua|UNEQual|LESSthan|MOREthan} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType {ACKMISS|BITSTUFFing|FORMERRor|ANYERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype {DATa|ERRor|OVERLoad|REMote} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe {EXTENDed|STandard} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe? + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition {SOT|EOT|DATa|EOTPDATa|OPTIONALPARam|SCRambling|COMPression|PACKets|BUSTURNAROUnd|ESCAPEMODe|STop|ERRors|MODe|WORD|SYMBol} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe {ANY|ECC|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand {LPDT|ULPS|RESETTRIGger|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe {HS|LP} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST {VSYNCSTART|VSYNCEND|HSYNCSTART|HSYNCEND|EOTP|COLOROFF|COLORON|SHUTDOWN|TURNON|GSW|GR|COMPRESSION|SCRAMBLING|EXECUTEQUEue|DCSSW|DCSR|GLONGWRITE|DSINULL|DSIBLANk|MAXRETSIZE|DCSGLONGWRITE|PICPARameter|COMPRESSEDPSTReam|PPS101010|PPS121212|PPS565|PPS666|LPS666|PPS888|YCBCR24|LPYCBCR24|YCBCR16|YCBCR12|ACKNowledge|ERRORREPort|GSRR|GLONGREAD|DCSLONGREAD|DCSSRR|FRAMESTARt|FRAMEEND|LINESTARt|LINEEND|GSP|CSINULL|CSIBLANk|EMBEDDED|USEREIGHTB|RGB565|RGB555|RGB444|RGB666|RAW6|RAW7|RAW8|RAW10|RAW12|RAW14|RAW16|RAW20|RGB888|YUV420L8|YUV8BIT|YUV422B10|YUV420B10} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe {SHORt|LONG} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion {PIXELVALue|PIXELNUMBer} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V? + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition {STARt|FRAMes|FRAMEID|PTYPe|DLC|EXTDLC|NETMN|COUNter|DATa|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe {CRC|PARity|FRAMe|IBS|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe {NORMal|SLEep|LONG|POLLINGNORMal|POLLINGLONG} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND {ON|OFF|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND? + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND {ON|OFF|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition {SOT|EOT|DATa|EOTPDATa|OPTIONALPARam|SCRambling|COMPression|PACKets|BUSTURNAROUnd|ESCAPEMODe|STop|ERRors|MODe} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe {ANY|ECC|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand {LPDT|ULPS|RESETTRIGger|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe {HS|LP} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST {VSYNCSTART|VSYNCEND|HSYNCSTART|HSYNCEND|EOTP|COLOROFF|COLORON|SHUTDOWN|TURNON|GSW|GR|COMPRESSION|SCRAMBLING|EXECUTEQUEue|DCSSW|DCSR|GLONGWRITE|DSINULL|DSIBLANk|MAXRETSIZE|DCSGLONGWRITE|PICPARameter|COMPRESSEDPSTReam|PPS101010|PPS121212|PPS565|PPS666|LPS666|PPS888|YCBCR24|LPYCBCR24|YCBCR16|YCBCR12|ACKNowledge|ERRORREPort|GSRR|GLONGREAD|DCSLONGREAD|DCSSRR|FRAMESTARt|FRAMEEND|LINESTARt|LINEEND|GSP|CSINULL|CSIBLANk|EMBEDDED|USEREIGHTB|RGB565|RGB555|RGB444|RGB666|RAW6|RAW7|RAW8|RAW10|RAW12|RAW14|RAW16|RAW20|RGB888|YUV420L8|YUV8BIT|YUV422B10|YUV420B10} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe {SHORt|LONG} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion {PIXELVALue|PIXELNUMBer} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V? + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode {GETSTATus|GETCONFig|SETCONFig|GETNP|GETPC|PUTNP|PUTPC|PUTIORDSHORt|PUTIOWRSHORt|PUTMEMRD32SHORt|PUTMEMWR32SHORt|PUTOOB|GETOOB|PUTFLASHC|GETFLASHNP|PUTVWIRe|GETVWIRe} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition {STARt|CHINDependent|PERICHANnel|OOBCHANnel|VWCHANnel|FACHANnel|DATa|STATus|ERRors|WAIT|END} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe {MEMRD32|MEMRD64|MEMWR32|MEMWR64|MESSage|MSGWITHDATa|SUCCESSNODATa|SUCCESSDATa|UNSUCCESSNODATa|OOBSMBUS|MCTP|FLASHREAD|FLASHWRITe|FLASHERASe|FLSUCCESSNODATa|FLSUCCESSDATa|FLUNSUCCESSNODATa} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe {CRC|DEFer|FATal|NONFATal|NORESPonse|CMDOPCODe|CYCLETYPe} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe {COMMand|RESPONSE|RESPONSEHEADer|RESPONSENOHEADer} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe {MEMRDWR32|MEMRDWR64|MESSage|MSGWITHDATa|SUCCESSNODATa|SUCCESSDATa|UNSUCCESSNODATa|LTR|FLASHREAD|FLASHWRITe|FLASHERASe} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe {DEVice|LOGical} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe {NOP|APRD|APWR|APRW|FPRD|FPWR|FPRW|BRD|BWR|BRW|LRD|LWR|LRW|ARMW|FRMW|REServed} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition {SOF|PROTocol|IPHEADer|UDPIPHEADer|MACADDRess|TCI|ECATHEADERLENGth|DATagram|NETWORKVARiable|MAILBOX|FCSERRor|EOF} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM {HEADer|DATa|WKC} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer {CMD|IDX|ADDRess|LEN|CIRCulating|IRQ} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess {POSition|OFFSet} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa {TYPe|DETail} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe {BASic|UDPIP} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe {ZERo|ONE|TWO|THRee|FOUR|FIVe|RESERved|FIFTeen} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox {MAILBOXHEADer|SERVICEDATa|ERRSERVICEDATa} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail {ONE|TWO|THRee|FOUR|FIVe|SIX|SEVEn|EIGHt|NINe} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer {LENGth|ADDRess|CHANnel|PRIority|TYPe|CNT} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable {PUBHEADer|NVHEADer|NVDATa} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer {INDex|HASH|NVLEN|Q} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe {PDU|NETWORKVARiables|MAILbox} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition {SFD|MACADDRess|MACLENgth|IPHeader|TCPHeader|DATa|EOP|IDLe|FCSError|QTAG} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition {SYNC|HANDSHAKEPacket|SPECIALPacket|ERRor|TOKENPacket|DATAPacket|RESET|CONNect|CONTROLMESSage|SUSPEND|DEVICEChirp|HOSTChirp|PORTReset|PORTConfiguration|RESUME|EOP} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|Inrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe {ANY|DATA0|DATA1|DATA2|MDATA} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch {OFF|ON} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType {BITSTUFFing|CRC5|CRC16|PID} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType {ANY|ACK|NAK|STALL|NYET} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand {ALL|WRITe|READ|CLEar|SET} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion {COMMand|ADDRess|RAPDATa} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType {ANY|PREamble|ERROr|SPLit|PING|RESERVed} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue {NOCARE|CONTRol|ISOchronous|BULK|INTERRUPT} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue {NOCARE|SSPLIT|CSPLIT} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue {NOCARE|FULLSPEED|LOWSPEED|ISOSTART|ISOMID|ISOEND|ISOALL} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch {OFF|ON} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch? + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType {ANY|SOF|OUT|IN|SETUP} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition {SOF|FRAMEType|IDentifier|CYCLEcount|HEADer|DATA|IDANDDATA|EOF|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier {EQUal|LESSEQual|MOREEQual|UNEQual|LESSthan|MOREthan|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier {EQUal|LESSEQual|MOREEQual|UNEQual|LESSthan|MOREthan|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE {ANY|STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE {CRCHeader|CRCTrailer|NULLFRStatic|NULLFRDynamic|SYNCFrame|STARTupnosync} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType {NORMal|PAYload|NULL|SYNC|STARTup} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits? + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth? + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe {ADDR10|ADDR7} + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe? + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition {ADDRess|ADDRANDDATA|DATa|ACKMISS|REPEATstart|STARt|STOP} + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection {NOCARE|READ|WRITE} + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection? + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe {ADDR10|ADDR7} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets {RESPonse|BROadcast} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition {STARt|REPEATStart|ADDRess|DATa|SDRDirect|SDRBroadcast|DDR|ERRors|HOTJoin|DMSGEnd|BMSGEnd|HDRRestart|HDRExit} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection {NOCARE|READ|WRITE} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe {NACK|TBIT|PARity|BADDr|DADDr|PREamble|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets {RESPonse|DIRect} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket {ENSLave|DISLave|ENTasx|RSTDya|ENTRDya|SETMwrl|SETMrdl|LSLave|ENTRTSTMode|EXTime>} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket {ENSLave|DISLave|ENTasx|RSTDya|SETMwrl|SETMrdl|SEText|SETDya|SETNdya|GETMWrl|GETMRdl|GETPrid|GETBusch|GETDevch|GETSlave|ACCM|SETBrt|MDATASpeed|HDRCapability} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition {DATA|IDANDDATA|ERRor|IDentifier|SLEEP|SYNCfield|WAKEup} + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier {EQual|LESSEQual|MOREEQual|UNEQual|LESSthan|MOREthan|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE {CHecksum|PARity|SYNC} + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE? + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition {SYNCBITS|HEADer|DATa|packetOffData|TRAiler|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe {MANChester|PARity} + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition {STARTPACKet|PHYSICALADDRess|REGISTERADDRess|DEVICETYPe|DATA|ADDRess|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType {OPCODEERRor|DEVERRor|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType? + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit {RX|TX|X} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition {SYNC|COMMAND|STATus|DATA|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe {PARity|SYNC|DATA} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF? + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity? + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition {RESet|PREsence|COMMand|DATa|READROM|MATCHROM|OVERDRIVEMATCh|SKIPROM|OVERDRIVESKIP|SEARCHROM|ALARMSEARch|CRCERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer? + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe? + - SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition {DATa|EOp|PARItyerror|STARt} + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity {POSITIVe|NEGAtive|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity? + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor {SYMBol|DISParity} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor? + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe {EBIT|TBIT|SYMB} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe? + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg? + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos? + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe {DATa|CONTrol} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe {BROadcast|NOSTATion|STATIONADDr} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition {STARt|DATa|ABORt|ADDRess|UNNumbered|INFormation|SUPervisory|ERRors|END} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe {FCS|NUMERICORDer} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe {COMMand|RESPonse|BOTH} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe {RR|RNR|REJ} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe {UP|UI|SNRM|SNRME|REQDISConnect|UACK|REQSETINIT|DISCMODe|FRAMEREJ|TEST|XID|CONFigure|BEACon} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition {START|FAST|SLOW|PAUSE|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType {FRAMELENgth|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC {FAST|SLOW} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQualINrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition {STARt|REPEATSTARt|ADDRess|HOSTADDR|DEVICEADDR|COMMand|DATa|UDIDDATa|ERRor|STOP|IDLe} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe {ANY|ACK|NACK|PEC} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe {ONE|TWO|FOUR} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe? + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue {ONE|TWO|FOUR} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SOUrce {B0|B1|B2|B3|B4|B5|B6|B7|B8|B9|B10|B11|B12|B13|B14|B15|B16} + - SEARCH:SEARCH:TRIGger:A:BUS:SOUrce? + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition {SYNC|DATa|ERRors|CONTROLCODe|CONTROLCHAR} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe {FCT|ESC|ENDOFPACKet} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe {NULL|TIMECODe} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe {EEP|ESC|PARity} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition {DATA|SS|STARTofframe} + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe {MISo|MOSi} + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe? + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition {SSC|RESet|SLEep|SHUTdown|WAKeup|MASTERREAd|MASTERWRIte|REGREAd|REGWRIte|DEVICEDESCMASTERREAd|DEVICEDESCSLAVEREAd|EXTREGREAd|EXTREGWRIte|LONGEXTREGREAd|LONGEXTREGWRIte|REG0WRIte|AUTHenticate|TRANSferbusownership|PARItyerror} + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse? + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse {GETReg|GETRegvendor|GETRegtestcfg|SETFast|SETSlow|SETDecay|SETPs|SETRegaddr|SETRegdata|REGAddrvendor|REGDatavendor|REGAddrtestconfg|REGDatatestconfg|TESTmode|SETWp|GETRegpktrecent|GETRegpktalert|GETRegpktbad|GETRegvrevent} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse? + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe {GET|SET|OPTional} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition {STARTCONDition|SLAVEADDRess|COMMand|PAYLoad|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe {ANY|NACK|REJect|MIXed|PARity} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe {MASTer|SLAVe|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition {DATAPacket|EOP|ERRor|HANDSHAKEPacket|RESET|RESUME|SPECIALPacket|SUSPEND|SYNC|TOKENPacket} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe {ANY|DATA|MDATA} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE {BITSTUFFing|CRC5|CRC16|PID} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType {ACK|ANY|NAK|NYET|STALL} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType {ANY|ERROr|PING|PREamble|RESERVed|SPLit} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue {BULK|CONTROL|NOCARE|INTERRUPT|ISOchronous} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue {CSPLIT|NOCARE|SSPLIT} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue {NOCARE|FULLSPEED|ISOALL|ISOEND|ISOMID|ISOSTART|LOWSPEED} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue? + - SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType {ANY|IN|OUT|SETUP|SOF} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod {DQDQS|ChipSelect|LogicState} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive {LOW|HIGH} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode {Auto|Manual} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate {333|800|1066|1200|1333|1466|1600|1866|2133} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis + - SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth {500E-3|500E-1.5|500E-1} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE {STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode {AUTO|MANUAL} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard {DDR3|LPDDR3} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource? + - SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance + - SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod {DQDQS|ChipSelect|LogicState} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive {LOW|HIGH} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode {Auto|Manual} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate {333|800|1066|1200|1333|1466|1600|1866|2133} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth {500E-3|1.5|1} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE {STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode {AUTO|MANUAL} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard {DDR3|LPDDR3} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource? + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod {DQDQS|ChipSelect|LogicState} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive {LOW|HIGH} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode {Auto|Manual} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate {333|800|1066|1200|1333|1466|1600|1866|2133} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth {500E-3|1.5|1} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE {STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode {AUTO|MANUAL} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard {DDR3|LPDDR3} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource? + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance? + - SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe {RISe|FALL|EITher} + - SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe? + - SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce? + - SEARCH:SEARCH:TRIGger:A:EDGE:THReshold + - SEARCH:SEARCH:TRIGger:A:EDGE:THReshold? + - SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold + - SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold? + - SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime + - SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime? + - SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion {AND|NANd|NOR|OR} + - SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion? + - SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce {S_Ch_D|CH|CH_D|REF_D} + - SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce? + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH? + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH? + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF? + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH? + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D? + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH? + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF? + - SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity {POSitive|NEGative|EITher} + - SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity? + - SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge {OFF|ON|0|1} + - SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge? + - SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn {TRUe|FALSe|MOREThan|LESSThan|EQual|UNEQual} + - SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn? + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit? + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification? + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit? + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity {POSitive|NEGative} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity? + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce {S_Ch_D|CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce? + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold? + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn {LESSthan|MOREthan|EQual|UNEQual|WIThin|OUTside} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn? + - SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification? + - SEARCH:SEARCH:TRIGger:A:RUNT:POLarity {POSitive|NEGative|EITher} + - SEARCH:SEARCH:TRIGger:A:RUNT:POLarity? + - SEARCH:SEARCH:TRIGger:A:RUNT:SOUrce {CH|REF} + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH? + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW? + - SEARCH:SEARCH:TRIGger:A:RUNT:WHEn {OCCURS|LESSthan|MOREthan|EQual}NOTEQual} + - SEARCH:SEARCH:TRIGger:A:RUNT:WHEn? + - SEARCH:SEARCH:TRIGger:A:RUNT:WIDth + - 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce? + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold? + - SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime + - SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime? + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH? + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH? + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF? + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH? + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D? + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH? + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF? + - SEARCH:SEARCH:TRIGger:A:SETHold:SETTime + - SEARCH:SEARCH:TRIGger:A:SETHold:SETTime? + - SEARCH:SEARCH:TRIGger:A:STATE {ON|OFF|} + - SEARCH:SEARCH:TRIGger:A:STOPAcq {ON|OFF|} + - SEARCH:SEARCH:TRIGger:A:STOPAcq? + - SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification? + - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity {STAYSHigh|STAYSLow|EITher} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity? + - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? + - SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold + - SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold? + - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe + - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe? + - SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime + - SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime? + - SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification? + - SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity {POSitive|NEGative|EITher} + - SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity? + - SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce {S_Ch|CH|MATH|REF} + - SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce? + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH? + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW? + - SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn {FASTERthan|SLOWERthan|EQual|UNEQual} + - SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn? + - SEARCH:SEARCH:TRIGger:A:TYPe {EDGE|RUNT|TRANsition|PULSEWidth|TIMEOut|LOGIc|SETHold|WINdow|Bus|DDRRead|DDRREADWrite|DDRWrite} + - SEARCH:SEARCH:TRIGger:A:TYPe? + - SEARCH:SEARCH:TRIGger:A:WINdow:CROSSIng {UPPer|LOWer|EITher|NONe} + - SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification? + - SEARCH:SEARCH:TRIGger:A:WINdow:POLarity {UPPer|LOWer|EITher|NONe} + - SEARCH:SEARCH:TRIGger:A:WINdow:POLarity? + - SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce {S_Ch|CH|MATH|REF} + - SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce? + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH? + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW? + - SEARCH:SEARCH:TRIGger:A:WINdow:WHEn {ENTERSWindow|EXITSWindow|INSIDEGreater|OUTSIDEGreater} + - SEARCH:SEARCH:TRIGger:A:WINdow:WHEn? + - SEARCH:SEARCH:TRIGger:A:WINdow:WIDth + - SEARCH:SEARCH:TRIGger:A:WINdow:WIDth? + - SEARCH:SELected SEARCH1 + ``` +""" # noqa: E501 + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedChannel, + ValidatedDigitalBit, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class SearchSelected(SCPICmdWrite): + """The ``SEARCH:SELected`` command. + + Description: + - This command sets or queries the selected search, for example SEARCH1. The search number + is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:SELected value`` command. + + SCPI Syntax: + ``` + - SEARCH:SELected SEARCH1 + ``` + + Info: + - ``SEARCH1`` is the specified search. + """ + + +class SearchSearchItemTriggerAWindowWidth(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow:WIDth`` command. + + Description: + - This command sets or queries the width setting for a window trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:WINdow:WIDth?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:WIDth?`` 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:WINdow:WIDth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:WIDth + - SEARCH:SEARCH:TRIGger:A:WINdow:WIDth? + ``` + + Info: + - ```` specifies the minimum width in seconds. + """ + + +class SearchSearchItemTriggerAWindowWhen(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow:WHEn`` command. + + Description: + - This command sets or queries the window search event. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:WINdow:WHEn?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:WHEn?`` 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:WINdow:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:WHEn {ENTERSWindow|EXITSWindow|INSIDEGreater|OUTSIDEGreater} + - SEARCH:SEARCH:TRIGger:A:WINdow:WHEn? + ``` + + Info: + - ``ENTERSWindow`` specifies a window search when the signal enters the window. + - ``EXITSWindow`` specifies a window search when the signal exits the window. + - ``OUTSIDEGreater`` specifies a search when the signal leaves the window defined by the + threshold levels for the time specified by Width. + - ``INSIDEGreater`` specifies a search when the signal enters the window defined by the + threshold levels for the time specified by Width. + """ # noqa: E501 + + +class SearchSearchItemTriggerAWindowThresholdLow(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW`` command. + + Description: + - This command sets or queries the source threshold LOW level for a transition trigger + search to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW?`` 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:WINdow:THReshold:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW? + ``` + + Info: + - ```` the source threshold LOW level for a transition trigger search. + """ + + +class SearchSearchItemTriggerAWindowThresholdHigh(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH`` command. + + Description: + - This command sets or queries the source threshold HIGH level for a transition trigger + search to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH?`` 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:WINdow:THReshold:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH? + ``` + + Info: + - ```` is the source threshold HIGH level for a transition trigger search. + """ + + +class SearchSearchItemTriggerAWindowThreshold(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._high = SearchSearchItemTriggerAWindowThresholdHigh(device, f"{self._cmd_syntax}:HIGH") + self._low = SearchSearchItemTriggerAWindowThresholdLow(device, f"{self._cmd_syntax}:LOW") + + @property + def high(self) -> SearchSearchItemTriggerAWindowThresholdHigh: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH`` command. + + Description: + - This command sets or queries the source threshold HIGH level for a transition trigger + search to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH?`` 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:WINdow:THReshold:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH? + ``` + + Info: + - ```` is the source threshold HIGH level for a transition trigger search. + """ + return self._high + + @property + def low(self) -> SearchSearchItemTriggerAWindowThresholdLow: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW`` command. + + Description: + - This command sets or queries the source threshold LOW level for a transition trigger + search to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW?`` 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:WINdow:THReshold:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW + - SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW? + ``` + + Info: + - ```` the source threshold LOW level for a transition trigger search. + """ + return self._low + + +class SearchSearchItemTriggerAWindowSource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce`` command. + + Description: + - This command sets and queries the source for the window search input. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow: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:WINdow:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce {S_Ch|CH|MATH|REF} + - SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies is the remote scope number, and the analog channel. + - ``CH`` specifies one input channel as the source. + - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. + """ + + +class SearchSearchItemTriggerAWindowPolarity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow:POLarity`` command. + + Description: + - This command sets or queries the window trigger threshold crossing of the selected trigger + Source. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:POLarity?`` 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:WINdow:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:POLarity {UPPer|LOWer|EITher|NONe} + - SEARCH:SEARCH:TRIGger:A:WINdow:POLarity? + ``` + + Info: + - ``UPPer`` specifies that the instrument triggers when the signal remains above the upper + threshold for longer than the time limit and then crosses downward through the upper + threshold. + - ``LOWer`` specifies that the instrument triggers when the signal remains below the lower + threshold for longer than the time limit and then crosses upwards through the lower + threshold. + - ``EITher`` specifies that the instrument triggers when the signal remains either above the + upper threshold or below the lower threshold for longer than the time limit and then + crosses a threshold. + - ``NONe`` specifies that the instrument triggers when the signal remains outside the upper + and lower thresholds for longer than the time limit without crossing through either the + upper or lower threshold. + """ + + +class SearchSearchItemTriggerAWindowLogicqualification(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification`` command. + + Description: + - This command specifies or queries whether or not to use logic qualification for a window + search. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification?`` 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:WINdow:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification for a window search. + - ``OFF`` specifies not to us logic qualification for a window search. + """ + + +class SearchSearchItemTriggerAWindowCrossing(SCPICmdWrite): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow:CROSSIng`` command. + + Description: + - This command sets or queries the window trigger threshold crossing of the selected trigger + Source. The threshold crossing selection is only effective when ``:TRIGger:A:WINdow:WHEn`` + is INSIDEGreater or OUTSIDEGreater. The search number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:CROSSIng value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:CROSSIng {UPPer|LOWer|EITher|NONe} + ``` + + Info: + - ``UPPer`` if ``:TRIGger:A:WINdow:WHEn`` is INSIDEGreater, the instrument triggers when the + signal remains between the upper and lower thresholds for longer than the time limit + (``:TRIGger:A:WINdow:WIDTH``) and then exits through the upper threshold. If + ``:TRIGger:A:WINdow:WHEn`` is OUTSIDEGreater, the instrument triggers when the signal + remains above the upper threshold for longer than the time limit + (``:TRIGger:A:WINdow:WIDTH``) and then crosses downward through the upper threshold. + - ``LOWer`` if ``:TRIGger:A:WINdow:WHEn`` is INSIDEGreater, the instrument triggers when the + signal remains between the upper and lower thresholds for longer than the time limit + (``:TRIGger:A:WINdow:WIDTH``) and then exits through the lower threshold. If + ``:TRIGger:A:WINdow:WHEn`` is OUTSIDEGreater, the instrument triggers when the signal + remains below the lower threshold for longer than the time limit + (``:TRIGger:A:WINdow:WIDTH``) and then crosses upwards through the lower threshold. + - ``EITher`` if ``:TRIGger:A:WINdow:WHEn`` is INSIDEGreater, the instrument triggers when + the signal remains between the upper and lower thresholds for longer than the time limit + (``:TRIGger:A:WINdow:WIDTH``) and then exits through either the upper or lower threshold. + If ``:TRIGger:A:WINdow:WHEn`` is OUTSIDEGreater, the instrument triggers when the signal + remains either above the upper threshold or below the lower threshold for longer than the + time limit (``:TRIGger:A:WINdow:WIDTH``) and then crosses a threshold. + - ``NONe`` if ``:TRIGger:A:WINdow:WHEn`` is INSIDEGreater, the instrument triggers when the + signal remains between the upper and lower thresholds for longer than the time limit + (``:TRIGger:A:WINdow:WIDTH``) without crossing through either the upper or lower + threshold. If ``:TRIGger:A:WINdow:WHEn`` is OUTSIDEGreater, the instrument triggers when + the signal remains outside the upper and lower thresholds for longer than the time limit + (``:TRIGger:A:WINdow:WIDTH``) without crossing through either the upper or lower + threshold. + """ + + +class SearchSearchItemTriggerAWindow(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:WINdow`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:WINdow?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:WINdow?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.crossing``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:CROSSIng`` command. + - ``.logicqualification``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification`` + command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold`` command tree. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:WHEn`` command. + - ``.width``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:WIDth`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._crossing = SearchSearchItemTriggerAWindowCrossing( + device, f"{self._cmd_syntax}:CROSSIng" + ) + self._logicqualification = SearchSearchItemTriggerAWindowLogicqualification( + device, f"{self._cmd_syntax}:LOGICQUALification" + ) + self._polarity = SearchSearchItemTriggerAWindowPolarity( + device, f"{self._cmd_syntax}:POLarity" + ) + self._source = SearchSearchItemTriggerAWindowSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = SearchSearchItemTriggerAWindowThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + self._when = SearchSearchItemTriggerAWindowWhen(device, f"{self._cmd_syntax}:WHEn") + self._width = SearchSearchItemTriggerAWindowWidth(device, f"{self._cmd_syntax}:WIDth") + + @property + def crossing(self) -> SearchSearchItemTriggerAWindowCrossing: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow:CROSSIng`` command. + + Description: + - This command sets or queries the window trigger threshold crossing of the selected + trigger Source. The threshold crossing selection is only effective when + ``:TRIGger:A:WINdow:WHEn`` is INSIDEGreater or OUTSIDEGreater. The search number is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:CROSSIng value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:CROSSIng {UPPer|LOWer|EITher|NONe} + ``` + + Info: + - ``UPPer`` if ``:TRIGger:A:WINdow:WHEn`` is INSIDEGreater, the instrument triggers when + the signal remains between the upper and lower thresholds for longer than the time + limit (``:TRIGger:A:WINdow:WIDTH``) and then exits through the upper threshold. If + ``:TRIGger:A:WINdow:WHEn`` is OUTSIDEGreater, the instrument triggers when the signal + remains above the upper threshold for longer than the time limit + (``:TRIGger:A:WINdow:WIDTH``) and then crosses downward through the upper threshold. + - ``LOWer`` if ``:TRIGger:A:WINdow:WHEn`` is INSIDEGreater, the instrument triggers when + the signal remains between the upper and lower thresholds for longer than the time + limit (``:TRIGger:A:WINdow:WIDTH``) and then exits through the lower threshold. If + ``:TRIGger:A:WINdow:WHEn`` is OUTSIDEGreater, the instrument triggers when the signal + remains below the lower threshold for longer than the time limit + (``:TRIGger:A:WINdow:WIDTH``) and then crosses upwards through the lower threshold. + - ``EITher`` if ``:TRIGger:A:WINdow:WHEn`` is INSIDEGreater, the instrument triggers + when the signal remains between the upper and lower thresholds for longer than the + time limit (``:TRIGger:A:WINdow:WIDTH``) and then exits through either the upper or + lower threshold. If ``:TRIGger:A:WINdow:WHEn`` is OUTSIDEGreater, the instrument + triggers when the signal remains either above the upper threshold or below the lower + threshold for longer than the time limit (``:TRIGger:A:WINdow:WIDTH``) and then + crosses a threshold. + - ``NONe`` if ``:TRIGger:A:WINdow:WHEn`` is INSIDEGreater, the instrument triggers when + the signal remains between the upper and lower thresholds for longer than the time + limit (``:TRIGger:A:WINdow:WIDTH``) without crossing through either the upper or lower + threshold. If ``:TRIGger:A:WINdow:WHEn`` is OUTSIDEGreater, the instrument triggers + when the signal remains outside the upper and lower thresholds for longer than the + time limit (``:TRIGger:A:WINdow:WIDTH``) without crossing through either the upper or + lower threshold. + """ + return self._crossing + + @property + def logicqualification(self) -> SearchSearchItemTriggerAWindowLogicqualification: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification`` command. + + Description: + - This command specifies or queries whether or not to use logic qualification for a + window search. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification?`` 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:WINdow:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification for a window search. + - ``OFF`` specifies not to us logic qualification for a window search. + """ + return self._logicqualification + + @property + def polarity(self) -> SearchSearchItemTriggerAWindowPolarity: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow:POLarity`` command. + + Description: + - This command sets or queries the window trigger threshold crossing of the selected + trigger Source. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:POLarity?`` 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:WINdow:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:POLarity {UPPer|LOWer|EITher|NONe} + - SEARCH:SEARCH:TRIGger:A:WINdow:POLarity? + ``` + + Info: + - ``UPPer`` specifies that the instrument triggers when the signal remains above the + upper threshold for longer than the time limit and then crosses downward through the + upper threshold. + - ``LOWer`` specifies that the instrument triggers when the signal remains below the + lower threshold for longer than the time limit and then crosses upwards through the + lower threshold. + - ``EITher`` specifies that the instrument triggers when the signal remains either above + the upper threshold or below the lower threshold for longer than the time limit and + then crosses a threshold. + - ``NONe`` specifies that the instrument triggers when the signal remains outside the + upper and lower thresholds for longer than the time limit without crossing through + either the upper or lower threshold. + """ + return self._polarity + + @property + def source(self) -> SearchSearchItemTriggerAWindowSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce`` command. + + Description: + - This command sets and queries the source for the window search input. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow: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:WINdow:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce {S_Ch|CH|MATH|REF} + - SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies is the remote scope number, and the analog channel. + - ``CH`` specifies one input channel as the source. + - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> SearchSearchItemTriggerAWindowThreshold: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold:LOW`` command. + """ + return self._threshold + + @property + def when(self) -> SearchSearchItemTriggerAWindowWhen: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow:WHEn`` command. + + Description: + - This command sets or queries the window search event. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:WHEn?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:WHEn?`` 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:WINdow:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:WHEn {ENTERSWindow|EXITSWindow|INSIDEGreater|OUTSIDEGreater} + - SEARCH:SEARCH:TRIGger:A:WINdow:WHEn? + ``` + + Info: + - ``ENTERSWindow`` specifies a window search when the signal enters the window. + - ``EXITSWindow`` specifies a window search when the signal exits the window. + - ``OUTSIDEGreater`` specifies a search when the signal leaves the window defined by the + threshold levels for the time specified by Width. + - ``INSIDEGreater`` specifies a search when the signal enters the window defined by the + threshold levels for the time specified by Width. + """ # noqa: E501 + return self._when + + @property + def width(self) -> SearchSearchItemTriggerAWindowWidth: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow:WIDth`` command. + + Description: + - This command sets or queries the width setting for a window trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:WIDth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow:WIDth?`` 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:WINdow:WIDth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:WINdow:WIDth + - SEARCH:SEARCH:TRIGger:A:WINdow:WIDth? + ``` + + Info: + - ```` specifies the minimum width in seconds. + """ + return self._width + + +class SearchSearchItemTriggerAType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TYPe`` command. + + Description: + - This command sets or queries the trigger type setting for a search to determine where to + place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:TYPe?`` + 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:TYPe value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TYPe {EDGE|RUNT|TRANsition|PULSEWidth|TIMEOut|LOGIc|SETHold|WINdow|Bus|DDRRead|DDRREADWrite|DDRWrite} + - SEARCH:SEARCH:TRIGger:A:TYPe? + ``` + + Info: + - ``EDGE`` triggers when the source input signal amplitude crosses the specified level in + the direction given by the slope. + - ``RUNT`` triggers when a pulse crosses the first preset voltage threshold but does not + cross the second preset threshold before recrossing the first. The thresholds are set with + the ``SEARCH:SEARCH:TRIGger:A:RUNt:HIGH`` and + ``SEARCH:SEARCH:TRIGger:A:RUNt:LOW THRESHOLD`` commands. + - ``TRANsition`` triggers when a pulse crosses both thresholds in the same direction as the + specified polarity and the transition time between the two threshold crossings is greater + or less than the specified time delta. + - ``PULSEWidth`` triggers on input signal source pulses that are inside or outside of the + given time range specified by ``SEARCH:SEARCH:TRIGger:A:LOGIc:PATtern:WHEn:LESSLimit`` + and ``SEARCH:SEARCH:TRIGger:A:LOGIc:PATtern:WHEn:MORELimit``. The polarity is selected + using the ``SEARCH:SEARCH:TRIGger:A:RUNT``: POLarity command. + - ``TIMEOut`` triggers on an input signal source that stays above, stays below, or stays + either above or beow the trigger level for a given time. + - ``LOGIc`` specifies that a search occurs when specified conditions are met, and is + controlled by the ``SEARCH:A:LOGIc`` commands. + - ``SETHold`` triggers on a functional pattern combination of one to three data sources at + the time of the clock transition. + - ``WINdow`` triggers on an input signal source that enters or exits the horizontal band + defined by the two trigger levels. + - ``Bus`` specifies that a search occurs when a communications signal is found. + - ``DDRRead`` triggers on a DDR Read event. + - ``DDRREADWrite`` triggers on a DDR Read or Write event. + - ``DDRWrite`` triggers on a DDR Write event. + """ # noqa: E501 + + +class SearchSearchItemTriggerATransitionWhen(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn`` command. + + Description: + - This command sets or queries the condition setting for a transition trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn?`` 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:TRANsition:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn {FASTERthan|SLOWERthan|EQual|UNEQual} + - SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn? + ``` + + Info: + - ``FASTERthan`` sets the trigger to occur when the transitioning signal is faster than the + set volts/second rate. + - ``SLOWERthan`` sets the trigger to occur when the transitioning signal is slower than the + set volts/second rate. + - ``EQual`` sets the trigger to occur when the transitioning signal is equal to the set + volts/second rate. + - ``UNEQual`` sets the trigger to occur when the transitioning signal is not equal to the + set volts/second rate. + """ + + +class SearchSearchItemTriggerATransitionThresholdLow(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW`` command. + + Description: + - Sets or queries the source threshold LOW level for a transition trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW?`` 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:TRANsition:THReshold:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW? + ``` + + Info: + - ```` is the source threshold LOW level for a transition trigger searchk. + """ + + +class SearchSearchItemTriggerATransitionThresholdHigh(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH`` command. + + Description: + - Sets or queries the source threshold HIGH level for a transition trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH?`` 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:TRANsition:THReshold:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH? + ``` + + Info: + - ```` the source threshold HIGH level for a transition trigger search. + """ + + +class SearchSearchItemTriggerATransitionThreshold(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._high = SearchSearchItemTriggerATransitionThresholdHigh( + device, f"{self._cmd_syntax}:HIGH" + ) + self._low = SearchSearchItemTriggerATransitionThresholdLow( + device, f"{self._cmd_syntax}:LOW" + ) + + @property + def high(self) -> SearchSearchItemTriggerATransitionThresholdHigh: + """Return the ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH`` command. + + Description: + - Sets or queries the source threshold HIGH level for a transition trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH?`` 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:TRANsition:THReshold:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH? + ``` + + Info: + - ```` the source threshold HIGH level for a transition trigger search. + """ + return self._high + + @property + def low(self) -> SearchSearchItemTriggerATransitionThresholdLow: + """Return the ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW`` command. + + Description: + - Sets or queries the source threshold LOW level for a transition trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW?`` 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:TRANsition:THReshold:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW + - SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW? + ``` + + Info: + - ```` is the source threshold LOW level for a transition trigger searchk. + """ + return self._low + + +class SearchSearchItemTriggerATransitionSource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce`` command. + + Description: + - This command sets and queries the source for the transition search input. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition: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:TRANsition:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce {S_Ch|CH|MATH|REF} + - SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies is the remote scope number, and the analog channel. + - ``CH`` specifies one input channel as the source. + - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. + """ + + +class SearchSearchItemTriggerATransitionPolarity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity`` command. + + Description: + - This command specifies the polarity for the transition search. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity?`` 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:TRANsition:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity {POSitive|NEGative|EITher} + - SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity? + ``` + + Info: + - ``EITher`` places a mark on a transition of either polarity. + - ``NEGative`` places a mark on a transition of negative polarity. + - ``POSitive`` places a mark on a transition of positive polarity. + """ + + +class SearchSearchItemTriggerATransitionLogicqualification(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification`` command. + + Description: + - This command specifies whether or not to use logic qualification for a transition search. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification?`` 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:TRANsition:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification for a transition search. + - ``OFF`` specifies not to use logic qualification for a transition search. + """ + + +class SearchSearchItemTriggerATransitionDeltatime(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime`` command. + + Description: + - This command sets or queries the transition time setting for a transition trigger search + to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime?`` 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:TRANsition:DELTATime value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime + - SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime? + ``` + + Info: + - ```` specifies the transition time in seconds. + """ + + +class SearchSearchItemTriggerATransition(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TRANsition`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TRANsition?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.deltatime``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime`` command. + - ``.logicqualification``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification`` + command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold`` command tree. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._deltatime = SearchSearchItemTriggerATransitionDeltatime( + device, f"{self._cmd_syntax}:DELTATime" + ) + self._logicqualification = SearchSearchItemTriggerATransitionLogicqualification( + device, f"{self._cmd_syntax}:LOGICQUALification" + ) + self._polarity = SearchSearchItemTriggerATransitionPolarity( + device, f"{self._cmd_syntax}:POLarity" + ) + self._source = SearchSearchItemTriggerATransitionSource( + device, f"{self._cmd_syntax}:SOUrce" + ) + self._threshold = SearchSearchItemTriggerATransitionThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + self._when = SearchSearchItemTriggerATransitionWhen(device, f"{self._cmd_syntax}:WHEn") + + @property + def deltatime(self) -> SearchSearchItemTriggerATransitionDeltatime: + """Return the ``SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime`` command. + + Description: + - This command sets or queries the transition time setting for a transition trigger + search to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime?`` 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:TRANsition:DELTATime value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime + - SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime? + ``` + + Info: + - ```` specifies the transition time in seconds. + """ + return self._deltatime + + @property + def logicqualification(self) -> SearchSearchItemTriggerATransitionLogicqualification: + """Return the ``SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification`` command. + + Description: + - This command specifies whether or not to use logic qualification for a transition + search. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification?`` 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:TRANsition:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification for a transition search. + - ``OFF`` specifies not to use logic qualification for a transition search. + """ + return self._logicqualification + + @property + def polarity(self) -> SearchSearchItemTriggerATransitionPolarity: + """Return the ``SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity`` command. + + Description: + - This command specifies the polarity for the transition search. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity?`` 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:TRANsition:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity {POSitive|NEGative|EITher} + - SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity? + ``` + + Info: + - ``EITher`` places a mark on a transition of either polarity. + - ``NEGative`` places a mark on a transition of negative polarity. + - ``POSitive`` places a mark on a transition of positive polarity. + """ + return self._polarity + + @property + def source(self) -> SearchSearchItemTriggerATransitionSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce`` command. + + Description: + - This command sets and queries the source for the transition search input. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition: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:TRANsition:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce {S_Ch|CH|MATH|REF} + - SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce? + ``` + + Info: + - ``S_Ch`` specifies is the remote scope number, and the analog channel. + - ``CH`` specifies one input channel as the source. + - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. + """ + return self._source + + @property + def threshold(self) -> SearchSearchItemTriggerATransitionThreshold: + """Return the ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold:LOW`` command. + """ + return self._threshold + + @property + def when(self) -> SearchSearchItemTriggerATransitionWhen: + """Return the ``SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn`` command. + + Description: + - This command sets or queries the condition setting for a transition trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn?`` 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:TRANsition:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn {FASTERthan|SLOWERthan|EQual|UNEQual} + - SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn? + ``` + + Info: + - ``FASTERthan`` sets the trigger to occur when the transitioning signal is faster than + the set volts/second rate. + - ``SLOWERthan`` sets the trigger to occur when the transitioning signal is slower than + the set volts/second rate. + - ``EQual`` sets the trigger to occur when the transitioning signal is equal to the set + volts/second rate. + - ``UNEQual`` sets the trigger to occur when the transitioning signal is not equal to + the set volts/second rate. + """ + return self._when + + +class SearchSearchItemTriggerATimeoutTime(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. + + Description: + - This command sets or queries the time setting for a timeout trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe?`` 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:TIMe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe + - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe? + ``` + + Info: + - ```` is the time in seconds. + """ + + +class SearchSearchItemTriggerATimeoutThreshold(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold`` command. + + Description: + - Sets or queries the source threshold level for a timeout trigger search to determine where + to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold?`` 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:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold + - SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold? + ``` + + Info: + - ```` is the source threshold level for a timeout trigger search. + """ + + +class SearchSearchItemTriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. + + Description: + - This command sets and queries the source for timeout search input. The search number is + specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies one input channel as the source, where the channel number is specified + by x. + - ``CH_D`` specifies a digital reference waveform as the source waveform for the + specified search. + - ``MATH`` specifies the math waveform as the search source, where the math number is + specified by x. + - ``REF`` specifies the reference waveform as the search source, where the reference + number is specified by x. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified search. + """ # noqa: E501 + + +class SearchSearchItemTriggerATimeoutPolarity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. + + Description: + - The polarity to be used for a Timeout search. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity?`` 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:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity {STAYSHigh|STAYSLow|EITher} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity? + ``` + + Info: + - ``STAYSHigh`` specifies the polarity stays HIGH. + - ``STAYSLow`` specifies the polarity stays LOW. + - ``EITher`` specifies the polarity stays HIGH or stays LOW. + """ + + +class SearchSearchItemTriggerATimeoutLogicqualification(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification`` command. + + Description: + - This command specifies whether or not to use logic qualification for a timeout search. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification?`` 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:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification. + - ``OFF`` specifies not to use logic qualification. + """ + + +class SearchSearchItemTriggerATimeout(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TIMEOut?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:TIMEOut?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.logicqualification``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification`` + command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold`` command. + - ``.time``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._logicqualification = SearchSearchItemTriggerATimeoutLogicqualification( + device, f"{self._cmd_syntax}:LOGICQUALification" + ) + self._polarity = SearchSearchItemTriggerATimeoutPolarity( + device, f"{self._cmd_syntax}:POLarity" + ) + self._source = SearchSearchItemTriggerATimeoutSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = SearchSearchItemTriggerATimeoutThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + self._time = SearchSearchItemTriggerATimeoutTime(device, f"{self._cmd_syntax}:TIMe") + + @property + def logicqualification(self) -> SearchSearchItemTriggerATimeoutLogicqualification: + """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification`` command. + + Description: + - This command specifies whether or not to use logic qualification for a timeout search. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification?`` 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:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification. + - ``OFF`` specifies not to use logic qualification. + """ + return self._logicqualification + + @property + def polarity(self) -> SearchSearchItemTriggerATimeoutPolarity: + """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. + + Description: + - The polarity to be used for a Timeout search. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity?`` 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:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity {STAYSHigh|STAYSLow|EITher} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity? + ``` + + Info: + - ``STAYSHigh`` specifies the polarity stays HIGH. + - ``STAYSLow`` specifies the polarity stays LOW. + - ``EITher`` specifies the polarity stays HIGH or stays LOW. + """ + return self._polarity + + @property + def source(self) -> SearchSearchItemTriggerATimeoutSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. + + Description: + - This command sets and queries the source for timeout search input. The search number + is specified by x. + + 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 {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies one input channel as the source, where the channel number is + specified by x. + - ``CH_D`` specifies a digital reference waveform as the source waveform for the + specified search. + - ``MATH`` specifies the math waveform as the search source, where the math number is + specified by x. + - ``REF`` specifies the reference waveform as the search source, where the reference + number is specified by x. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified search. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> SearchSearchItemTriggerATimeoutThreshold: + """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold`` command. + + Description: + - Sets or queries the source threshold level for a timeout trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold?`` 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:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold + - SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold? + ``` + + Info: + - ```` is the source threshold level for a timeout trigger search. + """ + return self._threshold + + @property + def time(self) -> SearchSearchItemTriggerATimeoutTime: + """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. + + Description: + - This command sets or queries the time setting for a timeout trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe?`` 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:TIMe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe + - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe? + ``` + + Info: + - ```` is the time in seconds. + """ + return self._time + + +class SearchSearchItemTriggerAStopacq(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:STOPAcq`` command. + + Description: + - This command sets or queries whether acquisitions are stopped when a search hit is found. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:STOPAcq?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:STOPAcq?`` + 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:STOPAcq value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:STOPAcq {ON|OFF|} + - SEARCH:SEARCH:TRIGger:A:STOPAcq? + ``` + + Info: + - ```` is the number of the search on which to enable or disable the stop acquisition + function. + - ```` = 1 enables stopping when a search hit is found. Any other character disables + the feature. + - ``ON`` enables stopping when a search hit is found. + - ``OFF`` disables stopping on a search hit. + """ + + +class SearchSearchItemTriggerAState(SCPICmdWrite): + """The ``SEARCH:SEARCH:TRIGger:A:STATE`` command. + + Description: + - This command sets or queries the enabled state of the search. The search number is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:STATE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:STATE {ON|OFF|} + ``` + + Info: + - ```` = 1 enables the search. Any other character disables the search. + - ``ON`` enables the search. + - ``OFF`` disables the search. + """ + + +class SearchSearchItemTriggerASetholdSettime(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:SETTime`` command. + + Description: + - This command sets or queries the setup time setting for a setup/hold trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:SETTime?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:SETTime?`` 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:SETHold:SETTime value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:SETTime + - SEARCH:SEARCH:TRIGger:A:SETHold:SETTime? + ``` + + Info: + - ```` specifies the setup time for setup and hold violation triggering. + """ + + +class SearchSearchItemTriggerASetholdLogicpatternRefItem( + ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF`` command. + + Description: + - This command sets and returns the conditions used for generating an A logic pattern, with + respect to the defined input pattern, and identifies the time that the selected pattern + may be true and still generate the trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF?`` 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:SETHold:LOGICPattern:REF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF? + ``` + + Info: + - ``INCLude`` specifies including the specified reference SETHOLD inputs in the specified + search. + - ``DONTInclude`` specifies not including the specified reference SETHOLD inputs in the + specified search. + """ + + +class SearchSearchItemTriggerASetholdLogicpatternMathItem( + ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, with + respect to the defined input pattern, and identifies the time that the selected pattern + may be true and still generate the trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH?`` 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:SETHold:LOGICPattern:MATH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH? + ``` + + Info: + - ``INCLude`` specifies including the specified math SETHOLD inputs in the specified search. + - ``DONTInclude`` specifies not including the specified math SETHOLD inputs in the specified + search. + """ + + +class SearchSearchItemTriggerASetholdLogicpatternChannelDigitalBit( + ValidatedDigitalBit, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, with + respect to the defined input pattern, and identifies the time that the selected pattern + may be true and still generate the trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D?`` 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:SETHold:LOGICPattern:CH_D value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D? + ``` + + Info: + - ``INCLude`` specifies including the specified digital channel SETHOLD inputs in the + specified search. + - ``DONTInclude`` specifies not including the specified digital channel SETHOLD inputs in + the specified search. + """ + + +class SearchSearchItemTriggerASetholdLogicpatternChannel( + ValidatedChannel, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, with + respect to the defined input pattern, and identifies the time that the selected pattern + may be true and still generate the trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH?`` 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:SETHold:LOGICPattern:CH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH? + ``` + + Info: + - ``INCLude`` specifies including the specified channel SETHOLD inputs in the specified + search. + - ``DONTInclude`` specifies not including the specified channel SETHOLD inputs in the + specified search. + + Properties: + - ``.d``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._d: Dict[int, SearchSearchItemTriggerASetholdLogicpatternChannelDigitalBit] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerASetholdLogicpatternChannelDigitalBit( + device, f"{self._cmd_syntax}_D{x}" + ) + ) + ) + + @property + def d(self) -> Dict[int, SearchSearchItemTriggerASetholdLogicpatternChannelDigitalBit]: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, + with respect to the defined input pattern, and identifies the time that the selected + pattern may be true and still generate the trigger. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D?`` 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:SETHold:LOGICPattern:CH_D value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D? + ``` + + Info: + - ``INCLude`` specifies including the specified digital channel SETHOLD inputs in the + specified search. + - ``DONTInclude`` specifies not including the specified digital channel SETHOLD inputs + in the specified search. + """ + return self._d + + +class SearchSearchItemTriggerASetholdLogicpattern(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH`` command. + - ``.math``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH`` command. + - ``.ref``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, SearchSearchItemTriggerASetholdLogicpatternChannel] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerASetholdLogicpatternChannel( + device, f"{self._cmd_syntax}:CH{x}" + ) + ) + ) + self._math: Dict[int, SearchSearchItemTriggerASetholdLogicpatternMathItem] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerASetholdLogicpatternMathItem( + device, f"{self._cmd_syntax}:MATH{x}" + ) + ) + ) + self._ref: Dict[int, SearchSearchItemTriggerASetholdLogicpatternRefItem] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerASetholdLogicpatternRefItem( + device, f"{self._cmd_syntax}:REF{x}" + ) + ) + ) + + @property + def ch(self) -> Dict[int, SearchSearchItemTriggerASetholdLogicpatternChannel]: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, + with respect to the defined input pattern, and identifies the time that the selected + pattern may be true and still generate the trigger. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH?`` 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:SETHold:LOGICPattern:CH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH? + ``` + + Info: + - ``INCLude`` specifies including the specified channel SETHOLD inputs in the specified + search. + - ``DONTInclude`` specifies not including the specified channel SETHOLD inputs in the + specified search. + + Sub-properties: + - ``.d``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH_D`` command. + """ + return self._ch + + @property + def math(self) -> Dict[int, SearchSearchItemTriggerASetholdLogicpatternMathItem]: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, + with respect to the defined input pattern, and identifies the time that the selected + pattern may be true and still generate the trigger. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH?`` 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:SETHold:LOGICPattern:MATH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH? + ``` + + Info: + - ``INCLude`` specifies including the specified math SETHOLD inputs in the specified + search. + - ``DONTInclude`` specifies not including the specified math SETHOLD inputs in the + specified search. + """ + return self._math + + @property + def ref(self) -> Dict[int, SearchSearchItemTriggerASetholdLogicpatternRefItem]: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF`` command. + + Description: + - This command sets and returns the conditions used for generating an A logic pattern, + with respect to the defined input pattern, and identifies the time that the selected + pattern may be true and still generate the trigger. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF?`` 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:SETHold:LOGICPattern:REF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF {INCLude|DONTInclude} + - SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF? + ``` + + Info: + - ``INCLude`` specifies including the specified reference SETHOLD inputs in the + specified search. + - ``DONTInclude`` specifies not including the specified reference SETHOLD inputs in the + specified search. + """ + return self._ref + + +class SearchSearchItemTriggerASetholdLevelRefItem( + ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF`` command. + + Description: + - This command sets or queries the voltage level to use for setup & hold trigger search. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF?`` 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:SETHold:LEVel:REF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF? + ``` + + Info: + - ```` is the voltage level to use for setup & hold trigger search. + """ + + +class SearchSearchItemTriggerASetholdLevelMathItem( + ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH`` command. + + Description: + - This command sets or queries the voltage level to use for setup & hold trigger search. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH?`` 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:SETHold:LEVel:MATH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH? + ``` + + Info: + - ```` isi the voltage level to use for setup & hold trigger search. + """ + + +class SearchSearchItemTriggerASetholdLevelChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH`` command. + + Description: + - This command sets or queries the voltage level to use for setup & hold trigger search. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH?`` 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:SETHold:LEVel:CH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH? + ``` + + Info: + - ```` the voltage level to use for setup & hold trigger search. + """ + + +class SearchSearchItemTriggerASetholdLevel(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.ch``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH`` command. + - ``.math``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH`` command. + - ``.ref``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, SearchSearchItemTriggerASetholdLevelChannel] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerASetholdLevelChannel( + device, f"{self._cmd_syntax}:CH{x}" + ) + ) + ) + self._math: Dict[int, SearchSearchItemTriggerASetholdLevelMathItem] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerASetholdLevelMathItem( + device, f"{self._cmd_syntax}:MATH{x}" + ) + ) + ) + self._ref: Dict[int, SearchSearchItemTriggerASetholdLevelRefItem] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerASetholdLevelRefItem( + device, f"{self._cmd_syntax}:REF{x}" + ) + ) + ) + + @property + def ch(self) -> Dict[int, SearchSearchItemTriggerASetholdLevelChannel]: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH`` command. + + Description: + - This command sets or queries the voltage level to use for setup & hold trigger search. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH?`` 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:SETHold:LEVel:CH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH? + ``` + + Info: + - ```` the voltage level to use for setup & hold trigger search. + """ + return self._ch + + @property + def math(self) -> Dict[int, SearchSearchItemTriggerASetholdLevelMathItem]: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH`` command. + + Description: + - This command sets or queries the voltage level to use for setup & hold trigger search. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH?`` 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:SETHold:LEVel:MATH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH? + ``` + + Info: + - ```` isi the voltage level to use for setup & hold trigger search. + """ + return self._math + + @property + def ref(self) -> Dict[int, SearchSearchItemTriggerASetholdLevelRefItem]: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF`` command. + + Description: + - This command sets or queries the voltage level to use for setup & hold trigger search. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF?`` 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:SETHold:LEVel:REF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF + - SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF? + ``` + + Info: + - ```` is the voltage level to use for setup & hold trigger search. + """ + return self._ref + + +class SearchSearchItemTriggerASetholdHoldtime(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime`` command. + + Description: + - This command sets or queries the hold time setting for a setup/hold trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime?`` 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:SETHold:HOLDTime value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime + - SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime? + ``` + + Info: + - ```` specifies the hold time setting in seconds. Positive values for hold time occur + after the clock edge. Negative values occur before the clock edge. + """ + + +class SearchSearchItemTriggerASetholdClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the clock threshold setting for a setup/hold trigger search + to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold?`` 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:SETHold:CLOCk:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold? + ``` + + Info: + - ```` the clock threshold setting for a setup/hold trigger search. + """ + + +class SearchSearchItemTriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the clock source setting for a setup/hold trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk: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:SETHold:CLOCk:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an input channel as the source, where = 1, 2, 3, 4, 5, 6, 7, or 8, + depending on the number of channels in your instrument. + - ``CH_D`` specifies a digital waveform as the setup and hold clock source waveform + for the specified search. + - ``MATH`` specifies the math waveform as the search source, where = ≥1. + - ``REF`` specifies the reference waveform as the search source, where = ≥1. + - ``REF_D`` specifies a digital reference waveform as the setup and hold clock source + waveform for the specified search. + """ # noqa: E501 + + +class SearchSearchItemTriggerASetholdClockEdge(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE`` command. + + Description: + - This command sets or queries the clock slope setting for a setup/hold trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE?`` 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:SETHold:CLOCk:EDGE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE {FALL|RISe} + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE? + ``` + + Info: + - ``FALL`` specifies the polarity as the clock falling edge. + - ``RISe`` specifies the polarity as the clock rising edge. + """ + + +class SearchSearchItemTriggerASetholdClock(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.edge``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edge = SearchSearchItemTriggerASetholdClockEdge(device, f"{self._cmd_syntax}:EDGE") + self._source = SearchSearchItemTriggerASetholdClockSource( + device, f"{self._cmd_syntax}:SOUrce" + ) + self._threshold = SearchSearchItemTriggerASetholdClockThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + + @property + def edge(self) -> SearchSearchItemTriggerASetholdClockEdge: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE`` command. + + Description: + - This command sets or queries the clock slope setting for a setup/hold trigger search + to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE?`` 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:SETHold:CLOCk:EDGE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE {FALL|RISe} + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE? + ``` + + Info: + - ``FALL`` specifies the polarity as the clock falling edge. + - ``RISe`` specifies the polarity as the clock rising edge. + """ + return self._edge + + @property + def source(self) -> SearchSearchItemTriggerASetholdClockSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce`` command. + + Description: + - This command sets or queries the clock source setting for a setup/hold trigger search + to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk: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:SETHold:CLOCk:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies an input channel as the source, where = 1, 2, 3, 4, 5, 6, 7, + or 8, depending on the number of channels in your instrument. + - ``CH_D`` specifies a digital waveform as the setup and hold clock source + waveform for the specified search. + - ``MATH`` specifies the math waveform as the search source, where = ≥1. + - ``REF`` specifies the reference waveform as the search source, where = ≥1. + - ``REF_D`` specifies a digital reference waveform as the setup and hold clock + source waveform for the specified search. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> SearchSearchItemTriggerASetholdClockThreshold: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the clock threshold setting for a setup/hold trigger + search to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold?`` 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:SETHold:CLOCk:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold? + ``` + + Info: + - ```` the clock threshold setting for a setup/hold trigger search. + """ + return self._threshold + + +class SearchSearchItemTriggerASethold(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:SETHold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:SETHold?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:SETHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.clock``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk`` command tree. + - ``.holdtime``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime`` command. + - ``.level``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel`` command tree. + - ``.logicpattern``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern`` command tree. + - ``.settime``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:SETTime`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._clock = SearchSearchItemTriggerASetholdClock(device, f"{self._cmd_syntax}:CLOCk") + self._holdtime = SearchSearchItemTriggerASetholdHoldtime( + device, f"{self._cmd_syntax}:HOLDTime" + ) + self._level = SearchSearchItemTriggerASetholdLevel(device, f"{self._cmd_syntax}:LEVel") + self._logicpattern = SearchSearchItemTriggerASetholdLogicpattern( + device, f"{self._cmd_syntax}:LOGICPattern" + ) + self._settime = SearchSearchItemTriggerASetholdSettime( + device, f"{self._cmd_syntax}:SETTime" + ) + + @property + def clock(self) -> SearchSearchItemTriggerASetholdClock: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.edge``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold`` command. + """ + return self._clock + + @property + def holdtime(self) -> SearchSearchItemTriggerASetholdHoldtime: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime`` command. + + Description: + - This command sets or queries the hold time setting for a setup/hold trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime?`` 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:SETHold:HOLDTime value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime + - SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime? + ``` + + Info: + - ```` specifies the hold time setting in seconds. Positive values for hold time + occur after the clock edge. Negative values occur before the clock edge. + """ + return self._holdtime + + @property + def level(self) -> SearchSearchItemTriggerASetholdLevel: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:CH`` command. + - ``.math``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:MATH`` command. + - ``.ref``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel:REF`` command. + """ + return self._level + + @property + def logicpattern(self) -> SearchSearchItemTriggerASetholdLogicpattern: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:CH`` command. + - ``.math``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:MATH`` command. + - ``.ref``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern:REF`` command. + """ + return self._logicpattern + + @property + def settime(self) -> SearchSearchItemTriggerASetholdSettime: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold:SETTime`` command. + + Description: + - This command sets or queries the setup time setting for a setup/hold trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:SETTime?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold:SETTime?`` 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:SETHold:SETTime value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:SETHold:SETTime + - SEARCH:SEARCH:TRIGger:A:SETHold:SETTime? + ``` + + Info: + - ```` specifies the setup time for setup and hold violation triggering. + """ + return self._settime + + +class SearchSearchItemTriggerARuntWidth(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` command. + + Description: + - This command sets or queries the width setting for a runt trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth?`` 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:RUNT:WIDth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:WIDth + - SEARCH:SEARCH:TRIGger:A:RUNT:WIDth? + ``` + + Info: + - ```` specifies the minimum width in seconds. + """ + + +class SearchSearchItemTriggerARuntWhen(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:RUNT:WHEn`` command. + + Description: + - This command sets or queries the condition setting for a runt trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT:WHEn?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:WHEn?`` 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:RUNT:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:WHEn {OCCURS|LESSthan|MOREthan|EQual}NOTEQual} + - SEARCH:SEARCH:TRIGger:A:RUNT:WHEn? + ``` + + Info: + - ``LESSthan`` argument sets the instrument to search if the a runt pulse is detected with + width less than the time set by the ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` command. + - ``MOREthan`` argument sets the instrument to search if the a runt pulse is detected with + width more than the time set by the ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` command. + - ``EQual`` argument sets the instrument to search when the pattern is true for a time + period equal to the time period specified in ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` + within a ±5% tolerance. + - ``NOTEQual`` argument sets the instrument to search when the pattern is true for atime + period greater than or less than (but not equal) the time period specified in + ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` within a ±5% tolerance. + - ``OCCURS`` argument specifies a search event if a runt of any detectable width occurs. + """ + + +class SearchSearchItemTriggerARuntThresholdLow(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW`` command. + + Description: + - Sets or queries the source threshold LOW level for a runt trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW?`` 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:RUNT:THReshold:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW? + ``` + + Info: + - ```` is the source threshold LOW level for a runt trigger search. + """ + + +class SearchSearchItemTriggerARuntThresholdHigh(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH`` command. + + Description: + - This command sets or queries the source threshold HIGH level for a runt trigger search to + determine where to place a mark. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH?`` 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:RUNT:THReshold:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH? + ``` + + Info: + - ```` is the source threshold HIGH level for a runt trigger search. + """ + + +class SearchSearchItemTriggerARuntThreshold(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._high = SearchSearchItemTriggerARuntThresholdHigh(device, f"{self._cmd_syntax}:HIGH") + self._low = SearchSearchItemTriggerARuntThresholdLow(device, f"{self._cmd_syntax}:LOW") + + @property + def high(self) -> SearchSearchItemTriggerARuntThresholdHigh: + """Return the ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH`` command. + + Description: + - This command sets or queries the source threshold HIGH level for a runt trigger search + to determine where to place a mark. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH?`` 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:RUNT:THReshold:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH? + ``` + + Info: + - ```` is the source threshold HIGH level for a runt trigger search. + """ + return self._high + + @property + def low(self) -> SearchSearchItemTriggerARuntThresholdLow: + """Return the ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW`` command. + + Description: + - Sets or queries the source threshold LOW level for a runt trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW?`` 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:RUNT:THReshold:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW + - SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW? + ``` + + Info: + - ```` is the source threshold LOW level for a runt trigger search. + """ + return self._low + + +class SearchSearchItemTriggerARuntSource(SCPICmdWrite): + """The ``SEARCH:SEARCH:TRIGger:A:RUNT:SOUrce`` command. + + Description: + - This command sets and queries the source for the Runt search input. The search number is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:SOUrce {CH|REF} + ``` + + Info: + - ``CH`` specifies an analog channel as the search source, where the channel number is + specified by x. + - ``REF`` specifies the reference waveform as the search source, where the reference + number is specified by x. + """ + + +class SearchSearchItemTriggerARuntPolarity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:RUNT:POLarity`` command. + + Description: + - This command specifies the polarity for the runt search. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:POLarity?`` 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:RUNT:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:POLarity {POSitive|NEGative|EITher} + - SEARCH:SEARCH:TRIGger:A:RUNT:POLarity? + ``` + + Info: + - ``POSitive`` specifies using positive polarity for the runt search. + - ``NEGative`` specifies using negative polarity for the runt search. + - ``EITher`` specifies using either positive or negative polarity for the runt search. + """ + + +class SearchSearchItemTriggerARuntLogicqualification(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification`` command. + + Description: + - This command specifies whether or not to use logic qualification for a runt search. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification?`` 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:RUNT:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification for a runt search. + - ``OFF`` specifies not to use logic qualification for a runt search. + """ + + +class SearchSearchItemTriggerARunt(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:RUNT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.logicqualification``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification`` + command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold`` command tree. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:WHEn`` command. + - ``.width``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._logicqualification = SearchSearchItemTriggerARuntLogicqualification( + device, f"{self._cmd_syntax}:LOGICQUALification" + ) + self._polarity = SearchSearchItemTriggerARuntPolarity( + device, f"{self._cmd_syntax}:POLarity" + ) + self._source = SearchSearchItemTriggerARuntSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = SearchSearchItemTriggerARuntThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + self._when = SearchSearchItemTriggerARuntWhen(device, f"{self._cmd_syntax}:WHEn") + self._width = SearchSearchItemTriggerARuntWidth(device, f"{self._cmd_syntax}:WIDth") + + @property + def logicqualification(self) -> SearchSearchItemTriggerARuntLogicqualification: + """Return the ``SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification`` command. + + Description: + - This command specifies whether or not to use logic qualification for a runt search. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification?`` 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:RUNT:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification for a runt search. + - ``OFF`` specifies not to use logic qualification for a runt search. + """ + return self._logicqualification + + @property + def polarity(self) -> SearchSearchItemTriggerARuntPolarity: + """Return the ``SEARCH:SEARCH:TRIGger:A:RUNT:POLarity`` command. + + Description: + - This command specifies the polarity for the runt search. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:POLarity?`` 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:RUNT:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:POLarity {POSitive|NEGative|EITher} + - SEARCH:SEARCH:TRIGger:A:RUNT:POLarity? + ``` + + Info: + - ``POSitive`` specifies using positive polarity for the runt search. + - ``NEGative`` specifies using negative polarity for the runt search. + - ``EITher`` specifies using either positive or negative polarity for the runt search. + """ + return self._polarity + + @property + def source(self) -> SearchSearchItemTriggerARuntSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:RUNT:SOUrce`` command. + + Description: + - This command sets and queries the source for the Runt search input. The search number + is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:SOUrce {CH|REF} + ``` + + Info: + - ``CH`` specifies an analog channel as the search source, where the channel number + is specified by x. + - ``REF`` specifies the reference waveform as the search source, where the reference + number is specified by x. + """ + return self._source + + @property + def threshold(self) -> SearchSearchItemTriggerARuntThreshold: + """Return the ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold:LOW`` command. + """ + return self._threshold + + @property + def when(self) -> SearchSearchItemTriggerARuntWhen: + """Return the ``SEARCH:SEARCH:TRIGger:A:RUNT:WHEn`` command. + + Description: + - This command sets or queries the condition setting for a runt trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT:WHEn?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:WHEn?`` 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:RUNT:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:WHEn {OCCURS|LESSthan|MOREthan|EQual}NOTEQual} + - SEARCH:SEARCH:TRIGger:A:RUNT:WHEn? + ``` + + Info: + - ``LESSthan`` argument sets the instrument to search if the a runt pulse is detected + with width less than the time set by the ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` + command. + - ``MOREthan`` argument sets the instrument to search if the a runt pulse is detected + with width more than the time set by the ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` + command. + - ``EQual`` argument sets the instrument to search when the pattern is true for a time + period equal to the time period specified in ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` + within a ±5% tolerance. + - ``NOTEQual`` argument sets the instrument to search when the pattern is true for atime + period greater than or less than (but not equal) the time period specified in + ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` within a ±5% tolerance. + - ``OCCURS`` argument specifies a search event if a runt of any detectable width occurs. + """ + return self._when + + @property + def width(self) -> SearchSearchItemTriggerARuntWidth: + """Return the ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` command. + + Description: + - This command sets or queries the width setting for a runt trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth?`` 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:RUNT:WIDth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:RUNT:WIDth + - SEARCH:SEARCH:TRIGger:A:RUNT:WIDth? + ``` + + Info: + - ```` specifies the minimum width in seconds. + """ + return self._width + + +class SearchSearchItemTriggerAPulsewidthWhen(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn`` command. + + Description: + - This command specifies to search for a pulse with a width (duration) that is less than, + greater than, equal to, or unequal to a specified value (set using + ``SEARch:A:PULSEWidth:WIDth`` ), OR whose ``SEARch:A:PULSEWidth:LOWLimit`` and + ``SEARch:A:PULSEWidth:HIGHLimit`` ). The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn?`` 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:PULSEWidth:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn {LESSthan|MOREthan|EQual|UNEQual|WIThin|OUTside} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn? + ``` + + Info: + - ``LESSthan`` causes a search when a pulse is detected with a width less than the time set + by the ``SEARch:A:PULSEWidth:WIDth`` command. + - ``MOREthan`` causes a search when a pulse is detected with a width greater than the time + set by the ``SEARch:A:PULSEWidth:WIDth`` command. + - ``EQual`` causes a search when a pulse is detected with a width equal to the time period + specified in ``SEARch:A:PULSEWidth:WIDth`` within a ±5% tolerance. + - ``UNEQual`` causes a search when a pulse is detected with a width greater than or less + than (but not equal) the time period specified in ``SEARch:A:PULSEWidth:WIDth`` within a + ±5% tolerance. + - ``WIThin`` causes a search when a pulse is detected that is within a range set by two + values. + - ``OUTside`` causes a search when a pulse is detected that is outside of a range set by two + values. + """ # noqa: E501 + + +class SearchSearchItemTriggerAPulsewidthThreshold(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold`` command. + + Description: + - Sets or queries the source threshold level for a pulse width trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold?`` 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:PULSEWidth:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold? + ``` + + Info: + - ```` is the source threshold level for a pulse width trigger search. + """ + + +class SearchSearchItemTriggerAPulsewidthSource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce`` command. + + Description: + - This command sets and queries the source for the pulse width search input. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth: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:PULSEWidth:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce {S_Ch_D|CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies one input channel as the source, where the channel number is specified + by x. + - ``CH_D`` specifies a digital reference waveform as the source waveform for the + specified search. + - ``REF`` specifies the reference waveform as the search source, where the reference + number is specified by x. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified search. + """ # noqa: E501 + + +class SearchSearchItemTriggerAPulsewidthPolarity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity`` command. + + Description: + - This command specifies the polarity for a pulse width search. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity?`` 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:PULSEWidth:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity {POSitive|NEGative} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity? + ``` + + Info: + - ``POSitive`` specifies positive polarity for a pulse width search. + - ``NEGative`` specifies negative polarity for a pulse width search. + """ + + +class SearchSearchItemTriggerAPulsewidthLowlimit(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit`` command. + + Description: + - This command specifies the lower limit to use, in seconds, when searching for a pulse + whose duration is inside or outside a range of two values. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit?`` 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:PULSEWidth:LOWLimit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit? + ``` + + Info: + - ```` is the lower limit to use, in seconds, when searching for a pulse. + """ + + +class SearchSearchItemTriggerAPulsewidthLogicqualification(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification`` command. + + Description: + - This command specifies whether or not to use logic qualification for a pulse width search. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification?`` 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:PULSEWidth:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification. + - ``OFF`` specifies not to use logic qualification. + """ + + +class SearchSearchItemTriggerAPulsewidthHighlimit(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit`` command. + + Description: + - This command specifies the upper limit to use, in seconds, when searching for a pulse + whose duration is inside or outside a range of two values. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit?`` 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:PULSEWidth:HIGHLimit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit? + ``` + + Info: + - ```` is the upper limit to use, in seconds, when searching for a pulse. + """ + + +class SearchSearchItemTriggerAPulsewidth(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.highlimit``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit`` command. + - ``.logicqualification``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification`` + command. + - ``.lowlimit``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit`` command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold`` command. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._highlimit = SearchSearchItemTriggerAPulsewidthHighlimit( + device, f"{self._cmd_syntax}:HIGHLimit" + ) + self._logicqualification = SearchSearchItemTriggerAPulsewidthLogicqualification( + device, f"{self._cmd_syntax}:LOGICQUALification" + ) + self._lowlimit = SearchSearchItemTriggerAPulsewidthLowlimit( + device, f"{self._cmd_syntax}:LOWLimit" + ) + self._polarity = SearchSearchItemTriggerAPulsewidthPolarity( + device, f"{self._cmd_syntax}:POLarity" + ) + self._source = SearchSearchItemTriggerAPulsewidthSource( + device, f"{self._cmd_syntax}:SOUrce" + ) + self._threshold = SearchSearchItemTriggerAPulsewidthThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + self._when = SearchSearchItemTriggerAPulsewidthWhen(device, f"{self._cmd_syntax}:WHEn") + + @property + def highlimit(self) -> SearchSearchItemTriggerAPulsewidthHighlimit: + """Return the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit`` command. + + Description: + - This command specifies the upper limit to use, in seconds, when searching for a pulse + whose duration is inside or outside a range of two values. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit?`` 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:PULSEWidth:HIGHLimit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit? + ``` + + Info: + - ```` is the upper limit to use, in seconds, when searching for a pulse. + """ + return self._highlimit + + @property + def logicqualification(self) -> SearchSearchItemTriggerAPulsewidthLogicqualification: + """Return the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification`` command. + + Description: + - This command specifies whether or not to use logic qualification for a pulse width + search. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification?`` 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:PULSEWidth:LOGICQUALification value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification {ON|OFF} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification? + ``` + + Info: + - ``ON`` specifies to use logic qualification. + - ``OFF`` specifies not to use logic qualification. + """ + return self._logicqualification + + @property + def lowlimit(self) -> SearchSearchItemTriggerAPulsewidthLowlimit: + """Return the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit`` command. + + Description: + - This command specifies the lower limit to use, in seconds, when searching for a pulse + whose duration is inside or outside a range of two values. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit?`` 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:PULSEWidth:LOWLimit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit? + ``` + + Info: + - ```` is the lower limit to use, in seconds, when searching for a pulse. + """ + return self._lowlimit + + @property + def polarity(self) -> SearchSearchItemTriggerAPulsewidthPolarity: + """Return the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity`` command. + + Description: + - This command specifies the polarity for a pulse width search. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity?`` 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:PULSEWidth:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity {POSitive|NEGative} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity? + ``` + + Info: + - ``POSitive`` specifies positive polarity for a pulse width search. + - ``NEGative`` specifies negative polarity for a pulse width search. + """ + return self._polarity + + @property + def source(self) -> SearchSearchItemTriggerAPulsewidthSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce`` command. + + Description: + - This command sets and queries the source for the pulse width search input. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth: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:PULSEWidth:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce {S_Ch_D|CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies one input channel as the source, where the channel number is + specified by x. + - ``CH_D`` specifies a digital reference waveform as the source waveform for the + specified search. + - ``REF`` specifies the reference waveform as the search source, where the reference + number is specified by x. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified search. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> SearchSearchItemTriggerAPulsewidthThreshold: + """Return the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold`` command. + + Description: + - Sets or queries the source threshold level for a pulse width trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold?`` 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:PULSEWidth:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold? + ``` + + Info: + - ```` is the source threshold level for a pulse width trigger search. + """ + return self._threshold + + @property + def when(self) -> SearchSearchItemTriggerAPulsewidthWhen: + """Return the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn`` command. + + Description: + - This command specifies to search for a pulse with a width (duration) that is less + than, greater than, equal to, or unequal to a specified value (set using + ``SEARch:A:PULSEWidth:WIDth`` ), OR whose ``SEARch:A:PULSEWidth:LOWLimit`` and + ``SEARch:A:PULSEWidth:HIGHLimit`` ). The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn?`` 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:PULSEWidth:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn {LESSthan|MOREthan|EQual|UNEQual|WIThin|OUTside} + - SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn? + ``` + + Info: + - ``LESSthan`` causes a search when a pulse is detected with a width less than the time + set by the ``SEARch:A:PULSEWidth:WIDth`` command. + - ``MOREthan`` causes a search when a pulse is detected with a width greater than the + time set by the ``SEARch:A:PULSEWidth:WIDth`` command. + - ``EQual`` causes a search when a pulse is detected with a width equal to the time + period specified in ``SEARch:A:PULSEWidth:WIDth`` within a ±5% tolerance. + - ``UNEQual`` causes a search when a pulse is detected with a width greater than or less + than (but not equal) the time period specified in ``SEARch:A:PULSEWidth:WIDth`` within + a ±5% tolerance. + - ``WIThin`` causes a search when a pulse is detected that is within a range set by two + values. + - ``OUTside`` causes a search when a pulse is detected that is outside of a range set by + two values. + """ # noqa: E501 + return self._when + + +class SearchSearchItemTriggerALogicWhen(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn`` command. + + Description: + - This command sets or queries the condition for generating an A or B logic search with + respect to the defined input pattern. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn?`` 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:LOGIc:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn {TRUe|FALSe|MOREThan|LESSThan|EQual|UNEQual} + - SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn? + ``` + + Info: + - ``TRUe`` searches on an input value that is true. + - ``FALSe`` searches on an input value that is false. + - ``MOREthan`` searches on an input value that is greater than a set value. + - ``LESSthan`` searches on an input value that is less than a set value. + - ``EQual`` searches on an input value that is equal to a set value. + - ``UNEQual`` searches on an input value that is not equal to a set value. + """ + + +class SearchSearchItemTriggerALogicUseclockedge(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge`` command. + + Description: + - This command specifies whether or not Logic search uses a clock source. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge?`` 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:LOGIc:USEClockedge value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge {OFF|ON|0|1} + - SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge? + ``` + + Info: + - ``OFF`` specifies not to use the clock source. + - ``ON`` specifies to use the clock source. + - ``0`` specifies not to use the clock source. + - ``1`` specifies to use the clock source. + """ + + +class SearchSearchItemTriggerALogicPolarity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity`` command. + + Description: + - This command sets or queries the polarity for the clock channel when Use Clock Edge is set + to Yes for Logic search type. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity?`` 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:LOGIc:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity {POSitive|NEGative|EITher} + - SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity? + ``` + + Info: + - ``POSitive`` specifies using the positive clock edge. + - ``NEGative`` specifies using negative clock edge. + - ``EITher`` specifies using either the positive or negative clock edge. + """ + + +class SearchSearchItemTriggerALogicLogicpatternRefItem( + ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, with + respect to the defined input pattern, and identifies the time that the selected pattern + may be true and still generate the trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF?`` 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:LOGIc:LOGICPattern:REF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF? + ``` + + Info: + - ``H`` specifies triggering when the pattern is high. + - ``L`` specifies triggering when the pattern is low. + - ``X`` specifies triggering when the pattern is high or low. + """ + + +class SearchSearchItemTriggerALogicLogicpatternMathItem( + ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, with + respect to the defined input pattern, and identifies the time that the selected pattern + may be true and still generate the trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH?`` 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:LOGIc:LOGICPattern:MATH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH? + ``` + + Info: + - ``H`` specifies triggering when the pattern is high. + - ``L`` specifies triggering when the pattern is low. + - ``X`` specifies triggering when the pattern is high or low. + """ + + +class SearchSearchItemTriggerALogicLogicpatternChannelDigitalBit( + ValidatedDigitalBit, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, with + respect to the defined input pattern, and identifies the time that the selected pattern + may be true and still generate the trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D?`` 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:LOGIc:LOGICPattern:CH_D value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D? + ``` + + Info: + - ``H`` specifies triggering when the pattern is high. + - ``L`` specifies triggering when the pattern is low. + - ``X`` specifies triggering when the pattern is high or low. + """ + + +class SearchSearchItemTriggerALogicLogicpatternChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, with + respect to the defined input pattern, and identifies the time that the selected pattern + may be true and still generate the trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH?`` 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:LOGIc:LOGICPattern:CH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH? + ``` + + Info: + - ``H`` specifies triggering when the pattern is high. + - ``L`` specifies triggering when the pattern is low. + - ``X`` specifies triggering when the pattern is high or low. + + Properties: + - ``.d``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._d: Dict[int, SearchSearchItemTriggerALogicLogicpatternChannelDigitalBit] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerALogicLogicpatternChannelDigitalBit( + device, f"{self._cmd_syntax}_D{x}" + ) + ) + ) + + @property + def d(self) -> Dict[int, SearchSearchItemTriggerALogicLogicpatternChannelDigitalBit]: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, + with respect to the defined input pattern, and identifies the time that the selected + pattern may be true and still generate the trigger. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D?`` 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:LOGIc:LOGICPattern:CH_D value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D? + ``` + + Info: + - ``H`` specifies triggering when the pattern is high. + - ``L`` specifies triggering when the pattern is low. + - ``X`` specifies triggering when the pattern is high or low. + """ + return self._d + + +class SearchSearchItemTriggerALogicLogicpattern(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH`` command. + - ``.math``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH`` command. + - ``.ref``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, SearchSearchItemTriggerALogicLogicpatternChannel] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerALogicLogicpatternChannel( + device, f"{self._cmd_syntax}:CH{x}" + ) + ) + ) + self._math: Dict[int, SearchSearchItemTriggerALogicLogicpatternMathItem] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerALogicLogicpatternMathItem( + device, f"{self._cmd_syntax}:MATH{x}" + ) + ) + ) + self._ref: Dict[int, SearchSearchItemTriggerALogicLogicpatternRefItem] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerALogicLogicpatternRefItem( + device, f"{self._cmd_syntax}:REF{x}" + ) + ) + ) + + @property + def ch(self) -> Dict[int, SearchSearchItemTriggerALogicLogicpatternChannel]: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, + with respect to the defined input pattern, and identifies the time that the selected + pattern may be true and still generate the trigger. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH?`` 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:LOGIc:LOGICPattern:CH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH? + ``` + + Info: + - ``H`` specifies triggering when the pattern is high. + - ``L`` specifies triggering when the pattern is low. + - ``X`` specifies triggering when the pattern is high or low. + + Sub-properties: + - ``.d``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH_D`` command. + """ + return self._ch + + @property + def math(self) -> Dict[int, SearchSearchItemTriggerALogicLogicpatternMathItem]: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, + with respect to the defined input pattern, and identifies the time that the selected + pattern may be true and still generate the trigger. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH?`` 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:LOGIc:LOGICPattern:MATH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH? + ``` + + Info: + - ``H`` specifies triggering when the pattern is high. + - ``L`` specifies triggering when the pattern is low. + - ``X`` specifies triggering when the pattern is high or low. + """ + return self._math + + @property + def ref(self) -> Dict[int, SearchSearchItemTriggerALogicLogicpatternRefItem]: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF`` command. + + Description: + - This command sets or queries the conditions used for generating an A logic pattern, + with respect to the defined input pattern, and identifies the time that the selected + pattern may be true and still generate the trigger. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF?`` 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:LOGIc:LOGICPattern:REF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF {H|L|X} + - SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF? + ``` + + Info: + - ``H`` specifies triggering when the pattern is high. + - ``L`` specifies triggering when the pattern is low. + - ``X`` specifies triggering when the pattern is high or low. + """ + return self._ref + + +class SearchSearchItemTriggerALogicLevelRefItem( + ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF`` command. + + Description: + - This command sets the voltage level to use for logic trigger search. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF?`` 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:LOGIc:LEVel:REF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF? + ``` + + Info: + - ```` is the voltage level to use for logic trigger search. + """ + + +class SearchSearchItemTriggerALogicLevelMathItem( + ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH`` command. + + Description: + - This command sets the voltage level to use for logic trigger search. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH?`` 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:LOGIc:LEVel:MATH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH? + ``` + + Info: + - ```` is the voltage level to use for logic trigger search. + """ + + +class SearchSearchItemTriggerALogicLevelChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH`` command. + + Description: + - This command sets or queries the voltage level to use for logic trigger search. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH?`` 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:LOGIc:LEVel:CH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH? + ``` + + Info: + - ```` is the voltage level to use for logic trigger search. + """ + + +class SearchSearchItemTriggerALogicLevel(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.ch``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH`` command. + - ``.math``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH`` command. + - ``.ref``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, SearchSearchItemTriggerALogicLevelChannel] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerALogicLevelChannel( + device, f"{self._cmd_syntax}:CH{x}" + ) + ) + ) + self._math: Dict[int, SearchSearchItemTriggerALogicLevelMathItem] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerALogicLevelMathItem( + device, f"{self._cmd_syntax}:MATH{x}" + ) + ) + ) + self._ref: Dict[int, SearchSearchItemTriggerALogicLevelRefItem] = ( + DefaultDictPassKeyToFactory( + lambda x: SearchSearchItemTriggerALogicLevelRefItem( + device, f"{self._cmd_syntax}:REF{x}" + ) + ) + ) + + @property + def ch(self) -> Dict[int, SearchSearchItemTriggerALogicLevelChannel]: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH`` command. + + Description: + - This command sets or queries the voltage level to use for logic trigger search. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH?`` 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:LOGIc:LEVel:CH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH? + ``` + + Info: + - ```` is the voltage level to use for logic trigger search. + """ + return self._ch + + @property + def math(self) -> Dict[int, SearchSearchItemTriggerALogicLevelMathItem]: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH`` command. + + Description: + - This command sets the voltage level to use for logic trigger search. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH?`` 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:LOGIc:LEVel:MATH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH? + ``` + + Info: + - ```` is the voltage level to use for logic trigger search. + """ + return self._math + + @property + def ref(self) -> Dict[int, SearchSearchItemTriggerALogicLevelRefItem]: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF`` command. + + Description: + - This command sets the voltage level to use for logic trigger search. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF?`` 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:LOGIc:LEVel:REF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF + - SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF? + ``` + + Info: + - ```` is the voltage level to use for logic trigger search. + """ + return self._ref + + +class SearchSearchItemTriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce`` command. + + Description: + - This command specifies or queries the channel to use as the clock source for logic + trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK: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:LOGIc:INPUT:CLOCK:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce {S_Ch_D|CH|CH_D|REF_D} + - SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies one input channel as the source, where the channel number is specified + by x. + - ``CH_D`` specifies a digital reference waveform as the source waveform for the + specified search. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified search. + """ # noqa: E501 + + +class SearchSearchItemTriggerALogicInputClock(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``CH`` specifies one input channel as the source, where the channel number is specified + by x. + + Properties: + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = SearchSearchItemTriggerALogicInputClockSource( + device, f"{self._cmd_syntax}:SOUrce" + ) + + @property + def source(self) -> SearchSearchItemTriggerALogicInputClockSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce`` command. + + Description: + - This command specifies or queries the channel to use as the clock source for logic + trigger. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK: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:LOGIc:INPUT:CLOCK:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce {S_Ch_D|CH|CH_D|REF_D} + - SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies one input channel as the source, where the channel number is + specified by x. + - ``CH_D`` specifies a digital reference waveform as the source waveform for the + specified search. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified search. + """ # noqa: E501 + return self._source + + +class SearchSearchItemTriggerALogicInput(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``CH`` specifies one input channel as the source, where the channel number is specified + by x. + + Properties: + - ``.clock``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._clock = SearchSearchItemTriggerALogicInputClock(device, f"{self._cmd_syntax}:CLOCK") + + @property + def clock(self) -> SearchSearchItemTriggerALogicInputClock: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``CH`` specifies one input channel as the source, where the channel number is + specified by x. + + Sub-properties: + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK:SOUrce`` command. + """ + return self._clock + + +class SearchSearchItemTriggerALogicFunction(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion`` command. + + Description: + - This command sets or queries the logic operator for a pattern or state trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion?`` 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:LOGIc:FUNCtion value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion {AND|NANd|NOR|OR} + - SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion? + ``` + + Info: + - ``AND`` places a mark if all conditions are true. + - ``NANd`` places a mark if any of the conditions are false. + - ``NOR`` places a mark if all conditions are false. + - ``OR`` places a mark if any of the conditions are true. + """ + + +class SearchSearchItemTriggerALogicDeltatime(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime`` command. + + Description: + - This command specifies the Logic search delta time value. The time value is used as part + of the Logic search condition to determine if the duration of a logic pattern meets the + specified time constraints. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime?`` 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:LOGIc:DELTatime value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime + - SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime? + ``` + + Info: + - ```` is delta time value. + """ + + +class SearchSearchItemTriggerALogicClockThreshold(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the logic clock threshold for a logic trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold?`` 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:LOGIc:CLOCk:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold + - SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold? + ``` + + Info: + - ```` is the logic clock threshold. + """ + + +class SearchSearchItemTriggerALogicClock(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._threshold = SearchSearchItemTriggerALogicClockThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + + @property + def threshold(self) -> SearchSearchItemTriggerALogicClockThreshold: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold`` command. + + Description: + - This command sets or queries the logic clock threshold for a logic trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold?`` 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:LOGIc:CLOCk:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold + - SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold? + ``` + + Info: + - ```` is the logic clock threshold. + """ + return self._threshold + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerALogic(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:LOGIc`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.clock``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk`` command tree. + - ``.deltatime``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime`` command. + - ``.function``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion`` command. + - ``.input``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT`` command tree. + - ``.level``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel`` command tree. + - ``.logicpattern``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern`` command tree. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity`` command. + - ``.useclockedge``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge`` command. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._clock = SearchSearchItemTriggerALogicClock(device, f"{self._cmd_syntax}:CLOCk") + self._deltatime = SearchSearchItemTriggerALogicDeltatime( + device, f"{self._cmd_syntax}:DELTatime" + ) + self._function = SearchSearchItemTriggerALogicFunction( + device, f"{self._cmd_syntax}:FUNCtion" + ) + self._input = SearchSearchItemTriggerALogicInput(device, f"{self._cmd_syntax}:INPUT") + self._level = SearchSearchItemTriggerALogicLevel(device, f"{self._cmd_syntax}:LEVel") + self._logicpattern = SearchSearchItemTriggerALogicLogicpattern( + device, f"{self._cmd_syntax}:LOGICPattern" + ) + self._polarity = SearchSearchItemTriggerALogicPolarity( + device, f"{self._cmd_syntax}:POLarity" + ) + self._useclockedge = SearchSearchItemTriggerALogicUseclockedge( + device, f"{self._cmd_syntax}:USEClockedge" + ) + self._when = SearchSearchItemTriggerALogicWhen(device, f"{self._cmd_syntax}:WHEn") + + @property + def clock(self) -> SearchSearchItemTriggerALogicClock: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk:THReshold`` command. + """ + return self._clock + + @property + def deltatime(self) -> SearchSearchItemTriggerALogicDeltatime: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime`` command. + + Description: + - This command specifies the Logic search delta time value. The time value is used as + part of the Logic search condition to determine if the duration of a logic pattern + meets the specified time constraints. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime?`` 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:LOGIc:DELTatime value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime + - SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime? + ``` + + Info: + - ```` is delta time value. + """ + return self._deltatime + + @property + def function(self) -> SearchSearchItemTriggerALogicFunction: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion`` command. + + Description: + - This command sets or queries the logic operator for a pattern or state trigger search + to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion?`` 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:LOGIc:FUNCtion value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion {AND|NANd|NOR|OR} + - SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion? + ``` + + Info: + - ``AND`` places a mark if all conditions are true. + - ``NANd`` places a mark if any of the conditions are false. + - ``NOR`` places a mark if all conditions are false. + - ``OR`` places a mark if any of the conditions are true. + """ + return self._function + + @property + def input(self) -> SearchSearchItemTriggerALogicInput: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Info: + - ``CH`` specifies one input channel as the source, where the channel number is + specified by x. + + Sub-properties: + - ``.clock``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT:CLOCK`` command tree. + """ + return self._input + + @property + def level(self) -> SearchSearchItemTriggerALogicLevel: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:CH`` command. + - ``.math``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:MATH`` command. + - ``.ref``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel:REF`` command. + """ + return self._level + + @property + def logicpattern(self) -> SearchSearchItemTriggerALogicLogicpattern: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:CH`` command. + - ``.math``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:MATH`` command. + - ``.ref``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern:REF`` command. + """ + return self._logicpattern + + @property + def polarity(self) -> SearchSearchItemTriggerALogicPolarity: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity`` command. + + Description: + - This command sets or queries the polarity for the clock channel when Use Clock Edge is + set to Yes for Logic search type. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity?`` 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:LOGIc:POLarity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity {POSitive|NEGative|EITher} + - SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity? + ``` + + Info: + - ``POSitive`` specifies using the positive clock edge. + - ``NEGative`` specifies using negative clock edge. + - ``EITher`` specifies using either the positive or negative clock edge. + """ + return self._polarity + + @property + def useclockedge(self) -> SearchSearchItemTriggerALogicUseclockedge: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge`` command. + + Description: + - This command specifies whether or not Logic search uses a clock source. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge?`` 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:LOGIc:USEClockedge value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge {OFF|ON|0|1} + - SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge? + ``` + + Info: + - ``OFF`` specifies not to use the clock source. + - ``ON`` specifies to use the clock source. + - ``0`` specifies not to use the clock source. + - ``1`` specifies to use the clock source. + """ + return self._useclockedge + + @property + def when(self) -> SearchSearchItemTriggerALogicWhen: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn`` command. + + Description: + - This command sets or queries the condition for generating an A or B logic search with + respect to the defined input pattern. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn?`` 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:LOGIc:WHEn value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn {TRUe|FALSe|MOREThan|LESSThan|EQual|UNEQual} + - SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn? + ``` + + Info: + - ``TRUe`` searches on an input value that is true. + - ``FALSe`` searches on an input value that is false. + - ``MOREthan`` searches on an input value that is greater than a set value. + - ``LESSthan`` searches on an input value that is less than a set value. + - ``EQual`` searches on an input value that is equal to a set value. + - ``UNEQual`` searches on an input value that is not equal to a set value. + """ + return self._when + + +class SearchSearchItemTriggerAEdgeThreshold(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:EDGE:THReshold`` command. + + Description: + - This command sets or queries the source threshold level for an edge trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:EDGE:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:EDGE:THReshold?`` 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:EDGE:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:EDGE:THReshold + - SEARCH:SEARCH:TRIGger:A:EDGE:THReshold? + ``` + + Info: + - ```` is the source threshold level for an edge trigger search. + """ + + +class SearchSearchItemTriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce`` command. + + Description: + - This command sets or queries the source waveform for an edge trigger search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:EDGE: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:EDGE:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies one input channel as the source, where the channel number is specified + by x. + - ``CH_D`` specifies a digital reference waveform as the source waveform for the + specified search. + - ``MATH`` specifies the math waveform as the search source, where the math number is + specified by x. + - ``REF`` specifies the reference waveform as the search source, where the reference + number is specified by x. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified search. + """ # noqa: E501 + + +class SearchSearchItemTriggerAEdgeSlope(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe`` command. + + Description: + - This command sets or queries the slope for an edge trigger search to determine where to + place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe?`` 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:EDGE:SLOpe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe {RISe|FALL|EITher} + - SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe? + ``` + + Info: + - ``RISe`` specifies a rising edge. + - ``FALL`` specifies a falling edge. + - ``EITher`` specifies either rising or falling edge. + """ + + +class SearchSearchItemTriggerAEdge(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:EDGE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:EDGE?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.slope``: The ``SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:EDGE:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._slope = SearchSearchItemTriggerAEdgeSlope(device, f"{self._cmd_syntax}:SLOpe") + self._source = SearchSearchItemTriggerAEdgeSource(device, f"{self._cmd_syntax}:SOUrce") + self._threshold = SearchSearchItemTriggerAEdgeThreshold( + device, f"{self._cmd_syntax}:THReshold" + ) + + @property + def slope(self) -> SearchSearchItemTriggerAEdgeSlope: + """Return the ``SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe`` command. + + Description: + - This command sets or queries the slope for an edge trigger search to determine where + to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe?`` 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:EDGE:SLOpe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe {RISe|FALL|EITher} + - SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe? + ``` + + Info: + - ``RISe`` specifies a rising edge. + - ``FALL`` specifies a falling edge. + - ``EITher`` specifies either rising or falling edge. + """ + return self._slope + + @property + def source(self) -> SearchSearchItemTriggerAEdgeSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce`` command. + + Description: + - This command sets or queries the source waveform for an edge trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:EDGE: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:EDGE:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce {S_Ch_D|CH|CH_D|MATH|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce? + ``` + + Info: + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies one input channel as the source, where the channel number is + specified by x. + - ``CH_D`` specifies a digital reference waveform as the source waveform for the + specified search. + - ``MATH`` specifies the math waveform as the search source, where the math number is + specified by x. + - ``REF`` specifies the reference waveform as the search source, where the reference + number is specified by x. + - ``REF_D`` specifies a digital reference waveform as the source waveform for the + specified search. + """ # noqa: E501 + return self._source + + @property + def threshold(self) -> SearchSearchItemTriggerAEdgeThreshold: + """Return the ``SEARCH:SEARCH:TRIGger:A:EDGE:THReshold`` command. + + Description: + - This command sets or queries the source threshold level for an edge trigger search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:EDGE:THReshold?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:EDGE:THReshold?`` 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:EDGE:THReshold value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:EDGE:THReshold + - SEARCH:SEARCH:TRIGger:A:EDGE:THReshold? + ``` + + Info: + - ```` is the source threshold level for an edge trigger search. + """ + return self._threshold + + +class SearchSearchItemTriggerADdrwriteTolerance(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance`` command. + + Description: + - This command sets or queries the DDR write logic state tolerance value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance?`` 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:DDRWRITE:TOLERance value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state tolerance value. + """ + + +class SearchSearchItemTriggerADdrwriteStrobesource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource`` command. + + Description: + - This command sets or queries the DDR write strobe source when the search type is DDR + Write. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource?`` 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:DDRWRITE:STROBESource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource? + ``` + + Info: + - ``CH`` specifies channel as the DDR write strobe source for the specified search + . + - ``CH_D`` specifies digital waveform of channel as the DDR write strobe + source for the specified search . + - ``Math`` specifies math waveform as the DDR write strobe source for the specified + search . + - ``REF`` specifies reference waveform as the DDR write strobe source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR write + strobe source for the specified search . + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrwriteStandard(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard`` command. + + Description: + - This command sets or queries the DDR write search standard as DDR3 or LPDDR3. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard?`` 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:DDRWRITE:STANdard value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard {DDR3|LPDDR3} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard? + ``` + + Info: + - ``DDR3`` sets the DDR write search standard as DDR3. + - ``LPDDR3`` sets the DDR write search standard as LPDDR3. + """ + + +class SearchSearchItemTriggerADdrwriteReflevelStrobeMid(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID`` command. + + Description: + - This command sets or queries the DDR write reference level strobe mid value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID?`` 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:DDRWRITE:REFLevel:STROBE:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe mid reference value. + """ + + +class SearchSearchItemTriggerADdrwriteReflevelStrobeLow(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW`` command. + + Description: + - This command sets or queries the DDR write reference level strobe low value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW?`` 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:DDRWRITE:REFLevel:STROBE:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe low reference value. + """ + + +class SearchSearchItemTriggerADdrwriteReflevelStrobeHigh(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH`` command. + + Description: + - This command sets or queries the DDR write reference level strobe high value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH?`` 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:DDRWRITE:REFLevel:STROBE:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR write search strobe high value. + """ + + +class SearchSearchItemTriggerADdrwriteReflevelStrobe(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._high = SearchSearchItemTriggerADdrwriteReflevelStrobeHigh( + device, f"{self._cmd_syntax}:HIGH" + ) + self._low = SearchSearchItemTriggerADdrwriteReflevelStrobeLow( + device, f"{self._cmd_syntax}:LOW" + ) + self._mid = SearchSearchItemTriggerADdrwriteReflevelStrobeMid( + device, f"{self._cmd_syntax}:MID" + ) + + @property + def high(self) -> SearchSearchItemTriggerADdrwriteReflevelStrobeHigh: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH`` command. + + Description: + - This command sets or queries the DDR write reference level strobe high value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH?`` 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:DDRWRITE:REFLevel:STROBE:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR write search strobe high value. + """ + return self._high + + @property + def low(self) -> SearchSearchItemTriggerADdrwriteReflevelStrobeLow: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW`` command. + + Description: + - This command sets or queries the DDR write reference level strobe low value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW?`` 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:DDRWRITE:REFLevel:STROBE:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe low reference value. + """ + return self._low + + @property + def mid(self) -> SearchSearchItemTriggerADdrwriteReflevelStrobeMid: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID`` command. + + Description: + - This command sets or queries the DDR write reference level strobe mid value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID?`` 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:DDRWRITE:REFLevel:STROBE:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe mid reference value. + """ + return self._mid + + +class SearchSearchItemTriggerADdrwriteReflevelDataMid(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID`` command. + + Description: + - This command sets or queries the DDR write data mid reference level value, when the search + type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID?`` 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:DDRWRITE:REFLevel:DATA:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID? + ``` + + Info: + - ``NR3`` sets the DDR read search data mid reference value. + """ + + +class SearchSearchItemTriggerADdrwriteReflevelDataLow(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW`` command. + + Description: + - This command sets or queries the DDR write data low reference level value, when the search + type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW?`` 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:DDRWRITE:REFLevel:DATA:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read search data low reference value. + """ + + +class SearchSearchItemTriggerADdrwriteReflevelDataHigh(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH`` command. + + Description: + - This command sets or queries the DDR write data high reference level value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH?`` 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:DDRWRITE:REFLevel:DATA:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read search data high reference value. + """ + + +class SearchSearchItemTriggerADdrwriteReflevelData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._high = SearchSearchItemTriggerADdrwriteReflevelDataHigh( + device, f"{self._cmd_syntax}:HIGH" + ) + self._low = SearchSearchItemTriggerADdrwriteReflevelDataLow( + device, f"{self._cmd_syntax}:LOW" + ) + self._mid = SearchSearchItemTriggerADdrwriteReflevelDataMid( + device, f"{self._cmd_syntax}:MID" + ) + + @property + def high(self) -> SearchSearchItemTriggerADdrwriteReflevelDataHigh: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH`` command. + + Description: + - This command sets or queries the DDR write data high reference level value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH?`` 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:DDRWRITE:REFLevel:DATA:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read search data high reference value. + """ + return self._high + + @property + def low(self) -> SearchSearchItemTriggerADdrwriteReflevelDataLow: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW`` command. + + Description: + - This command sets or queries the DDR write data low reference level value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW?`` 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:DDRWRITE:REFLevel:DATA:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read search data low reference value. + """ + return self._low + + @property + def mid(self) -> SearchSearchItemTriggerADdrwriteReflevelDataMid: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID`` command. + + Description: + - This command sets or queries the DDR write data mid reference level value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID?`` 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:DDRWRITE:REFLevel:DATA:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID? + ``` + + Info: + - ``NR3`` sets the DDR read search data mid reference value. + """ + return self._mid + + +class SearchSearchItemTriggerADdrwriteReflevel(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA`` command tree. + - ``.strobe``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = SearchSearchItemTriggerADdrwriteReflevelData( + device, f"{self._cmd_syntax}:DATA" + ) + self._strobe = SearchSearchItemTriggerADdrwriteReflevelStrobe( + device, f"{self._cmd_syntax}:STROBE" + ) + + @property + def data(self) -> SearchSearchItemTriggerADdrwriteReflevelData: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA:MID`` command. + """ + return self._data + + @property + def strobe(self) -> SearchSearchItemTriggerADdrwriteReflevelStrobe: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE:MID`` command. + """ + return self._strobe + + +class SearchSearchItemTriggerADdrwriteReflevelmode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode`` command. + + Description: + - This command sets or queries the DDR write reference level mode to auto or manual, when + the search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode?`` 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:DDRWRITE:REFLEVELMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode {AUTO|MANUAL} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode? + ``` + + Info: + - ``AUTO`` sets the DDR write reference level mode to auto. + - ``MANUAL`` sets the DDR write reference level mode to manual. Use the Related Commands to + set the Reference levels when in Manual mode. + """ + + +class SearchSearchItemTriggerADdrwritePreambleType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE`` command. + + Description: + - This command sets or queries the DDR write preamble type when the search type is DDR + WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE?`` 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:DDRWRITE:PREAMBLE:TYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE {STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE? + ``` + + Info: + - ``STATIC`` sets the DDR Write preamble type to Static. + - ``DYNAMIC`` sets the DDR Write preamble type to Dynamic. + """ + + +class SearchSearchItemTriggerADdrwritePreamble(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerADdrwritePreambleType( + device, f"{self._cmd_syntax}:TYPE" + ) + + @property + def type(self) -> SearchSearchItemTriggerADdrwritePreambleType: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE`` command. + + Description: + - This command sets or queries the DDR write preamble type when the search type is DDR + WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE?`` 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:DDRWRITE:PREAMBLE:TYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE {STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE? + ``` + + Info: + - ``STATIC`` sets the DDR Write preamble type to Static. + - ``DYNAMIC`` sets the DDR Write preamble type to Dynamic. + """ + return self._type + + +class SearchSearchItemTriggerADdrwritePostambleLength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth`` command. + + Description: + - This command sets or queries the DDR write postamble length when the search type is DDR + WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth?`` 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:DDRWRITE:POSTAMBLE:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth {500E-3|1.5|1} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth? + ``` + + Info: + - ``500E-1.5`` sets the postamble length to 1.5 tCK (number of clock cycles). + - ``500E-1`` sets the postamble length to 1 tCK (number of clock cycles). + - ``500E-3`` sets the postamble length to 0.5 tCK (number of clock cycles). + """ + + +class SearchSearchItemTriggerADdrwritePostamble(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._length = SearchSearchItemTriggerADdrwritePostambleLength( + device, f"{self._cmd_syntax}:LENGth" + ) + + @property + def length(self) -> SearchSearchItemTriggerADdrwritePostambleLength: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth`` command. + + Description: + - This command sets or queries the DDR write postamble length when the search type is + DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth?`` 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:DDRWRITE:POSTAMBLE:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth {500E-3|1.5|1} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth? + ``` + + Info: + - ``500E-1.5`` sets the postamble length to 1.5 tCK (number of clock cycles). + - ``500E-1`` sets the postamble length to 1 tCK (number of clock cycles). + - ``500E-3`` sets the postamble length to 0.5 tCK (number of clock cycles). + """ + return self._length + + +class SearchSearchItemTriggerADdrwriteMincas(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas`` command. + + Description: + - This command sets or queries the DDR write chip select minimum Column Access Strobe (CAS) + value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas?`` 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:DDRWRITE:MINCas value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR write chip select CAS minimum value. + """ + + +class SearchSearchItemTriggerADdrwriteMaxcas(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS`` command. + + Description: + - This command sets or queries the DDR write chip select maximum Column Access Strobe (CAS) + value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS?`` 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:DDRWRITE:MAXCAS value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR write chip select CAS maximum value. + """ + + +class SearchSearchItemTriggerADdrwriteMargin(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin`` command. + + Description: + - This command sets or queries the DDR write margin reference level value, when the search + type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin?`` 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:DDRWRITE:MARgin value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin? + ``` + + Info: + - ``NR3`` sets the DDR write search margin percent value in the range of 0% to 100%. + """ + + +class SearchSearchItemTriggerADdrwriteLogic4sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR write logic source 4 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol?`` 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:DDRWRITE:LOGIC4SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 4 symbol to H (High). + - ``L`` sets the logic source 4 symbol to L (Low). + - ``X`` sets the logic source 4 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrwriteLogic4source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrwriteLogic4sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrwriteLogic4sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR write logic source 4 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol?`` 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:DDRWRITE:LOGIC4SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 4 symbol to H (High). + - ``L`` sets the logic source 4 symbol to L (Low). + - ``X`` sets the logic source 4 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrwriteLogic3sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR write logic source 3 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol?`` 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:DDRWRITE:LOGIC3SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 3 symbol to H (High). + - ``L`` sets the logic source 3 symbol to L (Low). + - ``X`` sets the logic source 3 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrwriteLogic3source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrwriteLogic3sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrwriteLogic3sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR write logic source 3 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol?`` 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:DDRWRITE:LOGIC3SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 3 symbol to H (High). + - ``L`` sets the logic source 3 symbol to L (Low). + - ``X`` sets the logic source 3 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrwriteLogic2sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR write logic source 2 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol?`` 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:DDRWRITE:LOGIC2SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 2 symbol to H (High). + - ``L`` sets the logic source 2 symbol to L (Low). + - ``X`` sets the logic source 2 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrwriteLogic2source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrwriteLogic2sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrwriteLogic2sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR write logic source 2 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol?`` 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:DDRWRITE:LOGIC2SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 2 symbol to H (High). + - ``L`` sets the logic source 2 symbol to L (Low). + - ``X`` sets the logic source 2 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrwriteLogic1sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR write logic source 1 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol?`` 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:DDRWRITE:LOGIC1SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 1 symbol to H (High). + - ``L`` sets the logic source 1 symbol to L (Low). + - ``X`` sets the logic source 1 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrwriteLogic1source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrwriteLogic1sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrwriteLogic1sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR write logic source 1 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol?`` 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:DDRWRITE:LOGIC1SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 1 symbol to H (High). + - ``L`` sets the logic source 1 symbol to L (Low). + - ``X`` sets the logic source 1 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrwriteHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis`` command. + + Description: + - This command sets or queries the DDR write hysteresis reference level value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis?`` 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:DDRWRITE:HYSteresis value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis? + ``` + + Info: + - ``NR3`` sets the DDR write search hysteresis percent value in the range of 0% to 50%. + """ + + +class SearchSearchItemTriggerADdrwriteDatasource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource`` command. + + Description: + - This command sets or queries the DDR write data source when the search type is DDR Write. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource?`` 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:DDRWRITE:DATASource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource? + ``` + + Info: + - ``CH`` specifies channel as the DDR write data source for the specified search . + - ``CH_D`` specifies digital waveform of channel as the DDR write data source + for the specified search . + - ``Math`` specifies math waveform as the DDR write data source for the specified + search . + - ``REF`` specifies reference waveform as the DDR write data source for the specified + search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR write + data source for the specified search . + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrwriteDatarate(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate`` command. + + Description: + - This command sets or queries the DDR write search data rate for DDR3 and LPDRR3 standards + of the specified search. The DDR3 standard supports the following data rates: + 800|1066|1333|1600|1866|2133. The LPDDR3 standard supports the following data rates: + 333|800|1066|1200|1333|1466|1600|1866|2133. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate?`` 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:DDRWRITE:DATARate value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate {333|800|1066|1200|1333|1466|1600|1866|2133} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate? + ``` + + Info: + - ``333`` sets the data rate to 333. + - ``800`` sets the data rate to 800. + - ``1066`` sets the data rate to 1066. + - ``1200`` sets the data rate to 1200. + - ``1333`` sets the data rate to 1333. + - ``1466`` sets the data rate to 1466. + - ``1600`` sets the data rate to 1600. + - ``1866`` sets the data rate to 1866. + - ``2133`` sets the data rate to 2133. + """ + + +class SearchSearchItemTriggerADdrwriteCssource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource`` command. + + Description: + - This command sets or queries the DDR Write search chip select source. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource?`` 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:DDRWRITE:CSSource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies channel as the DDR write chip select source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR write strobe + source for the specified search . + - ``Math`` specifies math waveform as the DDR write chip select source for the + specified search . + - ``REF`` specifies reference waveform as the DDR write chip select source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR write + strobe source for the specified search . + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrwriteCsmode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode`` command. + + Description: + - This command sets or queries the DDR Write chip select mode. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode?`` 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:DDRWRITE:CSMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode {Auto|Manual} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``Auto`` sets the DDR write chip select mode to auto. + - ``Manual`` sets the DDR write chip select mode to manual. Use the Related Commands to set + the Reference levels when in Manual mode. + """ + + +class SearchSearchItemTriggerADdrwriteCslevel(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel`` command. + + Description: + - This command sets or queries the DDR Write chip select level value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel?`` 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:DDRWRITE:CSLevel value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR write chip select level value. + """ + + +class SearchSearchItemTriggerADdrwriteCsactive(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive`` command. + + Description: + - This command sets or queries the DDR write chip select active state. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive?`` 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:DDRWRITE:CSActive value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive {LOW|HIGH} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``LOW`` sets the DDR write chip select active state to low. + - ``HIGH`` sets the DDR write chip select active state to high. + """ + + +class SearchSearchItemTriggerADdrwriteBurstlatency(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency`` command. + + Description: + - This command sets or queries the DDR write logic state burst latency value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency?`` 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:DDRWRITE:BURSTLatency value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state burst latency value. + """ + + +class SearchSearchItemTriggerADdrwriteBurstlength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH`` command. + + Description: + - This command sets or queries the DDR write logic state burst length value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH?`` 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:DDRWRITE:BURSTLENGTH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR1`` sets the logic state burst length value. + """ + + +class SearchSearchItemTriggerADdrwriteBurstdetectmethod(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod`` command. + + Description: + - This command sets or queries the DDRWRITE search burst detection method. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod?`` 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:DDRWRITE:BURSTDETectmethod value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod {DQDQS|ChipSelect|LogicState} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod? + ``` + + Info: + - ``DQDQS`` sets the write burst detection method to DQDQS. + - ``ChipSelect`` sets the write burst detection method to ChipSelect. + - ``LogicState`` sets the write burst detection method to LogicState. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class SearchSearchItemTriggerADdrwrite(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.burstdetectmethod``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod`` + command. + - ``.burstlength``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH`` command. + - ``.burstlatency``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency`` command. + - ``.csactive``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive`` command. + - ``.cslevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel`` command. + - ``.csmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode`` command. + - ``.cssource``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource`` command. + - ``.datarate``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate`` command. + - ``.datasource``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource`` command. + - ``.hysteresis``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis`` command. + - ``.logic1source``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce`` command tree. + - ``.logic2source``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce`` command tree. + - ``.logic3source``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce`` command tree. + - ``.logic4source``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce`` command tree. + - ``.margin``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin`` command. + - ``.maxcas``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS`` command. + - ``.mincas``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas`` command. + - ``.postamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE`` command tree. + - ``.preamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE`` command tree. + - ``.reflevelmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode`` command. + - ``.reflevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel`` command tree. + - ``.standard``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard`` command. + - ``.strobesource``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource`` command. + - ``.tolerance``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._burstdetectmethod = SearchSearchItemTriggerADdrwriteBurstdetectmethod( + device, f"{self._cmd_syntax}:BURSTDETectmethod" + ) + self._burstlength = SearchSearchItemTriggerADdrwriteBurstlength( + device, f"{self._cmd_syntax}:BURSTLENGTH" + ) + self._burstlatency = SearchSearchItemTriggerADdrwriteBurstlatency( + device, f"{self._cmd_syntax}:BURSTLatency" + ) + self._csactive = SearchSearchItemTriggerADdrwriteCsactive( + device, f"{self._cmd_syntax}:CSActive" + ) + self._cslevel = SearchSearchItemTriggerADdrwriteCslevel( + device, f"{self._cmd_syntax}:CSLevel" + ) + self._csmode = SearchSearchItemTriggerADdrwriteCsmode(device, f"{self._cmd_syntax}:CSMode") + self._cssource = SearchSearchItemTriggerADdrwriteCssource( + device, f"{self._cmd_syntax}:CSSource" + ) + self._datarate = SearchSearchItemTriggerADdrwriteDatarate( + device, f"{self._cmd_syntax}:DATARate" + ) + self._datasource = SearchSearchItemTriggerADdrwriteDatasource( + device, f"{self._cmd_syntax}:DATASource" + ) + self._hysteresis = SearchSearchItemTriggerADdrwriteHysteresis( + device, f"{self._cmd_syntax}:HYSteresis" + ) + self._logic1source = SearchSearchItemTriggerADdrwriteLogic1source( + device, f"{self._cmd_syntax}:LOGIC1SOUrce" + ) + self._logic2source = SearchSearchItemTriggerADdrwriteLogic2source( + device, f"{self._cmd_syntax}:LOGIC2SOUrce" + ) + self._logic3source = SearchSearchItemTriggerADdrwriteLogic3source( + device, f"{self._cmd_syntax}:LOGIC3SOUrce" + ) + self._logic4source = SearchSearchItemTriggerADdrwriteLogic4source( + device, f"{self._cmd_syntax}:LOGIC4SOUrce" + ) + self._margin = SearchSearchItemTriggerADdrwriteMargin(device, f"{self._cmd_syntax}:MARgin") + self._maxcas = SearchSearchItemTriggerADdrwriteMaxcas(device, f"{self._cmd_syntax}:MAXCAS") + self._mincas = SearchSearchItemTriggerADdrwriteMincas(device, f"{self._cmd_syntax}:MINCas") + self._postamble = SearchSearchItemTriggerADdrwritePostamble( + device, f"{self._cmd_syntax}:POSTAMBLE" + ) + self._preamble = SearchSearchItemTriggerADdrwritePreamble( + device, f"{self._cmd_syntax}:PREAMBLE" + ) + self._reflevelmode = SearchSearchItemTriggerADdrwriteReflevelmode( + device, f"{self._cmd_syntax}:REFLEVELMode" + ) + self._reflevel = SearchSearchItemTriggerADdrwriteReflevel( + device, f"{self._cmd_syntax}:REFLevel" + ) + self._standard = SearchSearchItemTriggerADdrwriteStandard( + device, f"{self._cmd_syntax}:STANdard" + ) + self._strobesource = SearchSearchItemTriggerADdrwriteStrobesource( + device, f"{self._cmd_syntax}:STROBESource" + ) + self._tolerance = SearchSearchItemTriggerADdrwriteTolerance( + device, f"{self._cmd_syntax}:TOLERance" + ) + + @property + def burstdetectmethod(self) -> SearchSearchItemTriggerADdrwriteBurstdetectmethod: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod`` command. + + Description: + - This command sets or queries the DDRWRITE search burst detection method. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod?`` 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:DDRWRITE:BURSTDETectmethod value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod {DQDQS|ChipSelect|LogicState} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod? + ``` + + Info: + - ``DQDQS`` sets the write burst detection method to DQDQS. + - ``ChipSelect`` sets the write burst detection method to ChipSelect. + - ``LogicState`` sets the write burst detection method to LogicState. + """ + return self._burstdetectmethod + + @property + def burstlength(self) -> SearchSearchItemTriggerADdrwriteBurstlength: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH`` command. + + Description: + - This command sets or queries the DDR write logic state burst length value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH?`` 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:DDRWRITE:BURSTLENGTH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR1`` sets the logic state burst length value. + """ + return self._burstlength + + @property + def burstlatency(self) -> SearchSearchItemTriggerADdrwriteBurstlatency: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency`` command. + + Description: + - This command sets or queries the DDR write logic state burst latency value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency?`` 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:DDRWRITE:BURSTLatency value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state burst latency value. + """ + return self._burstlatency + + @property + def csactive(self) -> SearchSearchItemTriggerADdrwriteCsactive: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive`` command. + + Description: + - This command sets or queries the DDR write chip select active state. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive?`` 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:DDRWRITE:CSActive value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive {LOW|HIGH} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``LOW`` sets the DDR write chip select active state to low. + - ``HIGH`` sets the DDR write chip select active state to high. + """ + return self._csactive + + @property + def cslevel(self) -> SearchSearchItemTriggerADdrwriteCslevel: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel`` command. + + Description: + - This command sets or queries the DDR Write chip select level value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel?`` 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:DDRWRITE:CSLevel value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR write chip select level value. + """ + return self._cslevel + + @property + def csmode(self) -> SearchSearchItemTriggerADdrwriteCsmode: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode`` command. + + Description: + - This command sets or queries the DDR Write chip select mode. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode?`` 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:DDRWRITE:CSMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode {Auto|Manual} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``Auto`` sets the DDR write chip select mode to auto. + - ``Manual`` sets the DDR write chip select mode to manual. Use the Related Commands to + set the Reference levels when in Manual mode. + """ + return self._csmode + + @property + def cssource(self) -> SearchSearchItemTriggerADdrwriteCssource: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource`` command. + + Description: + - This command sets or queries the DDR Write search chip select source. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource?`` 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:DDRWRITE:CSSource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies channel as the DDR write chip select source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR write strobe + source for the specified search . + - ``Math`` specifies math waveform as the DDR write chip select source for the + specified search . + - ``REF`` specifies reference waveform as the DDR write chip select source for + the specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + write strobe source for the specified search . + """ # noqa: E501 + return self._cssource + + @property + def datarate(self) -> SearchSearchItemTriggerADdrwriteDatarate: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate`` command. + + Description: + - This command sets or queries the DDR write search data rate for DDR3 and LPDRR3 + standards of the specified search. The DDR3 standard supports the following data + rates: 800|1066|1333|1600|1866|2133. The LPDDR3 standard supports the following data + rates: 333|800|1066|1200|1333|1466|1600|1866|2133. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate?`` 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:DDRWRITE:DATARate value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate {333|800|1066|1200|1333|1466|1600|1866|2133} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate? + ``` + + Info: + - ``333`` sets the data rate to 333. + - ``800`` sets the data rate to 800. + - ``1066`` sets the data rate to 1066. + - ``1200`` sets the data rate to 1200. + - ``1333`` sets the data rate to 1333. + - ``1466`` sets the data rate to 1466. + - ``1600`` sets the data rate to 1600. + - ``1866`` sets the data rate to 1866. + - ``2133`` sets the data rate to 2133. + """ # noqa: E501 + return self._datarate + + @property + def datasource(self) -> SearchSearchItemTriggerADdrwriteDatasource: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource`` command. + + Description: + - This command sets or queries the DDR write data source when the search type is DDR + Write. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource?`` 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:DDRWRITE:DATASource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource? + ``` + + Info: + - ``CH`` specifies channel as the DDR write data source for the specified search + . + - ``CH_D`` specifies digital waveform of channel as the DDR write data + source for the specified search . + - ``Math`` specifies math waveform as the DDR write data source for the specified + search . + - ``REF`` specifies reference waveform as the DDR write data source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + write data source for the specified search . + """ # noqa: E501 + return self._datasource + + @property + def hysteresis(self) -> SearchSearchItemTriggerADdrwriteHysteresis: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis`` command. + + Description: + - This command sets or queries the DDR write hysteresis reference level value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis?`` 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:DDRWRITE:HYSteresis value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis? + ``` + + Info: + - ``NR3`` sets the DDR write search hysteresis percent value in the range of 0% to 50%. + """ + return self._hysteresis + + @property + def logic1source(self) -> SearchSearchItemTriggerADdrwriteLogic1source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce:SYMBol`` command. + """ + return self._logic1source + + @property + def logic2source(self) -> SearchSearchItemTriggerADdrwriteLogic2source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce:SYMBol`` command. + """ + return self._logic2source + + @property + def logic3source(self) -> SearchSearchItemTriggerADdrwriteLogic3source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce:SYMBol`` command. + """ + return self._logic3source + + @property + def logic4source(self) -> SearchSearchItemTriggerADdrwriteLogic4source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce:SYMBol`` command. + """ + return self._logic4source + + @property + def margin(self) -> SearchSearchItemTriggerADdrwriteMargin: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin`` command. + + Description: + - This command sets or queries the DDR write margin reference level value, when the + search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin?`` 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:DDRWRITE:MARgin value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin? + ``` + + Info: + - ``NR3`` sets the DDR write search margin percent value in the range of 0% to 100%. + """ + return self._margin + + @property + def maxcas(self) -> SearchSearchItemTriggerADdrwriteMaxcas: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS`` command. + + Description: + - This command sets or queries the DDR write chip select maximum Column Access Strobe + (CAS) value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS?`` 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:DDRWRITE:MAXCAS value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR write chip select CAS maximum value. + """ + return self._maxcas + + @property + def mincas(self) -> SearchSearchItemTriggerADdrwriteMincas: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas`` command. + + Description: + - This command sets or queries the DDR write chip select minimum Column Access Strobe + (CAS) value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas?`` 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:DDRWRITE:MINCas value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR write chip select CAS minimum value. + """ + return self._mincas + + @property + def postamble(self) -> SearchSearchItemTriggerADdrwritePostamble: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE:LENGth`` command. + """ + return self._postamble + + @property + def preamble(self) -> SearchSearchItemTriggerADdrwritePreamble: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE:TYPE`` command. + """ + return self._preamble + + @property + def reflevelmode(self) -> SearchSearchItemTriggerADdrwriteReflevelmode: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode`` command. + + Description: + - This command sets or queries the DDR write reference level mode to auto or manual, + when the search type is DDR WRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode?`` 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:DDRWRITE:REFLEVELMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode {AUTO|MANUAL} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode? + ``` + + Info: + - ``AUTO`` sets the DDR write reference level mode to auto. + - ``MANUAL`` sets the DDR write reference level mode to manual. Use the Related Commands + to set the Reference levels when in Manual mode. + """ + return self._reflevelmode + + @property + def reflevel(self) -> SearchSearchItemTriggerADdrwriteReflevel: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:DATA`` command tree. + - ``.strobe``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel:STROBE`` command tree. + """ + return self._reflevel + + @property + def standard(self) -> SearchSearchItemTriggerADdrwriteStandard: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard`` command. + + Description: + - This command sets or queries the DDR write search standard as DDR3 or LPDDR3. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard?`` 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:DDRWRITE:STANdard value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard {DDR3|LPDDR3} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard? + ``` + + Info: + - ``DDR3`` sets the DDR write search standard as DDR3. + - ``LPDDR3`` sets the DDR write search standard as LPDDR3. + """ + return self._standard + + @property + def strobesource(self) -> SearchSearchItemTriggerADdrwriteStrobesource: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource`` command. + + Description: + - This command sets or queries the DDR write strobe source when the search type is DDR + Write. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource?`` 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:DDRWRITE:STROBESource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource? + ``` + + Info: + - ``CH`` specifies channel as the DDR write strobe source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR write strobe + source for the specified search . + - ``Math`` specifies math waveform as the DDR write strobe source for the + specified search . + - ``REF`` specifies reference waveform as the DDR write strobe source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + write strobe source for the specified search . + """ # noqa: E501 + return self._strobesource + + @property + def tolerance(self) -> SearchSearchItemTriggerADdrwriteTolerance: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance`` command. + + Description: + - This command sets or queries the DDR write logic state tolerance value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance?`` 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:DDRWRITE:TOLERance value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance + - SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state tolerance value. + """ + return self._tolerance + + +class SearchSearchItemTriggerADdrreadwriteTolerance(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance`` command. + + Description: + - This command sets or queries the DDR read/write logic state tolerance value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance?`` 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:DDRREADWRITE:TOLERance value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state tolerance value. + """ + + +class SearchSearchItemTriggerADdrreadwriteStrobesource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource`` command. + + Description: + - This command sets or queries the DDR readwrite strobe source when the search type is DDR + READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource?`` 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:DDRREADWRITE:STROBESource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource? + ``` + + Info: + - ``CH`` specifies channel as the DDR read/write strobe source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR read/write strobe + source for the specified search . + - ``Math`` specifies math waveform as the DDR read/write strobe source for the + specified search . + - ``REF`` specifies reference waveform as the DDR read/write strobe source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + read/write strobe source for the specified search . + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrreadwriteStandard(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard`` command. + + Description: + - This command sets or queries the DDR read/write search standard as DDR3 or LPDDR3. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard?`` 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:DDRREADWRITE:STANdard value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard {DDR3|LPDDR3} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard? + ``` + + Info: + - ``DDR3`` sets the DDR read/write search standard as DDR3. + - ``LPDDR3`` sets the DDR read/write search standard as LPDDR3. + """ + + +class SearchSearchItemTriggerADdrreadwriteReflevelStrobeMid(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID`` command. + + Description: + - This command sets or queries the DDR read/write reference level strobe mid value, when the + search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID?`` 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:DDRREADWRITE:REFLevel:STROBE:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID? + ``` + + Info: + - ``NR3`` sets the DDR read/write search strobe mid reference value. + """ + + +class SearchSearchItemTriggerADdrreadwriteReflevelStrobeLow(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW`` command. + + Description: + - This command sets or queries the DDR read/write reference level strobe low value, when the + search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW?`` 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:DDRREADWRITE:REFLevel:STROBE:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read/write search strobe low reference value. + """ + + +class SearchSearchItemTriggerADdrreadwriteReflevelStrobeHigh(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH`` command. + + Description: + - This command sets or queries the DDR read/write reference level strobe high value, when + the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH?`` 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:DDRREADWRITE:REFLevel:STROBE:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe high value. + """ + + +class SearchSearchItemTriggerADdrreadwriteReflevelStrobe(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._high = SearchSearchItemTriggerADdrreadwriteReflevelStrobeHigh( + device, f"{self._cmd_syntax}:HIGH" + ) + self._low = SearchSearchItemTriggerADdrreadwriteReflevelStrobeLow( + device, f"{self._cmd_syntax}:LOW" + ) + self._mid = SearchSearchItemTriggerADdrreadwriteReflevelStrobeMid( + device, f"{self._cmd_syntax}:MID" + ) + + @property + def high(self) -> SearchSearchItemTriggerADdrreadwriteReflevelStrobeHigh: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH`` command. + + Description: + - This command sets or queries the DDR read/write reference level strobe high value, + when the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH?`` 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:DDRREADWRITE:REFLevel:STROBE:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe high value. + """ + return self._high + + @property + def low(self) -> SearchSearchItemTriggerADdrreadwriteReflevelStrobeLow: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW`` command. + + Description: + - This command sets or queries the DDR read/write reference level strobe low value, when + the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW?`` 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:DDRREADWRITE:REFLevel:STROBE:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read/write search strobe low reference value. + """ + return self._low + + @property + def mid(self) -> SearchSearchItemTriggerADdrreadwriteReflevelStrobeMid: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID`` command. + + Description: + - This command sets or queries the DDR read/write reference level strobe mid value, when + the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID?`` 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:DDRREADWRITE:REFLevel:STROBE:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID? + ``` + + Info: + - ``NR3`` sets the DDR read/write search strobe mid reference value. + """ + return self._mid + + +class SearchSearchItemTriggerADdrreadwriteReflevelDataMid(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID`` command. + + Description: + - This command sets or queries the DDR read/write data mid reference level value, when the + search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID?`` 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:DDRREADWRITE:REFLevel:DATA:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID? + ``` + + Info: + - ``NR3`` sets the DDR read/write search data mid reference value. + """ + + +class SearchSearchItemTriggerADdrreadwriteReflevelDataLow(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW`` command. + + Description: + - This command sets or queries the DDR read/write data low reference level value, when the + search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW?`` 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:DDRREADWRITE:REFLevel:DATA:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read/write search data low reference value. + """ + + +class SearchSearchItemTriggerADdrreadwriteReflevelDataHigh(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH`` command. + + Description: + - This command sets or queries the DDR read/write data high reference level value, when the + search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH?`` 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:DDRREADWRITE:REFLevel:DATA:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read/write search data high reference value. + """ + + +class SearchSearchItemTriggerADdrreadwriteReflevelData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._high = SearchSearchItemTriggerADdrreadwriteReflevelDataHigh( + device, f"{self._cmd_syntax}:HIGH" + ) + self._low = SearchSearchItemTriggerADdrreadwriteReflevelDataLow( + device, f"{self._cmd_syntax}:LOW" + ) + self._mid = SearchSearchItemTriggerADdrreadwriteReflevelDataMid( + device, f"{self._cmd_syntax}:MID" + ) + + @property + def high(self) -> SearchSearchItemTriggerADdrreadwriteReflevelDataHigh: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH`` command. + + Description: + - This command sets or queries the DDR read/write data high reference level value, when + the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH?`` 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:DDRREADWRITE:REFLevel:DATA:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read/write search data high reference value. + """ + return self._high + + @property + def low(self) -> SearchSearchItemTriggerADdrreadwriteReflevelDataLow: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW`` command. + + Description: + - This command sets or queries the DDR read/write data low reference level value, when + the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW?`` 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:DDRREADWRITE:REFLevel:DATA:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read/write search data low reference value. + """ + return self._low + + @property + def mid(self) -> SearchSearchItemTriggerADdrreadwriteReflevelDataMid: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID`` command. + + Description: + - This command sets or queries the DDR read/write data mid reference level value, when + the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID?`` 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:DDRREADWRITE:REFLevel:DATA:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID? + ``` + + Info: + - ``NR3`` sets the DDR read/write search data mid reference value. + """ + return self._mid + + +class SearchSearchItemTriggerADdrreadwriteReflevel(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA`` command tree. + - ``.strobe``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = SearchSearchItemTriggerADdrreadwriteReflevelData( + device, f"{self._cmd_syntax}:DATA" + ) + self._strobe = SearchSearchItemTriggerADdrreadwriteReflevelStrobe( + device, f"{self._cmd_syntax}:STROBE" + ) + + @property + def data(self) -> SearchSearchItemTriggerADdrreadwriteReflevelData: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA:MID`` command. + """ + return self._data + + @property + def strobe(self) -> SearchSearchItemTriggerADdrreadwriteReflevelStrobe: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:HIGH`` + command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE:MID`` command. + """ + return self._strobe + + +class SearchSearchItemTriggerADdrreadwriteReflevelmode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode`` command. + + Description: + - This command sets or queries the DDR read/write reference level mode to auto or manual, + when the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode?`` 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:DDRREADWRITE:REFLEVELMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode {AUTO|MANUAL} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode? + ``` + + Info: + - ``AUTO`` sets the DDR read/write reference level mode to auto. + - ``MANUAL`` sets the DDR read/write reference level mode to manual. Use the Related + Commands to set the Reference levels when in Manual mode. + """ + + +class SearchSearchItemTriggerADdrreadwritePreambleType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE`` command. + + Description: + - This command sets or queries the DDR read/write preamble type when the search type is DDR + READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE?`` 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:DDRREADWRITE:PREAMBLE:TYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE {STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE? + ``` + + Info: + - ``STATIC`` sets the DDR Read/Write preamble type to Static. + - ``DYNAMIC`` sets the DDR Read/Write preamble type to Dynamic. + """ + + +class SearchSearchItemTriggerADdrreadwritePreamble(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerADdrreadwritePreambleType( + device, f"{self._cmd_syntax}:TYPE" + ) + + @property + def type(self) -> SearchSearchItemTriggerADdrreadwritePreambleType: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE`` command. + + Description: + - This command sets or queries the DDR read/write preamble type when the search type is + DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE?`` 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:DDRREADWRITE:PREAMBLE:TYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE {STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE? + ``` + + Info: + - ``STATIC`` sets the DDR Read/Write preamble type to Static. + - ``DYNAMIC`` sets the DDR Read/Write preamble type to Dynamic. + """ + return self._type + + +class SearchSearchItemTriggerADdrreadwritePostambleLength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth`` command. + + Description: + - This command sets or queries the DDR read/write postamble length when the search type is + DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth?`` 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:DDRREADWRITE:POSTAMBLE:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth {500E-3|1.5|1} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth? + ``` + + Info: + - ``500E-1.5`` sets the postamble length to 1.5 tCK (number of clock cycles). + - ``500E-1`` sets the postamble length to 1 tCK (number of clock cycles). + - ``500E-3`` sets the postamble length to 0.5 tCK (number of clock cycles). + """ + + +class SearchSearchItemTriggerADdrreadwritePostamble(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._length = SearchSearchItemTriggerADdrreadwritePostambleLength( + device, f"{self._cmd_syntax}:LENGth" + ) + + @property + def length(self) -> SearchSearchItemTriggerADdrreadwritePostambleLength: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth`` command. + + Description: + - This command sets or queries the DDR read/write postamble length when the search type + is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth?`` 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:DDRREADWRITE:POSTAMBLE:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth {500E-3|1.5|1} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth? + ``` + + Info: + - ``500E-1.5`` sets the postamble length to 1.5 tCK (number of clock cycles). + - ``500E-1`` sets the postamble length to 1 tCK (number of clock cycles). + - ``500E-3`` sets the postamble length to 0.5 tCK (number of clock cycles). + """ + return self._length + + +class SearchSearchItemTriggerADdrreadwriteMincas(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas`` command. + + Description: + - This command sets or queries the DDR read/write chip minimum Column Access Strobe (CAS) + value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas?`` 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:DDRREADWRITE:MINCas value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select CAS minimum value. + """ + + +class SearchSearchItemTriggerADdrreadwriteMaxcas(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS`` command. + + Description: + - This command sets or queries the DDR read/write chip maximum Column Access Strobe (CAS) + value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS?`` 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:DDRREADWRITE:MAXCAS value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select CAS maximum value. + """ + + +class SearchSearchItemTriggerADdrreadwriteMargin(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin`` command. + + Description: + - This command sets or queries the DDR read/write margin reference level value, when the + search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin?`` 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:DDRREADWRITE:MARgin value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin? + ``` + + Info: + - ``NR3`` sets the DDR read/write search margin percent value in the range of 0% to 100%. + """ + + +class SearchSearchItemTriggerADdrreadwriteLogic4sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read/write logic source 4 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol?`` 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:DDRREADWRITE:LOGIC4SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 4 symbol to H (High). + - ``L`` sets the logic source 4 symbol to L (Low). + - ``X`` sets the logic source 4 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrreadwriteLogic4source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrreadwriteLogic4sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrreadwriteLogic4sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read/write logic source 4 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol?`` 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:DDRREADWRITE:LOGIC4SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 4 symbol to H (High). + - ``L`` sets the logic source 4 symbol to L (Low). + - ``X`` sets the logic source 4 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrreadwriteLogic3sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read/write logic source 3 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol?`` 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:DDRREADWRITE:LOGIC3SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 3 symbol to H (High). + - ``L`` sets the logic source 3 symbol to L (Low). + - ``X`` sets the logic source 3 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrreadwriteLogic3source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrreadwriteLogic3sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrreadwriteLogic3sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read/write logic source 3 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol?`` 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:DDRREADWRITE:LOGIC3SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 3 symbol to H (High). + - ``L`` sets the logic source 3 symbol to L (Low). + - ``X`` sets the logic source 3 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrreadwriteLogic2sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read/write logic source 2 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol?`` 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:DDRREADWRITE:LOGIC2SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 2 symbol to H (High). + - ``L`` sets the logic source 2 symbol to L (Low). + - ``X`` sets the logic source 2 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrreadwriteLogic2source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrreadwriteLogic2sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrreadwriteLogic2sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read/write logic source 2 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol?`` 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:DDRREADWRITE:LOGIC2SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 2 symbol to H (High). + - ``L`` sets the logic source 2 symbol to L (Low). + - ``X`` sets the logic source 2 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrreadwriteLogic1sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read/write logic source 1 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol?`` 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:DDRREADWRITE:LOGIC1SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 1 symbol to H (High). + - ``L`` sets the logic source 1 symbol to L (Low). + - ``X`` sets the logic source 1 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrreadwriteLogic1source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrreadwriteLogic1sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrreadwriteLogic1sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read/write logic source 1 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol?`` 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:DDRREADWRITE:LOGIC1SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 1 symbol to H (High). + - ``L`` sets the logic source 1 symbol to L (Low). + - ``X`` sets the logic source 1 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrreadwriteHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis`` command. + + Description: + - This command sets or queries the DDR read/write hysteresis reference level value, when the + search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis?`` 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:DDRREADWRITE:HYSteresis value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis? + ``` + + Info: + - ``NR3`` sets the DDR read/write search hysteresis percent value in the range of 0% to 50%. + """ + + +class SearchSearchItemTriggerADdrreadwriteDatasource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource`` command. + + Description: + - This command sets or queries the DDR read/write data source when the search type is DDR + READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource?`` 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:DDRREADWRITE:DATASource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource? + ``` + + Info: + - ``CH`` specifies channel as the DDR read/write data source for the specified search + . + - ``CH_D`` specifies digital waveform of channel as the DDR read/write data + source for the specified search . + - ``Math`` specifies math waveform as the DDR read/write data source for the + specified search . + - ``REF`` specifies reference waveform as the DDR read/write data source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + read/write data source for the specified search . + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrreadwriteDatarate(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate`` command. + + Description: + - This command sets or queries the DDR read/write data rate for DDR3 and LPDRR3 standards of + the specified search. The DDR3 standard supports the following data rates: + 800|1066|1333|1600|1866|2133. The LPDDR3 standard supports the following data rates: + 333|800|1066|1200|1333|1466|1600|1866|2133. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate?`` 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:DDRREADWRITE:DATARate value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate {333|800|1066|1200|1333|1466|1600|1866|2133} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate? + ``` + + Info: + - ``333`` sets the data rate to 333. + - ``800`` sets the data rate to 800. + - ``1066`` sets the data rate to 1066. + - ``1200`` sets the data rate to 1200. + - ``1333`` sets the data rate to 1333. + - ``1466`` sets the data rate to 1466. + - ``1600`` sets the data rate to 1600. + - ``1866`` sets the data rate to 1866. + - ``2133`` sets the data rate to 2133. + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrreadwriteCssource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource`` command. + + Description: + - This command sets or queries the DDR Read/Write search chip select source. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource?`` 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:DDRREADWRITE:CSSource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies channel as the DDR read/write chip select source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR read/write strobe + source for the specified search . + - ``Math`` specifies math waveform as the DDR read/write chip select source for the + specified search . + - ``REF`` specifies reference waveform as the DDR read/write chip select source for + the specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + read/write strobe source for the specified search . + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrreadwriteCsmode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode`` command. + + Description: + - This command sets or queries the DDR read/write chip select mode. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode?`` 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:DDRREADWRITE:CSMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode {Auto|Manual} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``Auto`` sets the DDR read/write chip select mode to auto. + - ``Manual`` sets the DDR read/write chip select mode to manual. Use the Related Commands to + set the Reference levels when in Manual mode. + """ + + +class SearchSearchItemTriggerADdrreadwriteCslevel(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel`` command. + + Description: + - This command sets or queries the DDR Read/Write chip select level value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel?`` 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:DDRREADWRITE:CSLevel value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read/write chip select level value. + """ + + +class SearchSearchItemTriggerADdrreadwriteCsactive(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive`` command. + + Description: + - This command sets or queries the DDR Read/Write chip select active state. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive?`` 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:DDRREADWRITE:CSActive value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive {LOW|HIGH} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``LOW`` sets the DDR read/write chip select active state to low. + - ``HIGH`` sets the DDR read/write chip select active state to high. + """ + + +class SearchSearchItemTriggerADdrreadwriteBurstlatency(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency`` command. + + Description: + - This command sets or queries the DDR read/write logic state burst latency value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency?`` 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:DDRREADWRITE:BURSTLatency value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state burst latency value. + """ + + +class SearchSearchItemTriggerADdrreadwriteBurstlength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH`` command. + + Description: + - This command sets or queries the DDR read/write logic state burst length value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH?`` 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:DDRREADWRITE:BURSTLENGTH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR1`` sets the logic state burst length value. + """ + + +class SearchSearchItemTriggerADdrreadwriteBurstdetectmethod(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod`` command. + + Description: + - This command sets or queries the DDR Read/Write search burst detection method. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod?`` 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:DDRREADWRITE:BURSTDETectmethod value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod {DQDQS|ChipSelect|LogicState} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod? + ``` + + Info: + - ``DQDQS`` sets the read/write burst detection method to DQDQS. + - ``ChipSelect`` sets the read/write burst detection method to ChipSelect. + - ``LogicState`` sets the read/write burst detection method to LogicState. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class SearchSearchItemTriggerADdrreadwrite(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.burstdetectmethod``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod`` + command. + - ``.burstlength``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH`` command. + - ``.burstlatency``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency`` command. + - ``.csactive``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive`` command. + - ``.cslevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel`` command. + - ``.csmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode`` command. + - ``.cssource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource`` command. + - ``.datarate``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate`` command. + - ``.datasource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource`` command. + - ``.hysteresis``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis`` command. + - ``.logic1source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce`` command + tree. + - ``.logic2source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce`` command + tree. + - ``.logic3source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce`` command + tree. + - ``.logic4source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce`` command + tree. + - ``.margin``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin`` command. + - ``.maxcas``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS`` command. + - ``.mincas``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas`` command. + - ``.postamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE`` command tree. + - ``.preamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE`` command tree. + - ``.reflevelmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode`` command. + - ``.reflevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel`` command tree. + - ``.standard``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard`` command. + - ``.strobesource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource`` command. + - ``.tolerance``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._burstdetectmethod = SearchSearchItemTriggerADdrreadwriteBurstdetectmethod( + device, f"{self._cmd_syntax}:BURSTDETectmethod" + ) + self._burstlength = SearchSearchItemTriggerADdrreadwriteBurstlength( + device, f"{self._cmd_syntax}:BURSTLENGTH" + ) + self._burstlatency = SearchSearchItemTriggerADdrreadwriteBurstlatency( + device, f"{self._cmd_syntax}:BURSTLatency" + ) + self._csactive = SearchSearchItemTriggerADdrreadwriteCsactive( + device, f"{self._cmd_syntax}:CSActive" + ) + self._cslevel = SearchSearchItemTriggerADdrreadwriteCslevel( + device, f"{self._cmd_syntax}:CSLevel" + ) + self._csmode = SearchSearchItemTriggerADdrreadwriteCsmode( + device, f"{self._cmd_syntax}:CSMode" + ) + self._cssource = SearchSearchItemTriggerADdrreadwriteCssource( + device, f"{self._cmd_syntax}:CSSource" + ) + self._datarate = SearchSearchItemTriggerADdrreadwriteDatarate( + device, f"{self._cmd_syntax}:DATARate" + ) + self._datasource = SearchSearchItemTriggerADdrreadwriteDatasource( + device, f"{self._cmd_syntax}:DATASource" + ) + self._hysteresis = SearchSearchItemTriggerADdrreadwriteHysteresis( + device, f"{self._cmd_syntax}:HYSteresis" + ) + self._logic1source = SearchSearchItemTriggerADdrreadwriteLogic1source( + device, f"{self._cmd_syntax}:LOGIC1SOUrce" + ) + self._logic2source = SearchSearchItemTriggerADdrreadwriteLogic2source( + device, f"{self._cmd_syntax}:LOGIC2SOUrce" + ) + self._logic3source = SearchSearchItemTriggerADdrreadwriteLogic3source( + device, f"{self._cmd_syntax}:LOGIC3SOUrce" + ) + self._logic4source = SearchSearchItemTriggerADdrreadwriteLogic4source( + device, f"{self._cmd_syntax}:LOGIC4SOUrce" + ) + self._margin = SearchSearchItemTriggerADdrreadwriteMargin( + device, f"{self._cmd_syntax}:MARgin" + ) + self._maxcas = SearchSearchItemTriggerADdrreadwriteMaxcas( + device, f"{self._cmd_syntax}:MAXCAS" + ) + self._mincas = SearchSearchItemTriggerADdrreadwriteMincas( + device, f"{self._cmd_syntax}:MINCas" + ) + self._postamble = SearchSearchItemTriggerADdrreadwritePostamble( + device, f"{self._cmd_syntax}:POSTAMBLE" + ) + self._preamble = SearchSearchItemTriggerADdrreadwritePreamble( + device, f"{self._cmd_syntax}:PREAMBLE" + ) + self._reflevelmode = SearchSearchItemTriggerADdrreadwriteReflevelmode( + device, f"{self._cmd_syntax}:REFLEVELMode" + ) + self._reflevel = SearchSearchItemTriggerADdrreadwriteReflevel( + device, f"{self._cmd_syntax}:REFLevel" + ) + self._standard = SearchSearchItemTriggerADdrreadwriteStandard( + device, f"{self._cmd_syntax}:STANdard" + ) + self._strobesource = SearchSearchItemTriggerADdrreadwriteStrobesource( + device, f"{self._cmd_syntax}:STROBESource" + ) + self._tolerance = SearchSearchItemTriggerADdrreadwriteTolerance( + device, f"{self._cmd_syntax}:TOLERance" + ) + + @property + def burstdetectmethod(self) -> SearchSearchItemTriggerADdrreadwriteBurstdetectmethod: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod`` command. + + Description: + - This command sets or queries the DDR Read/Write search burst detection method. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod?`` 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:DDRREADWRITE:BURSTDETectmethod value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod {DQDQS|ChipSelect|LogicState} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod? + ``` + + Info: + - ``DQDQS`` sets the read/write burst detection method to DQDQS. + - ``ChipSelect`` sets the read/write burst detection method to ChipSelect. + - ``LogicState`` sets the read/write burst detection method to LogicState. + """ # noqa: E501 + return self._burstdetectmethod + + @property + def burstlength(self) -> SearchSearchItemTriggerADdrreadwriteBurstlength: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH`` command. + + Description: + - This command sets or queries the DDR read/write logic state burst length value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH?`` 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:DDRREADWRITE:BURSTLENGTH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR1`` sets the logic state burst length value. + """ + return self._burstlength + + @property + def burstlatency(self) -> SearchSearchItemTriggerADdrreadwriteBurstlatency: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency`` command. + + Description: + - This command sets or queries the DDR read/write logic state burst latency value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency?`` 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:DDRREADWRITE:BURSTLatency value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state burst latency value. + """ + return self._burstlatency + + @property + def csactive(self) -> SearchSearchItemTriggerADdrreadwriteCsactive: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive`` command. + + Description: + - This command sets or queries the DDR Read/Write chip select active state. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive?`` 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:DDRREADWRITE:CSActive value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive {LOW|HIGH} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``LOW`` sets the DDR read/write chip select active state to low. + - ``HIGH`` sets the DDR read/write chip select active state to high. + """ + return self._csactive + + @property + def cslevel(self) -> SearchSearchItemTriggerADdrreadwriteCslevel: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel`` command. + + Description: + - This command sets or queries the DDR Read/Write chip select level value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel?`` 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:DDRREADWRITE:CSLevel value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read/write chip select level value. + """ + return self._cslevel + + @property + def csmode(self) -> SearchSearchItemTriggerADdrreadwriteCsmode: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode`` command. + + Description: + - This command sets or queries the DDR read/write chip select mode. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode?`` 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:DDRREADWRITE:CSMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode {Auto|Manual} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``Auto`` sets the DDR read/write chip select mode to auto. + - ``Manual`` sets the DDR read/write chip select mode to manual. Use the Related + Commands to set the Reference levels when in Manual mode. + """ + return self._csmode + + @property + def cssource(self) -> SearchSearchItemTriggerADdrreadwriteCssource: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource`` command. + + Description: + - This command sets or queries the DDR Read/Write search chip select source. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource?`` 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:DDRREADWRITE:CSSource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies channel as the DDR read/write chip select source for the + specified search . + - ``CH_D`` specifies digital waveform of channel as the DDR read/write + strobe source for the specified search . + - ``Math`` specifies math waveform as the DDR read/write chip select source for + the specified search . + - ``REF`` specifies reference waveform as the DDR read/write chip select source + for the specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + read/write strobe source for the specified search . + """ # noqa: E501 + return self._cssource + + @property + def datarate(self) -> SearchSearchItemTriggerADdrreadwriteDatarate: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate`` command. + + Description: + - This command sets or queries the DDR read/write data rate for DDR3 and LPDRR3 + standards of the specified search. The DDR3 standard supports the following data + rates: 800|1066|1333|1600|1866|2133. The LPDDR3 standard supports the following data + rates: 333|800|1066|1200|1333|1466|1600|1866|2133. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate?`` 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:DDRREADWRITE:DATARate value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate {333|800|1066|1200|1333|1466|1600|1866|2133} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate? + ``` + + Info: + - ``333`` sets the data rate to 333. + - ``800`` sets the data rate to 800. + - ``1066`` sets the data rate to 1066. + - ``1200`` sets the data rate to 1200. + - ``1333`` sets the data rate to 1333. + - ``1466`` sets the data rate to 1466. + - ``1600`` sets the data rate to 1600. + - ``1866`` sets the data rate to 1866. + - ``2133`` sets the data rate to 2133. + """ # noqa: E501 + return self._datarate + + @property + def datasource(self) -> SearchSearchItemTriggerADdrreadwriteDatasource: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource`` command. + + Description: + - This command sets or queries the DDR read/write data source when the search type is + DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource?`` 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:DDRREADWRITE:DATASource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource? + ``` + + Info: + - ``CH`` specifies channel as the DDR read/write data source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR read/write + data source for the specified search . + - ``Math`` specifies math waveform as the DDR read/write data source for the + specified search . + - ``REF`` specifies reference waveform as the DDR read/write data source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + read/write data source for the specified search . + """ # noqa: E501 + return self._datasource + + @property + def hysteresis(self) -> SearchSearchItemTriggerADdrreadwriteHysteresis: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis`` command. + + Description: + - This command sets or queries the DDR read/write hysteresis reference level value, when + the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis?`` 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:DDRREADWRITE:HYSteresis value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis? + ``` + + Info: + - ``NR3`` sets the DDR read/write search hysteresis percent value in the range of 0% to + 50%. + """ + return self._hysteresis + + @property + def logic1source(self) -> SearchSearchItemTriggerADdrreadwriteLogic1source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce:SYMBol`` + command. + """ + return self._logic1source + + @property + def logic2source(self) -> SearchSearchItemTriggerADdrreadwriteLogic2source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce:SYMBol`` + command. + """ + return self._logic2source + + @property + def logic3source(self) -> SearchSearchItemTriggerADdrreadwriteLogic3source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce:SYMBol`` + command. + """ + return self._logic3source + + @property + def logic4source(self) -> SearchSearchItemTriggerADdrreadwriteLogic4source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce:SYMBol`` + command. + """ + return self._logic4source + + @property + def margin(self) -> SearchSearchItemTriggerADdrreadwriteMargin: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin`` command. + + Description: + - This command sets or queries the DDR read/write margin reference level value, when the + search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin?`` 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:DDRREADWRITE:MARgin value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin? + ``` + + Info: + - ``NR3`` sets the DDR read/write search margin percent value in the range of 0% to + 100%. + """ + return self._margin + + @property + def maxcas(self) -> SearchSearchItemTriggerADdrreadwriteMaxcas: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS`` command. + + Description: + - This command sets or queries the DDR read/write chip maximum Column Access Strobe + (CAS) value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS?`` 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:DDRREADWRITE:MAXCAS value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select CAS maximum value. + """ + return self._maxcas + + @property + def mincas(self) -> SearchSearchItemTriggerADdrreadwriteMincas: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas`` command. + + Description: + - This command sets or queries the DDR read/write chip minimum Column Access Strobe + (CAS) value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas?`` 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:DDRREADWRITE:MINCas value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select CAS minimum value. + """ + return self._mincas + + @property + def postamble(self) -> SearchSearchItemTriggerADdrreadwritePostamble: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE:LENGth`` command. + """ + return self._postamble + + @property + def preamble(self) -> SearchSearchItemTriggerADdrreadwritePreamble: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE:TYPE`` command. + """ + return self._preamble + + @property + def reflevelmode(self) -> SearchSearchItemTriggerADdrreadwriteReflevelmode: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode`` command. + + Description: + - This command sets or queries the DDR read/write reference level mode to auto or + manual, when the search type is DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode?`` 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:DDRREADWRITE:REFLEVELMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode {AUTO|MANUAL} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode? + ``` + + Info: + - ``AUTO`` sets the DDR read/write reference level mode to auto. + - ``MANUAL`` sets the DDR read/write reference level mode to manual. Use the Related + Commands to set the Reference levels when in Manual mode. + """ + return self._reflevelmode + + @property + def reflevel(self) -> SearchSearchItemTriggerADdrreadwriteReflevel: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:DATA`` command tree. + - ``.strobe``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel:STROBE`` command + tree. + """ + return self._reflevel + + @property + def standard(self) -> SearchSearchItemTriggerADdrreadwriteStandard: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard`` command. + + Description: + - This command sets or queries the DDR read/write search standard as DDR3 or LPDDR3. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard?`` 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:DDRREADWRITE:STANdard value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard {DDR3|LPDDR3} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard? + ``` + + Info: + - ``DDR3`` sets the DDR read/write search standard as DDR3. + - ``LPDDR3`` sets the DDR read/write search standard as LPDDR3. + """ + return self._standard + + @property + def strobesource(self) -> SearchSearchItemTriggerADdrreadwriteStrobesource: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource`` command. + + Description: + - This command sets or queries the DDR readwrite strobe source when the search type is + DDR READWRITE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource?`` 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:DDRREADWRITE:STROBESource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource? + ``` + + Info: + - ``CH`` specifies channel as the DDR read/write strobe source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR read/write + strobe source for the specified search . + - ``Math`` specifies math waveform as the DDR read/write strobe source for the + specified search . + - ``REF`` specifies reference waveform as the DDR read/write strobe source for + the specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + read/write strobe source for the specified search . + """ # noqa: E501 + return self._strobesource + + @property + def tolerance(self) -> SearchSearchItemTriggerADdrreadwriteTolerance: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance`` command. + + Description: + - This command sets or queries the DDR read/write logic state tolerance value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance?`` 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:DDRREADWRITE:TOLERance value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance + - SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state tolerance value. + """ + return self._tolerance + + +class SearchSearchItemTriggerADdrreadTolerance(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance`` command. + + Description: + - This command sets or queries the DDR read logic state tolerance value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance?`` 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:DDRREAD:TOLERance value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance + - SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state tolerance value. + """ + + +class SearchSearchItemTriggerADdrreadStrobesource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource`` command. + + Description: + - This command sets or queries the DDR read strobe source when the search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource?`` 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:DDRREAD:STROBESource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource? + ``` + + Info: + - ``CH`` specifies channel as the DDR read strobe trigger source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR read strobe + trigger source for the specified search . + - ``Math`` specifies math waveform as the DDR read strobe trigger source for the + specified search . + - ``REF`` specifies reference waveform as the DDR read strobe trigger source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR read + strobe trigger source for the specified search . + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrreadStandard(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard`` command. + + Description: + - This command sets or queries the DDR read search standard as DDR3 or LPDDR3. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard?`` 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:DDRREAD:STANdard value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard {DDR3|LPDDR3} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard? + ``` + + Info: + - ``DDR3`` sets the DDR read search standard as DDR3. + - ``LPDDR3`` sets the DDR read search standard as LPDDR3. + """ + + +class SearchSearchItemTriggerADdrreadReflevelStrobeMid(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID`` command. + + Description: + - This command sets or queries the DDR read reference level strobe mid value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID?`` 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:DDRREAD:REFLevel:STROBE:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe mid reference value. + """ + + +class SearchSearchItemTriggerADdrreadReflevelStrobeLow(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW`` command. + + Description: + - This command sets or queries the DDR read reference level strobe low value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW?`` 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:DDRREAD:REFLevel:STROBE:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe low reference value. + """ + + +class SearchSearchItemTriggerADdrreadReflevelStrobeHigh(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH`` command. + + Description: + - This command sets or queries the DDR read reference level strobe high value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH?`` 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:DDRREAD:REFLevel:STROBE:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe high value. + """ + + +class SearchSearchItemTriggerADdrreadReflevelStrobe(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._high = SearchSearchItemTriggerADdrreadReflevelStrobeHigh( + device, f"{self._cmd_syntax}:HIGH" + ) + self._low = SearchSearchItemTriggerADdrreadReflevelStrobeLow( + device, f"{self._cmd_syntax}:LOW" + ) + self._mid = SearchSearchItemTriggerADdrreadReflevelStrobeMid( + device, f"{self._cmd_syntax}:MID" + ) + + @property + def high(self) -> SearchSearchItemTriggerADdrreadReflevelStrobeHigh: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH`` command. + + Description: + - This command sets or queries the DDR read reference level strobe high value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH?`` 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:DDRREAD:REFLevel:STROBE:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe high value. + """ + return self._high + + @property + def low(self) -> SearchSearchItemTriggerADdrreadReflevelStrobeLow: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW`` command. + + Description: + - This command sets or queries the DDR read reference level strobe low value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW?`` 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:DDRREAD:REFLevel:STROBE:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe low reference value. + """ + return self._low + + @property + def mid(self) -> SearchSearchItemTriggerADdrreadReflevelStrobeMid: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID`` command. + + Description: + - This command sets or queries the DDR read reference level strobe mid value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID?`` 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:DDRREAD:REFLevel:STROBE:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID? + ``` + + Info: + - ``NR3`` sets the DDR read search strobe mid reference value. + """ + return self._mid + + +class SearchSearchItemTriggerADdrreadReflevelDataMid(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID`` command. + + Description: + - This command sets or queries the DDR read data mid reference level value, when the search + type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID?`` 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:DDRREAD:REFLevel:DATA:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID? + ``` + + Info: + - ``NR3`` sets the DDR read search data mid reference value. + """ + + +class SearchSearchItemTriggerADdrreadReflevelDataLow(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW`` command. + + Description: + - This command sets or queries the DDR read data low reference level value, when the search + type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW?`` 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:DDRREAD:REFLevel:DATA:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read search data low reference value. + """ + + +class SearchSearchItemTriggerADdrreadReflevelDataHigh(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH`` command. + + Description: + - This command sets or queries the DDR read data high reference level value, when the search + type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH?`` 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:DDRREAD:REFLevel:DATA:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read search data high reference value. + """ + + +class SearchSearchItemTriggerADdrreadReflevelData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._high = SearchSearchItemTriggerADdrreadReflevelDataHigh( + device, f"{self._cmd_syntax}:HIGH" + ) + self._low = SearchSearchItemTriggerADdrreadReflevelDataLow( + device, f"{self._cmd_syntax}:LOW" + ) + self._mid = SearchSearchItemTriggerADdrreadReflevelDataMid( + device, f"{self._cmd_syntax}:MID" + ) + + @property + def high(self) -> SearchSearchItemTriggerADdrreadReflevelDataHigh: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH`` command. + + Description: + - This command sets or queries the DDR read data high reference level value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH?`` 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:DDRREAD:REFLevel:DATA:HIGH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH? + ``` + + Info: + - ``NR3`` sets the DDR read search data high reference value. + """ + return self._high + + @property + def low(self) -> SearchSearchItemTriggerADdrreadReflevelDataLow: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW`` command. + + Description: + - This command sets or queries the DDR read data low reference level value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW?`` 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:DDRREAD:REFLevel:DATA:LOW value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW? + ``` + + Info: + - ``NR3`` sets the DDR read search data low reference value. + """ + return self._low + + @property + def mid(self) -> SearchSearchItemTriggerADdrreadReflevelDataMid: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID`` command. + + Description: + - This command sets or queries the DDR read data mid reference level value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID?`` 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:DDRREAD:REFLevel:DATA:MID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID? + ``` + + Info: + - ``NR3`` sets the DDR read search data mid reference value. + """ + return self._mid + + +class SearchSearchItemTriggerADdrreadReflevel(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA`` command tree. + - ``.strobe``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = SearchSearchItemTriggerADdrreadReflevelData(device, f"{self._cmd_syntax}:DATA") + self._strobe = SearchSearchItemTriggerADdrreadReflevelStrobe( + device, f"{self._cmd_syntax}:STROBE" + ) + + @property + def data(self) -> SearchSearchItemTriggerADdrreadReflevelData: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA:MID`` command. + """ + return self._data + + @property + def strobe(self) -> SearchSearchItemTriggerADdrreadReflevelStrobe: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.high``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:HIGH`` command. + - ``.low``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:LOW`` command. + - ``.mid``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE:MID`` command. + """ + return self._strobe + + +class SearchSearchItemTriggerADdrreadReflevelmode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode`` command. + + Description: + - This command sets or queries the DDR read reference level mode to auto or manual, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode?`` 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:DDRREAD:REFLEVELMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode {AUTO|MANUAL} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode? + ``` + + Info: + - ``AUTO`` sets the DDR read reference level mode to auto. + - ``MANUAL`` sets the DDR read reference level mode to manual. Use the Related Commands to + set the Reference levels when in Manual mode. + """ + + +class SearchSearchItemTriggerADdrreadPreambleType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE`` command. + + Description: + - This command sets or queries the DDR read preamble type when the search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE?`` 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:DDRREAD:PREAMBLE:TYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE {STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE? + ``` + + Info: + - ``STATIC`` sets the DDR Read preamble type to Static. + - ``DYNAMIC`` sets the DDR Read preamble type to Dynamic. + """ + + +class SearchSearchItemTriggerADdrreadPreamble(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerADdrreadPreambleType(device, f"{self._cmd_syntax}:TYPE") + + @property + def type(self) -> SearchSearchItemTriggerADdrreadPreambleType: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE`` command. + + Description: + - This command sets or queries the DDR read preamble type when the search type is DDR + READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE?`` 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:DDRREAD:PREAMBLE:TYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE {STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE? + ``` + + Info: + - ``STATIC`` sets the DDR Read preamble type to Static. + - ``DYNAMIC`` sets the DDR Read preamble type to Dynamic. + """ + return self._type + + +class SearchSearchItemTriggerADdrreadPostambleLength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth`` command. + + Description: + - This command sets or queries the DDR read postamble length when the search type is DDR + READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth?`` 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:DDRREAD:POSTAMBLE:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth {500E-3|500E-1.5|500E-1} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth? + ``` + + Info: + - ``500E-1.5`` sets the postamble length to 1.5 tCK (number of clock cycles). + - ``500E-1`` sets the postamble length to 1 tCK (number of clock cycles). + - ``500E-3`` sets the postamble length to 0.5 tCK (number of clock cycles). + """ + + +class SearchSearchItemTriggerADdrreadPostamble(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._length = SearchSearchItemTriggerADdrreadPostambleLength( + device, f"{self._cmd_syntax}:LENGth" + ) + + @property + def length(self) -> SearchSearchItemTriggerADdrreadPostambleLength: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth`` command. + + Description: + - This command sets or queries the DDR read postamble length when the search type is DDR + READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth?`` 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:DDRREAD:POSTAMBLE:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth {500E-3|500E-1.5|500E-1} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth? + ``` + + Info: + - ``500E-1.5`` sets the postamble length to 1.5 tCK (number of clock cycles). + - ``500E-1`` sets the postamble length to 1 tCK (number of clock cycles). + - ``500E-3`` sets the postamble length to 0.5 tCK (number of clock cycles). + """ + return self._length + + +class SearchSearchItemTriggerADdrreadMincas(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas`` command. + + Description: + - This command sets or queries the DDR read chip minimum Column Access Strobe (CAS) value. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas?`` 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:DDRREAD:MINCas value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select CAS minimum value. + """ + + +class SearchSearchItemTriggerADdrreadMaxcas(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS`` command. + + Description: + - This command sets or queries the DDR read chip maximum Column Access Strobe (CAS) value. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS?`` 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:DDRREAD:MAXCAS value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select CAS maximum value. + """ + + +class SearchSearchItemTriggerADdrreadMargin(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin`` command. + + Description: + - This command sets or queries the DDR read margin reference level value, when the search + type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin?`` 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:DDRREAD:MARgin value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin? + ``` + + Info: + - ``NR3`` sets the DDR read search margin percent value in the range of 0% to 100%. + """ + + +class SearchSearchItemTriggerADdrreadLogic4sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read logic source 4 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol?`` 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:DDRREAD:LOGIC4SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 4 symbol to H (High). + - ``L`` sets the logic source 4 symbol to L (Low). + - ``X`` sets the logic source 4 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrreadLogic4source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrreadLogic4sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrreadLogic4sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read logic source 4 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol?`` 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:DDRREAD:LOGIC4SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 4 symbol to H (High). + - ``L`` sets the logic source 4 symbol to L (Low). + - ``X`` sets the logic source 4 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrreadLogic3sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read logic source 3 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol?`` 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:DDRREAD:LOGIC3SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 3 symbol to H (High). + - ``L`` sets the logic source 3 symbol to L (Low). + - ``X`` sets the logic source 3 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrreadLogic3source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrreadLogic3sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrreadLogic3sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read logic source 3 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol?`` 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:DDRREAD:LOGIC3SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 3 symbol to H (High). + - ``L`` sets the logic source 3 symbol to L (Low). + - ``X`` sets the logic source 3 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrreadLogic2sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read logic source 2 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol?`` 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:DDRREAD:LOGIC2SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 2 symbol to H (High). + - ``L`` sets the logic source 2 symbol to L (Low). + - ``X`` sets the logic source 2 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrreadLogic2source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrreadLogic2sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrreadLogic2sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read logic source 2 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol?`` 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:DDRREAD:LOGIC2SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 2 symbol to H (High). + - ``L`` sets the logic source 2 symbol to L (Low). + - ``X`` sets the logic source 2 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrreadLogic1sourceSymbol(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read logic source 1 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol?`` 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:DDRREAD:LOGIC1SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 1 symbol to H (High). + - ``L`` sets the logic source 1 symbol to L (Low). + - ``X`` sets the logic source 1 symbol to X (Don't care). + """ + + +class SearchSearchItemTriggerADdrreadLogic1source(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._symbol = SearchSearchItemTriggerADdrreadLogic1sourceSymbol( + device, f"{self._cmd_syntax}:SYMBol" + ) + + @property + def symbol(self) -> SearchSearchItemTriggerADdrreadLogic1sourceSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol`` command. + + Description: + - This command sets or queries the DDR read logic source 1 symbol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol?`` 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:DDRREAD:LOGIC1SOUrce:SYMBol value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol {H|L|X} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``H`` sets the logic source 1 symbol to H (High). + - ``L`` sets the logic source 1 symbol to L (Low). + - ``X`` sets the logic source 1 symbol to X (Don't care). + """ + return self._symbol + + +class SearchSearchItemTriggerADdrreadHysteresis(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis`` command. + + Description: + - This command sets or queries the DDR read hysteresis reference level value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis?`` 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:DDRREAD:HYSteresis value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis + - SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis? + ``` + + Info: + - ``NR3`` sets the DDR read search hysteresis percent value in the range of 0% to 50%. + """ + + +class SearchSearchItemTriggerADdrreadDatasource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource`` command. + + Description: + - This command sets or queries the DDR read data source when the search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource?`` 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:DDRREAD:DATASource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource? + ``` + + Info: + - ``CH`` specifies channel as the DDR read data source for the specified search . + - ``CH_D`` specifies digital waveform of channel as the DDR read data source + for the specified search . + - ``Math`` specifies math waveform as the DDR read data source for the specified + search . + - ``REF`` specifies reference waveform as the DDR read data source for the specified + search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR read + data source for the specified search . + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrreadDatarate(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate`` command. + + Description: + - This command sets or queries the DDR read search data rate for DDR3 and LPDRR3 standards + of the specified search. The DDR3 standard supports the following data rates: + 800|1066|1333|1600|1866|2133. The LPDDR3 standard supports the following data rates: + 333|800|1066|1200|1333|1466|1600|1866|2133. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate?`` 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:DDRREAD:DATARate value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate {333|800|1066|1200|1333|1466|1600|1866|2133} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate? + ``` + + Info: + - ``333`` sets the data rate to 333. + - ``800`` sets the data rate to 800. + - ``1066`` sets the data rate to 1066. + - ``1200`` sets the data rate to 1200. + - ``1333`` sets the data rate to 1333. + - ``1466`` sets the data rate to 1466. + - ``1600`` sets the data rate to 1600. + - ``1866`` sets the data rate to 1866. + - ``2133`` sets the data rate to 2133. + """ + + +class SearchSearchItemTriggerADdrreadCssource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource`` command. + + Description: + - This command sets or queries the DDR Read search chip select source. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource?`` 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:DDRREAD:CSSource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies channel as the DDR read chip select source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR read strobe source + for the specified search . + - ``Math`` specifies math waveform as the DDR read chip select source for the + specified search . + - ``REF`` specifies reference waveform as the DDR read chip select source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR read + strobe source for the specified search . + """ # noqa: E501 + + +class SearchSearchItemTriggerADdrreadCsmode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode`` command. + + Description: + - This command sets or queries the DDR Read chip select mode. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode?`` 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:DDRREAD:CSMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode {Auto|Manual} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``Auto`` sets the DDR read chip select mode to auto. + - ``Manual`` sets the DDR read chip select mode to manual. Use the Related Commands to set + the Reference levels when in Manual mode. + """ + + +class SearchSearchItemTriggerADdrreadCslevel(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel`` command. + + Description: + - This command sets or queries the DDR Read chip select level value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel?`` 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:DDRREAD:CSLevel value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select level value. + """ + + +class SearchSearchItemTriggerADdrreadCsactive(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive`` command. + + Description: + - This command sets or queries the DDR Read chip select active state. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive?`` 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:DDRREAD:CSActive value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive {LOW|HIGH} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``LOW`` sets the DDR read chip select active state to low. + - ``HIGH`` sets the DDR read chip select active state to high. + """ + + +class SearchSearchItemTriggerADdrreadBurstlatency(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency`` command. + + Description: + - This command sets or queries the DDR read logic state burst latency value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency?`` 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:DDRREAD:BURSTLatency value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state burst latency value. + """ + + +class SearchSearchItemTriggerADdrreadBurstlength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH`` command. + + Description: + - This command sets or queries the DDR read logic state burst length value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH?`` 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:DDRREAD:BURSTLENGTH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR1`` sets the logic state burst length value. + """ + + +class SearchSearchItemTriggerADdrreadBurstdetectmethod(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod`` command. + + Description: + - This command sets or queries the DDRRead search burst detection method. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod?`` 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:DDRREAD:BURSTDETectmethod value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod {DQDQS|ChipSelect|LogicState} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod? + ``` + + Info: + - ``DQDQS`` sets the burst detection method to DQDQS. + - ``ChipSelect`` sets the burst detection method to ChipSelect. + - ``LogicState`` sets the burst detection method to LogicState. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class SearchSearchItemTriggerADdrread(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:DDRREAD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRREAD?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRREAD?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.burstdetectmethod``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod`` + command. + - ``.burstlength``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH`` command. + - ``.burstlatency``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency`` command. + - ``.csactive``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive`` command. + - ``.cslevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel`` command. + - ``.csmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode`` command. + - ``.cssource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource`` command. + - ``.datarate``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate`` command. + - ``.datasource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource`` command. + - ``.hysteresis``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis`` command. + - ``.logic1source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce`` command tree. + - ``.logic2source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce`` command tree. + - ``.logic3source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce`` command tree. + - ``.logic4source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce`` command tree. + - ``.margin``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin`` command. + - ``.maxcas``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS`` command. + - ``.mincas``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas`` command. + - ``.postamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE`` command tree. + - ``.preamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE`` command tree. + - ``.reflevelmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode`` command. + - ``.reflevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel`` command tree. + - ``.standard``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard`` command. + - ``.strobesource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource`` command. + - ``.tolerance``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._burstdetectmethod = SearchSearchItemTriggerADdrreadBurstdetectmethod( + device, f"{self._cmd_syntax}:BURSTDETectmethod" + ) + self._burstlength = SearchSearchItemTriggerADdrreadBurstlength( + device, f"{self._cmd_syntax}:BURSTLENGTH" + ) + self._burstlatency = SearchSearchItemTriggerADdrreadBurstlatency( + device, f"{self._cmd_syntax}:BURSTLatency" + ) + self._csactive = SearchSearchItemTriggerADdrreadCsactive( + device, f"{self._cmd_syntax}:CSActive" + ) + self._cslevel = SearchSearchItemTriggerADdrreadCslevel( + device, f"{self._cmd_syntax}:CSLevel" + ) + self._csmode = SearchSearchItemTriggerADdrreadCsmode(device, f"{self._cmd_syntax}:CSMode") + self._cssource = SearchSearchItemTriggerADdrreadCssource( + device, f"{self._cmd_syntax}:CSSource" + ) + self._datarate = SearchSearchItemTriggerADdrreadDatarate( + device, f"{self._cmd_syntax}:DATARate" + ) + self._datasource = SearchSearchItemTriggerADdrreadDatasource( + device, f"{self._cmd_syntax}:DATASource" + ) + self._hysteresis = SearchSearchItemTriggerADdrreadHysteresis( + device, f"{self._cmd_syntax}:HYSteresis" + ) + self._logic1source = SearchSearchItemTriggerADdrreadLogic1source( + device, f"{self._cmd_syntax}:LOGIC1SOUrce" + ) + self._logic2source = SearchSearchItemTriggerADdrreadLogic2source( + device, f"{self._cmd_syntax}:LOGIC2SOUrce" + ) + self._logic3source = SearchSearchItemTriggerADdrreadLogic3source( + device, f"{self._cmd_syntax}:LOGIC3SOUrce" + ) + self._logic4source = SearchSearchItemTriggerADdrreadLogic4source( + device, f"{self._cmd_syntax}:LOGIC4SOUrce" + ) + self._margin = SearchSearchItemTriggerADdrreadMargin(device, f"{self._cmd_syntax}:MARgin") + self._maxcas = SearchSearchItemTriggerADdrreadMaxcas(device, f"{self._cmd_syntax}:MAXCAS") + self._mincas = SearchSearchItemTriggerADdrreadMincas(device, f"{self._cmd_syntax}:MINCas") + self._postamble = SearchSearchItemTriggerADdrreadPostamble( + device, f"{self._cmd_syntax}:POSTAMBLE" + ) + self._preamble = SearchSearchItemTriggerADdrreadPreamble( + device, f"{self._cmd_syntax}:PREAMBLE" + ) + self._reflevelmode = SearchSearchItemTriggerADdrreadReflevelmode( + device, f"{self._cmd_syntax}:REFLEVELMode" + ) + self._reflevel = SearchSearchItemTriggerADdrreadReflevel( + device, f"{self._cmd_syntax}:REFLevel" + ) + self._standard = SearchSearchItemTriggerADdrreadStandard( + device, f"{self._cmd_syntax}:STANdard" + ) + self._strobesource = SearchSearchItemTriggerADdrreadStrobesource( + device, f"{self._cmd_syntax}:STROBESource" + ) + self._tolerance = SearchSearchItemTriggerADdrreadTolerance( + device, f"{self._cmd_syntax}:TOLERance" + ) + + @property + def burstdetectmethod(self) -> SearchSearchItemTriggerADdrreadBurstdetectmethod: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod`` command. + + Description: + - This command sets or queries the DDRRead search burst detection method. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod?`` 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:DDRREAD:BURSTDETectmethod value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod {DQDQS|ChipSelect|LogicState} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod? + ``` + + Info: + - ``DQDQS`` sets the burst detection method to DQDQS. + - ``ChipSelect`` sets the burst detection method to ChipSelect. + - ``LogicState`` sets the burst detection method to LogicState. + """ + return self._burstdetectmethod + + @property + def burstlength(self) -> SearchSearchItemTriggerADdrreadBurstlength: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH`` command. + + Description: + - This command sets or queries the DDR read logic state burst length value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH?`` 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:DDRREAD:BURSTLENGTH value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR1`` sets the logic state burst length value. + """ + return self._burstlength + + @property + def burstlatency(self) -> SearchSearchItemTriggerADdrreadBurstlatency: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency`` command. + + Description: + - This command sets or queries the DDR read logic state burst latency value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency?`` 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:DDRREAD:BURSTLatency value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency + - SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state burst latency value. + """ + return self._burstlatency + + @property + def csactive(self) -> SearchSearchItemTriggerADdrreadCsactive: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive`` command. + + Description: + - This command sets or queries the DDR Read chip select active state. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive?`` 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:DDRREAD:CSActive value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive {LOW|HIGH} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``LOW`` sets the DDR read chip select active state to low. + - ``HIGH`` sets the DDR read chip select active state to high. + """ + return self._csactive + + @property + def cslevel(self) -> SearchSearchItemTriggerADdrreadCslevel: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel`` command. + + Description: + - This command sets or queries the DDR Read chip select level value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel?`` 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:DDRREAD:CSLevel value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select level value. + """ + return self._cslevel + + @property + def csmode(self) -> SearchSearchItemTriggerADdrreadCsmode: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode`` command. + + Description: + - This command sets or queries the DDR Read chip select mode. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode?`` 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:DDRREAD:CSMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode {Auto|Manual} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``Auto`` sets the DDR read chip select mode to auto. + - ``Manual`` sets the DDR read chip select mode to manual. Use the Related Commands to + set the Reference levels when in Manual mode. + """ + return self._csmode + + @property + def cssource(self) -> SearchSearchItemTriggerADdrreadCssource: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource`` command. + + Description: + - This command sets or queries the DDR Read search chip select source. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource?`` 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:DDRREAD:CSSource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource {S_Ch_D|CH|CH_D|Math|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``S_Ch_D`` specifies is the remote scope number, the analog channel and the + digital channel. + - ``CH`` specifies channel as the DDR read chip select source for the specified + search . + - ``CH_D`` specifies digital waveform of channel as the DDR read strobe + source for the specified search . + - ``Math`` specifies math waveform as the DDR read chip select source for the + specified search . + - ``REF`` specifies reference waveform as the DDR read chip select source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + read strobe source for the specified search . + """ # noqa: E501 + return self._cssource + + @property + def datarate(self) -> SearchSearchItemTriggerADdrreadDatarate: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate`` command. + + Description: + - This command sets or queries the DDR read search data rate for DDR3 and LPDRR3 + standards of the specified search. The DDR3 standard supports the following data + rates: 800|1066|1333|1600|1866|2133. The LPDDR3 standard supports the following data + rates: 333|800|1066|1200|1333|1466|1600|1866|2133. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate?`` 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:DDRREAD:DATARate value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate {333|800|1066|1200|1333|1466|1600|1866|2133} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate? + ``` + + Info: + - ``333`` sets the data rate to 333. + - ``800`` sets the data rate to 800. + - ``1066`` sets the data rate to 1066. + - ``1200`` sets the data rate to 1200. + - ``1333`` sets the data rate to 1333. + - ``1466`` sets the data rate to 1466. + - ``1600`` sets the data rate to 1600. + - ``1866`` sets the data rate to 1866. + - ``2133`` sets the data rate to 2133. + """ # noqa: E501 + return self._datarate + + @property + def datasource(self) -> SearchSearchItemTriggerADdrreadDatasource: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource`` command. + + Description: + - This command sets or queries the DDR read data source when the search type is DDR + READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource?`` 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:DDRREAD:DATASource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource? + ``` + + Info: + - ``CH`` specifies channel as the DDR read data source for the specified search + . + - ``CH_D`` specifies digital waveform of channel as the DDR read data + source for the specified search . + - ``Math`` specifies math waveform as the DDR read data source for the specified + search . + - ``REF`` specifies reference waveform as the DDR read data source for the + specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + read data source for the specified search . + """ # noqa: E501 + return self._datasource + + @property + def hysteresis(self) -> SearchSearchItemTriggerADdrreadHysteresis: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis`` command. + + Description: + - This command sets or queries the DDR read hysteresis reference level value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis?`` 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:DDRREAD:HYSteresis value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis + - SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis? + ``` + + Info: + - ``NR3`` sets the DDR read search hysteresis percent value in the range of 0% to 50%. + """ + return self._hysteresis + + @property + def logic1source(self) -> SearchSearchItemTriggerADdrreadLogic1source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce:SYMBol`` command. + """ + return self._logic1source + + @property + def logic2source(self) -> SearchSearchItemTriggerADdrreadLogic2source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce:SYMBol`` command. + """ + return self._logic2source + + @property + def logic3source(self) -> SearchSearchItemTriggerADdrreadLogic3source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce:SYMBol`` command. + """ + return self._logic3source + + @property + def logic4source(self) -> SearchSearchItemTriggerADdrreadLogic4source: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Info: + - ``SEARCH`` specifies the search number. + + Sub-properties: + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce:SYMBol`` command. + """ + return self._logic4source + + @property + def margin(self) -> SearchSearchItemTriggerADdrreadMargin: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin`` command. + + Description: + - This command sets or queries the DDR read margin reference level value, when the + search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin?`` 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:DDRREAD:MARgin value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin? + ``` + + Info: + - ``NR3`` sets the DDR read search margin percent value in the range of 0% to 100%. + """ + return self._margin + + @property + def maxcas(self) -> SearchSearchItemTriggerADdrreadMaxcas: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS`` command. + + Description: + - This command sets or queries the DDR read chip maximum Column Access Strobe (CAS) + value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS?`` 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:DDRREAD:MAXCAS value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select CAS maximum value. + """ + return self._maxcas + + @property + def mincas(self) -> SearchSearchItemTriggerADdrreadMincas: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas`` command. + + Description: + - This command sets or queries the DDR read chip minimum Column Access Strobe (CAS) + value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas?`` 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:DDRREAD:MINCas value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas + - SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the DDR read chip select CAS minimum value. + """ + return self._mincas + + @property + def postamble(self) -> SearchSearchItemTriggerADdrreadPostamble: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE:LENGth`` command. + """ + return self._postamble + + @property + def preamble(self) -> SearchSearchItemTriggerADdrreadPreamble: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE:TYPE`` command. + """ + return self._preamble + + @property + def reflevelmode(self) -> SearchSearchItemTriggerADdrreadReflevelmode: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode`` command. + + Description: + - This command sets or queries the DDR read reference level mode to auto or manual, when + the search type is DDR READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode?`` 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:DDRREAD:REFLEVELMode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode {AUTO|MANUAL} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode? + ``` + + Info: + - ``AUTO`` sets the DDR read reference level mode to auto. + - ``MANUAL`` sets the DDR read reference level mode to manual. Use the Related Commands + to set the Reference levels when in Manual mode. + """ + return self._reflevelmode + + @property + def reflevel(self) -> SearchSearchItemTriggerADdrreadReflevel: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:DATA`` command tree. + - ``.strobe``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel:STROBE`` command tree. + """ + return self._reflevel + + @property + def standard(self) -> SearchSearchItemTriggerADdrreadStandard: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard`` command. + + Description: + - This command sets or queries the DDR read search standard as DDR3 or LPDDR3. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard?`` 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:DDRREAD:STANdard value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard {DDR3|LPDDR3} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard? + ``` + + Info: + - ``DDR3`` sets the DDR read search standard as DDR3. + - ``LPDDR3`` sets the DDR read search standard as LPDDR3. + """ + return self._standard + + @property + def strobesource(self) -> SearchSearchItemTriggerADdrreadStrobesource: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource`` command. + + Description: + - This command sets or queries the DDR read strobe source when the search type is DDR + READ. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource?`` 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:DDRREAD:STROBESource value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource {CH|CH_D|REF|REF_D} + - SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource? + ``` + + Info: + - ``CH`` specifies channel as the DDR read strobe trigger source for the + specified search . + - ``CH_D`` specifies digital waveform of channel as the DDR read strobe + trigger source for the specified search . + - ``Math`` specifies math waveform as the DDR read strobe trigger source for the + specified search . + - ``REF`` specifies reference waveform as the DDR read strobe trigger source for + the specified search . + - ``REF_D`` specifies digital waveform of reference waveform as the DDR + read strobe trigger source for the specified search . + """ # noqa: E501 + return self._strobesource + + @property + def tolerance(self) -> SearchSearchItemTriggerADdrreadTolerance: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance`` command. + + Description: + - This command sets or queries the DDR read logic state tolerance value. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance?`` 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:DDRREAD:TOLERance value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance + - SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance? + ``` + + Info: + - ``SEARCH`` specifies the search number. + - ``NR3`` sets the logic state tolerance value. + """ + return self._tolerance + + +class SearchSearchItemTriggerABusUsbTokentype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType`` command. + + Description: + - This command sets or queries the token type used to search a USB bus signal. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType?`` 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:BUS:USB:TOKENType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType {ANY|IN|OUT|SETUP|SOF} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType? + ``` + + Info: + - ``ANY`` specifies the token type as Any (XX01). + - ``IN`` specifies the token type as IN (1001). + - ``OUT`` specifies the token type as OUT (0001). + - ``SETUP`` specifies the token type as SETUP (1101). + - ``SOF`` specifies the token type as Start Of Frame (0101). + """ + + +class SearchSearchItemTriggerABusUsbSplitSeValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue`` command. + + Description: + - This command sets or queries the Start/End value for the specified USB bus trigger on + split token field search to determine where to place a mark. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue?`` 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:BUS:USB:SPLIT:SE:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue {NOCARE|FULLSPEED|ISOALL|ISOEND|ISOMID|ISOSTART|LOWSPEED} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue? + ``` + + Info: + - ``NOCARE`` specifies Don't Care (X) Start/End bit value. + - ``FULLSPEED`` specifies Control/Bulk/Interrupt Full Speed device (0X) Start/End bit value. + - ``ISOALL`` specifies Isochronous Data is All (11) Start/End bit value. + - ``ISOEND`` specifies Isochronous Data is End (01) Start/End bit value. + - ``ISOMID`` specifies Isochronous Data is Middle (00) Start/End bit value. + - ``ISOSTART`` specifies Isochronous Data is Start (10) Start/End bit value. + - ``LOWSPEED`` specifies Control/Bulk/Interrupt Low Speed device (1X) Start/End bit value. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusUsbSplitSe(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusUsbSplitSeValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusUsbSplitSeValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue`` command. + + Description: + - This command sets or queries the Start/End value for the specified USB bus trigger on + split token field search to determine where to place a mark. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue?`` 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:BUS:USB:SPLIT:SE:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue {NOCARE|FULLSPEED|ISOALL|ISOEND|ISOMID|ISOSTART|LOWSPEED} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue? + ``` + + Info: + - ``NOCARE`` specifies Don't Care (X) Start/End bit value. + - ``FULLSPEED`` specifies Control/Bulk/Interrupt Full Speed device (0X) Start/End bit + value. + - ``ISOALL`` specifies Isochronous Data is All (11) Start/End bit value. + - ``ISOEND`` specifies Isochronous Data is End (01) Start/End bit value. + - ``ISOMID`` specifies Isochronous Data is Middle (00) Start/End bit value. + - ``ISOSTART`` specifies Isochronous Data is Start (10) Start/End bit value. + - ``LOWSPEED`` specifies Control/Bulk/Interrupt Low Speed device (1X) Start/End bit + value. + """ # noqa: E501 + return self._value + + +class SearchSearchItemTriggerABusUsbSplitScValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue`` command. + + Description: + - This command sets or queries the Start/Complete value for the specified USB bus trigger on + split token field search to determine where to place a mark. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue?`` 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:BUS:USB:SPLIT:SC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue {CSPLIT|NOCARE|SSPLIT} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue? + ``` + + Info: + - ``CSPLIT`` specifies Complete (CSPLIT)(1) Start/Complete value. + - ``NOCARE`` specifies the Start/Complete value as Don't Care (X). + - ``SSPLIT`` specifies Start (SSPLIT) (0) Start/Complete value. + """ + + +class SearchSearchItemTriggerABusUsbSplitSc(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusUsbSplitScValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusUsbSplitScValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue`` command. + + Description: + - This command sets or queries the Start/Complete value for the specified USB bus + trigger on split token field search to determine where to place a mark. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue?`` 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:BUS:USB:SPLIT:SC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue {CSPLIT|NOCARE|SSPLIT} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue? + ``` + + Info: + - ``CSPLIT`` specifies Complete (CSPLIT)(1) Start/Complete value. + - ``NOCARE`` specifies the Start/Complete value as Don't Care (X). + - ``SSPLIT`` specifies Start (SSPLIT) (0) Start/Complete value. + """ + return self._value + + +class SearchSearchItemTriggerABusUsbSplitPortValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue`` command. + + Description: + - This command sets or queries the binary port address used when searching on a USB bus + signal. The search number is specified by x. The search condition must be set to Special + with a packet type SPLIT. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue?`` 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:BUS:USB:SPLIT:PORT:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue? + ``` + + Info: + - ```` specifies the port address in the valid format. The valid characters are. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusUsbSplitPort(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusUsbSplitPortValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusUsbSplitPortValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue`` command. + + Description: + - This command sets or queries the binary port address used when searching on a USB bus + signal. The search number is specified by x. The search condition must be set to + Special with a packet type SPLIT. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue?`` 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:BUS:USB:SPLIT:PORT:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue? + ``` + + Info: + - ```` specifies the port address in the valid format. The valid characters + are. + """ + return self._value + + +class SearchSearchItemTriggerABusUsbSplitHubValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue`` command. + + Description: + - This command sets or queries the binary hub address value to be used when searching on a + USB bus signal. The search number is specified by x. The search condition must be set to + Special with packet type SPLIT. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue?`` 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:BUS:USB:SPLIT:HUB:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue? + ``` + + Info: + - ```` specifies the hub address. The valid characters are . + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusUsbSplitHub(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusUsbSplitHubValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusUsbSplitHubValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue`` command. + + Description: + - This command sets or queries the binary hub address value to be used when searching on + a USB bus signal. The search number is specified by x. The search condition must be + set to Special with packet type SPLIT. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue?`` 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:BUS:USB:SPLIT:HUB:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue? + ``` + + Info: + - ```` specifies the hub address. The valid characters are . + """ + return self._value + + +class SearchSearchItemTriggerABusUsbSplitEtValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue`` command. + + Description: + - This command sets or queries the Endpoint Type value for the specified USB bus trigger + search on split token field to determine where to place a mark. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue?`` 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:BUS:USB:SPLIT:ET:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue {BULK|CONTROL|NOCARE|INTERRUPT|ISOchronous} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue? + ``` + + Info: + - ``BULK`` specifies the Endpoint Type value as Bulk (10). + - ``CONTROL`` specifies the Endpoint Type value as Control (00). + - ``NOCARE`` specifies the Endpoint Type value as Don't Care. + - ``INTERRUPT`` specifies the Endpoint Type value as Interrupt (11). + - ``ISOchronous`` specifies the Endpoint Type value as Isochronous (01). + """ # noqa: E501 + + +class SearchSearchItemTriggerABusUsbSplitEt(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusUsbSplitEtValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusUsbSplitEtValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue`` command. + + Description: + - This command sets or queries the Endpoint Type value for the specified USB bus trigger + search on split token field to determine where to place a mark. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue?`` 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:BUS:USB:SPLIT:ET:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue {BULK|CONTROL|NOCARE|INTERRUPT|ISOchronous} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue? + ``` + + Info: + - ``BULK`` specifies the Endpoint Type value as Bulk (10). + - ``CONTROL`` specifies the Endpoint Type value as Control (00). + - ``NOCARE`` specifies the Endpoint Type value as Don't Care. + - ``INTERRUPT`` specifies the Endpoint Type value as Interrupt (11). + - ``ISOchronous`` specifies the Endpoint Type value as Isochronous (01). + """ # noqa: E501 + return self._value + + +class SearchSearchItemTriggerABusUsbSplit(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.et``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET`` command tree. + - ``.hub``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB`` command tree. + - ``.port``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT`` command tree. + - ``.sc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC`` command tree. + - ``.se``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._et = SearchSearchItemTriggerABusUsbSplitEt(device, f"{self._cmd_syntax}:ET") + self._hub = SearchSearchItemTriggerABusUsbSplitHub(device, f"{self._cmd_syntax}:HUB") + self._port = SearchSearchItemTriggerABusUsbSplitPort(device, f"{self._cmd_syntax}:PORT") + self._sc = SearchSearchItemTriggerABusUsbSplitSc(device, f"{self._cmd_syntax}:SC") + self._se = SearchSearchItemTriggerABusUsbSplitSe(device, f"{self._cmd_syntax}:SE") + + @property + def et(self) -> SearchSearchItemTriggerABusUsbSplitEt: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET:VALue`` command. + """ + return self._et + + @property + def hub(self) -> SearchSearchItemTriggerABusUsbSplitHub: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB:VALue`` command. + """ + return self._hub + + @property + def port(self) -> SearchSearchItemTriggerABusUsbSplitPort: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT:VALue`` command. + """ + return self._port + + @property + def sc(self) -> SearchSearchItemTriggerABusUsbSplitSc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC:VALue`` command. + """ + return self._sc + + @property + def se(self) -> SearchSearchItemTriggerABusUsbSplitSe: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE:VALue`` command. + """ + return self._se + + +class SearchSearchItemTriggerABusUsbSpecialtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType`` command. + + Description: + - This command sets or queries the USB search type for the specified USB bus trigger search + to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType?`` 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:BUS:USB:SPECIALType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType {ANY|ERROr|PING|PREamble|RESERVed|SPLit} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType? + ``` + + Info: + - ``ANY`` specifies the PID value as Any (XX00). + - ``ERROr`` specifies the PID value as ERR (1100). + - ``PING`` specifies the PID value as PING (0100). + - ``PREamble`` specifies the PID value as PRE (1100). + - ``RESERVed`` specifies the PID value as Reserved (0000). + - ``SPLit`` specifies the PID value as Split (1000). + """ + + +class SearchSearchItemTriggerABusUsbSofframenumber(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber`` command. + + Description: + - This command sets or queries the frame number string to use for the Start of Frame for the + specified USB bus trigger search to determine where to place a mark. The search number is + specified by x. The search condition must be set to TOKEN. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber?`` 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:BUS:USB:SOFFRAMENUMber value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber? + ``` + + Info: + - ```` specifies the frame number string for the Start of Frame in a valid format + (binary, hexadecimal, or symbolic). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusUsbHandshaketype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType`` command. + + Description: + - This command sets or queries the handshake type for the specified USB bus trigger search + to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType?`` 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:BUS:USB:HANDSHAKEType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType {ACK|ANY|NAK|NYET|STALL} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType? + ``` + + Info: + - ``ACK`` specifies the handshake type as Acknowledgement (positive) (XX10). + - ``ANY`` specifies the handshake type as Any (0010). + - ``NAK`` specifies the handshake type as Negative Acknowledgment (1010). + - ``NYET`` specifies the handshake type as No response Yet (0110). + - ``STALL`` specifies the handshake type as Stall (endpoint is halted or control pipe + request not supported) (1110). + """ + + +class SearchSearchItemTriggerABusUsbErrtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE`` command. + + Description: + - This command sets or queries the error type for a USB bus search to determine where to + place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE?`` 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:BUS:USB:ERRTYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE {BITSTUFFing|CRC5|CRC16|PID} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE? + ``` + + Info: + - ``BITSTUFFing`` specifies the error type as Bit Stuffing. + - ``CRC5`` specifies the error type as Token CRC5 (Cyclic Redundancy Check 5). + - ``CRC16`` specifies the error type as Data CRC16 (Cyclic Redundancy Check 16). + - ``PID`` specifies the error type as PID Check Bits. + """ + + +class SearchSearchItemTriggerABusUsbEndpointValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue`` command. + + Description: + - This command sets or queries the endpoint binary value used for a USB bus search to + determine where to place a mark. The search number is specified by x. The search condition + must be set to TOKEN. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue?`` 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:BUS:USB:ENDPoint:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. The valid characters + are 0, 1, and X for binary format; A-F, 0-9 and X for hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusUsbEndpoint(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusUsbEndpointValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusUsbEndpointValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue`` command. + + Description: + - This command sets or queries the endpoint binary value used for a USB bus search to + determine where to place a mark. The search number is specified by x. The search + condition must be set to TOKEN. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue?`` 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:BUS:USB:ENDPoint:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. The valid + characters are 0, 1, and X for binary format; A-F, 0-9 and X for hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusUsbDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data value used for a USB bus search to determine + where to place a mark. The search number is specified by x. The search condition must be + set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue?`` 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:BUS:USB:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue? + ``` + + Info: + - ```` specifies the data value. The valid characters are 0, 1, and X for binary + format; and A-F, 0-9, and X for hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusUsbDataType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe`` command. + + Description: + - This command sets or queries the USB bus search type. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe?`` 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:BUS:USB:DATa:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe {ANY|DATA|MDATA} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe? + ``` + + Info: + - ``ANY`` specifies the data packet type as Any. + - ``DATA0`` specifies the data packet type as DATA0. + - ``DATA1`` specifies the data packet type as DATA1. + - ``DATA2`` specifies the data packet type as DATA2. + - ``MDATA`` specifies the data packet type as MDATA. + """ + + +class SearchSearchItemTriggerABusUsbDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, used for a USB bus + search to determine where to place a mark. The search number is specified by x. The search + condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe?`` 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:BUS:USB:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size in bytes. + """ + + +class SearchSearchItemTriggerABusUsbDataQualifier(SCPICmdWrite): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on a USB bus signal. + The search condition must be set to IDANDDATA OR DATA. The search number is specified by + x. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + ``` + + Info: + - ``EQUal`` specifies the qualifier as Equal. + - ``INrange`` specifies the qualifier as Inside Range. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``OUTrange`` specifies the qualifier as Out of Range. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``LESSThan`` specifies the qualifier as Less Than. + - ``MOREThan`` specifies the qualifier as More Than. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusUsbDataOffset(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet`` command. + + Description: + - This command sets the byte offset to look for a data pattern at, in bytes, to be used when + searching on a USB bus signal. The search number is specified by x. The search condition + must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet?`` 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:BUS:USB:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet? + ``` + + Info: + - ```` specifies the data offset in bytes. + """ + + +class SearchSearchItemTriggerABusUsbDataHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue`` command. + + Description: + - This command sets or queries the high binary data value used with In Range and Out of + Range qualifiers for a USB bus search to determine where to place a mark. The search + number is specified by x. The search condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue?`` 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:BUS:USB:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format (binary, hexadecimal, + or symbolic). The valid characters for binary are 0, 1, and X;. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusUsbData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:QUALifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusUsbDataHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._offset = SearchSearchItemTriggerABusUsbDataOffset( + device, f"{self._cmd_syntax}:OFFSet" + ) + self._qualifier = SearchSearchItemTriggerABusUsbDataQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._size = SearchSearchItemTriggerABusUsbDataSize(device, f"{self._cmd_syntax}:SIZe") + self._type = SearchSearchItemTriggerABusUsbDataType(device, f"{self._cmd_syntax}:TYPe") + self._value = SearchSearchItemTriggerABusUsbDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def hivalue(self) -> SearchSearchItemTriggerABusUsbDataHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue`` command. + + Description: + - This command sets or queries the high binary data value used with In Range and Out of + Range qualifiers for a USB bus search to determine where to place a mark. The search + number is specified by x. The search condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue?`` 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:BUS:USB:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format (binary, + hexadecimal, or symbolic). The valid characters for binary are 0, 1, and X;. + """ + return self._hivalue + + @property + def offset(self) -> SearchSearchItemTriggerABusUsbDataOffset: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet`` command. + + Description: + - This command sets the byte offset to look for a data pattern at, in bytes, to be used + when searching on a USB bus signal. The search number is specified by x. The search + condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet?`` 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:BUS:USB:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet? + ``` + + Info: + - ```` specifies the data offset in bytes. + """ + return self._offset + + @property + def qualifier(self) -> SearchSearchItemTriggerABusUsbDataQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on a USB bus + signal. The search condition must be set to IDANDDATA OR DATA. The search number is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + ``` + + Info: + - ``EQUal`` specifies the qualifier as Equal. + - ``INrange`` specifies the qualifier as Inside Range. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``OUTrange`` specifies the qualifier as Out of Range. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``LESSThan`` specifies the qualifier as Less Than. + - ``MOREThan`` specifies the qualifier as More Than. + """ # noqa: E501 + return self._qualifier + + @property + def size(self) -> SearchSearchItemTriggerABusUsbDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, used for a USB + bus search to determine where to place a mark. The search number is specified by x. + The search condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe?`` 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:BUS:USB:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size in bytes. + """ + return self._size + + @property + def type(self) -> SearchSearchItemTriggerABusUsbDataType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe`` command. + + Description: + - This command sets or queries the USB bus search type. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe?`` 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:BUS:USB:DATa:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe {ANY|DATA|MDATA} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe? + ``` + + Info: + - ``ANY`` specifies the data packet type as Any. + - ``DATA0`` specifies the data packet type as DATA0. + - ``DATA1`` specifies the data packet type as DATA1. + - ``DATA2`` specifies the data packet type as DATA2. + - ``MDATA`` specifies the data packet type as MDATA. + """ + return self._type + + @property + def value(self) -> SearchSearchItemTriggerABusUsbDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data value used for a USB bus search to + determine where to place a mark. The search number is specified by x. The search + condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue?`` 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:BUS:USB:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue? + ``` + + Info: + - ```` specifies the data value. The valid characters are 0, 1, and X for + binary format; and A-F, 0-9, and X for hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusUsbCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition`` command. + + Description: + - This command sets or queries the search condition for a USB bus search to determine where + to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition?`` 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:BUS:USB:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition {DATAPacket|EOP|ERRor|HANDSHAKEPacket|RESET|RESUME|SPECIALPacket|SUSPEND|SYNC|TOKENPacket} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition? + ``` + + Info: + - ``DATAPacket`` specifies the search condition as Data Packet. + - ``EOP`` specifies the search condition as End of Packet. + - ``ERROR`` specifies the search condition as Error. + - ``HANDSHAKEPacket`` specifies the search condition as Handshake Packet. + - ``RESET`` specifies the search condition as Reset. + - ``RESUME`` specifies the search condition as Resume. + - ``SPECIALPacket`` specifies the search condition as Special Packet. + - ``SUSPEND`` specifies the search condition as Suspend. + - ``SYNC`` specifies the search condition as Sync. + - ``TOKENPacket`` specifies the search condition as Token (Address) Packet. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusUsbAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue`` command. + + Description: + - This command sets or queries the binary address value used for a USB bus search to + determine where to place a mark. The search number is specified by x. The search condition + must be set to TOKEN. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue?`` 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:BUS:USB:ADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. Valid characters are + 0, 1, and X for binary; A-F, 0-9 and X for hexadecimal; and for symbolic. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusUsbAddressHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue`` command. + + Description: + - This command sets or queries the high binary address value used when searching on a USB + bus signal to determine where to place a mark. The search number is specified by x. The + search condition must be set to TOKEN. The VALue and HIVALue set a range that the INrange + and OUTrange qualifiers use to decide when to trigger. For example, if the QUALIFER is set + to INrange, and the address is within the range set by VALue and HIVALue, then a trigger + can be generated. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue?`` 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:BUS:USB:ADDress:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. The valid characters + are 0, 1, and X for binary; for hexadecimal; and symbolic). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusUsbAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusUsbAddressHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._value = SearchSearchItemTriggerABusUsbAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusUsbAddressHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue`` command. + + Description: + - This command sets or queries the high binary address value used when searching on a + USB bus signal to determine where to place a mark. The search number is specified by + x. The search condition must be set to TOKEN. The VALue and HIVALue set a range that + the INrange and OUTrange qualifiers use to decide when to trigger. For example, if the + QUALIFER is set to INrange, and the address is within the range set by VALue and + HIVALue, then a trigger can be generated. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue?`` 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:BUS:USB:ADDress:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. The valid + characters are 0, 1, and X for binary; for hexadecimal; and symbolic). + """ + return self._hivalue + + @property + def value(self) -> SearchSearchItemTriggerABusUsbAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue`` command. + + Description: + - This command sets or queries the binary address value used for a USB bus search to + determine where to place a mark. The search number is specified by x. The search + condition must be set to TOKEN. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue?`` 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:BUS:USB:ADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. Valid characters + are 0, 1, and X for binary; A-F, 0-9 and X for hexadecimal; and for symbolic. + """ + return self._value + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusUsb(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:USB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:USB?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:USB?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa`` command tree. + - ``.endpoint``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE`` command. + - ``.handshaketype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType`` command. + - ``.sofframenumber``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber`` command. + - ``.specialtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType`` command. + - ``.split``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT`` command tree. + - ``.tokentype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusUsbAddress(device, f"{self._cmd_syntax}:ADDress") + self._condition = SearchSearchItemTriggerABusUsbCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusUsbData(device, f"{self._cmd_syntax}:DATa") + self._endpoint = SearchSearchItemTriggerABusUsbEndpoint( + device, f"{self._cmd_syntax}:ENDPoint" + ) + self._errtype = SearchSearchItemTriggerABusUsbErrtype(device, f"{self._cmd_syntax}:ERRTYPE") + self._handshaketype = SearchSearchItemTriggerABusUsbHandshaketype( + device, f"{self._cmd_syntax}:HANDSHAKEType" + ) + self._sofframenumber = SearchSearchItemTriggerABusUsbSofframenumber( + device, f"{self._cmd_syntax}:SOFFRAMENUMber" + ) + self._specialtype = SearchSearchItemTriggerABusUsbSpecialtype( + device, f"{self._cmd_syntax}:SPECIALType" + ) + self._split = SearchSearchItemTriggerABusUsbSplit(device, f"{self._cmd_syntax}:SPLIT") + self._tokentype = SearchSearchItemTriggerABusUsbTokentype( + device, f"{self._cmd_syntax}:TOKENType" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusUsbAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:HIVALue`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress:VALue`` command. + """ + return self._address + + @property + def condition(self) -> SearchSearchItemTriggerABusUsbCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition`` command. + + Description: + - This command sets or queries the search condition for a USB bus search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition?`` 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:BUS:USB:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition {DATAPacket|EOP|ERRor|HANDSHAKEPacket|RESET|RESUME|SPECIALPacket|SUSPEND|SYNC|TOKENPacket} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition? + ``` + + Info: + - ``DATAPacket`` specifies the search condition as Data Packet. + - ``EOP`` specifies the search condition as End of Packet. + - ``ERROR`` specifies the search condition as Error. + - ``HANDSHAKEPacket`` specifies the search condition as Handshake Packet. + - ``RESET`` specifies the search condition as Reset. + - ``RESUME`` specifies the search condition as Resume. + - ``SPECIALPacket`` specifies the search condition as Special Packet. + - ``SUSPEND`` specifies the search condition as Suspend. + - ``SYNC`` specifies the search condition as Sync. + - ``TOKENPacket`` specifies the search condition as Token (Address) Packet. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusUsbData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:QUALifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:SIZe`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:TYPe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa:VALue`` command. + """ + return self._data + + @property + def endpoint(self) -> SearchSearchItemTriggerABusUsbEndpoint: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint:VALue`` command. + """ + return self._endpoint + + @property + def errtype(self) -> SearchSearchItemTriggerABusUsbErrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE`` command. + + Description: + - This command sets or queries the error type for a USB bus search to determine where to + place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE?`` 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:BUS:USB:ERRTYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE {BITSTUFFing|CRC5|CRC16|PID} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE? + ``` + + Info: + - ``BITSTUFFing`` specifies the error type as Bit Stuffing. + - ``CRC5`` specifies the error type as Token CRC5 (Cyclic Redundancy Check 5). + - ``CRC16`` specifies the error type as Data CRC16 (Cyclic Redundancy Check 16). + - ``PID`` specifies the error type as PID Check Bits. + """ + return self._errtype + + @property + def handshaketype(self) -> SearchSearchItemTriggerABusUsbHandshaketype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType`` command. + + Description: + - This command sets or queries the handshake type for the specified USB bus trigger + search to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType?`` 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:BUS:USB:HANDSHAKEType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType {ACK|ANY|NAK|NYET|STALL} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType? + ``` + + Info: + - ``ACK`` specifies the handshake type as Acknowledgement (positive) (XX10). + - ``ANY`` specifies the handshake type as Any (0010). + - ``NAK`` specifies the handshake type as Negative Acknowledgment (1010). + - ``NYET`` specifies the handshake type as No response Yet (0110). + - ``STALL`` specifies the handshake type as Stall (endpoint is halted or control pipe + request not supported) (1110). + """ + return self._handshaketype + + @property + def sofframenumber(self) -> SearchSearchItemTriggerABusUsbSofframenumber: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber`` command. + + Description: + - This command sets or queries the frame number string to use for the Start of Frame for + the specified USB bus trigger search to determine where to place a mark. The search + number is specified by x. The search condition must be set to TOKEN. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber?`` 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:BUS:USB:SOFFRAMENUMber value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber? + ``` + + Info: + - ```` specifies the frame number string for the Start of Frame in a valid + format (binary, hexadecimal, or symbolic). + """ + return self._sofframenumber + + @property + def specialtype(self) -> SearchSearchItemTriggerABusUsbSpecialtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType`` command. + + Description: + - This command sets or queries the USB search type for the specified USB bus trigger + search to determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType?`` 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:BUS:USB:SPECIALType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType {ANY|ERROr|PING|PREamble|RESERVed|SPLit} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType? + ``` + + Info: + - ``ANY`` specifies the PID value as Any (XX00). + - ``ERROr`` specifies the PID value as ERR (1100). + - ``PING`` specifies the PID value as PING (0100). + - ``PREamble`` specifies the PID value as PRE (1100). + - ``RESERVed`` specifies the PID value as Reserved (0000). + - ``SPLit`` specifies the PID value as Split (1000). + """ # noqa: E501 + return self._specialtype + + @property + def split(self) -> SearchSearchItemTriggerABusUsbSplit: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.et``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:ET`` command tree. + - ``.hub``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:HUB`` command tree. + - ``.port``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:PORT`` command tree. + - ``.sc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SC`` command tree. + - ``.se``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT:SE`` command tree. + """ + return self._split + + @property + def tokentype(self) -> SearchSearchItemTriggerABusUsbTokentype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType`` command. + + Description: + - This command sets or queries the token type used to search a USB bus signal. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType?`` 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:BUS:USB:TOKENType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType {ANY|IN|OUT|SETUP|SOF} + - SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType? + ``` + + Info: + - ``ANY`` specifies the token type as Any (XX01). + - ``IN`` specifies the token type as IN (1001). + - ``OUT`` specifies the token type as OUT (0001). + - ``SETUP`` specifies the token type as SETUP (1101). + - ``SOF`` specifies the token type as Start Of Frame (0101). + """ + return self._tokentype + + +class SearchSearchItemTriggerABusSvidSlaveAddress(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS`` command. + + Description: + - This command sets or queries the slave address to be used when search is on SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS?`` 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:BUS:SVID:SLAVE:ADDRESS value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the data value in the specified valid format. The valid characters + are 0, 1, and X for binary; for hexadecimal; and symbolic). the default address is XXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusSvidSlave(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusSvidSlaveAddress( + device, f"{self._cmd_syntax}:ADDRESS" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusSvidSlaveAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS`` command. + + Description: + - This command sets or queries the slave address to be used when search is on SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS?`` 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:BUS:SVID:SLAVE:ADDRESS value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the data value in the specified valid format. The valid + characters are 0, 1, and X for binary; for hexadecimal; and symbolic). the default + address is XXXX. + """ + return self._address + + +class SearchSearchItemTriggerABusSvidPayloadValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue`` command. + + Description: + - This command sets or queries the payload value to be used when search is on SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue?`` 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:BUS:SVID:PAYLoad:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the data value in the specified valid format. The valid characters + are 0, 1, and X for binary; for hexadecimal; and symbolic). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusSvidPayloadType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe`` command. + + Description: + - This command sets or queries the payload type for SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe?`` 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:BUS:SVID:PAYLoad:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe {MASTer|SLAVe|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``MASTer`` specifies the search condition as MASTer. This is the default payload type + condition. + - ``SLAVe`` specifies the search condition as SLAVe. + - ``EITHer`` specifies the search condition as EITHer. + """ + + +class SearchSearchItemTriggerABusSvidPayload(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusSvidPayloadType(device, f"{self._cmd_syntax}:TYPe") + self._value = SearchSearchItemTriggerABusSvidPayloadValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def type(self) -> SearchSearchItemTriggerABusSvidPayloadType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe`` command. + + Description: + - This command sets or queries the payload type for SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe?`` 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:BUS:SVID:PAYLoad:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe {MASTer|SLAVe|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``MASTer`` specifies the search condition as MASTer. This is the default payload type + condition. + - ``SLAVe`` specifies the search condition as SLAVe. + - ``EITHer`` specifies the search condition as EITHer. + """ + return self._type + + @property + def value(self) -> SearchSearchItemTriggerABusSvidPayloadValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue`` command. + + Description: + - This command sets or queries the payload value to be used when search is on SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue?`` 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:BUS:SVID:PAYLoad:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the data value in the specified valid format. The valid + characters are 0, 1, and X for binary; for hexadecimal; and symbolic). + """ + return self._value + + +class SearchSearchItemTriggerABusSvidErrorType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error type for SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe?`` 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:BUS:SVID:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe {ANY|NACK|REJect|MIXed|PARity} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``ANY`` specifies the search condition as ANY. This is the default error type condition. + - ``NACK`` specifies the search condition as NACK. + - ``REJect`` specifies the search condition as REJect. + - ``MIXed`` specifies the search condition as MIXed. + - ``PARity`` specifies the search condition as PARity. + """ + + +class SearchSearchItemTriggerABusSvidError(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusSvidErrorType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusSvidErrorType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error type for SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe?`` 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:BUS:SVID:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe {ANY|NACK|REJect|MIXed|PARity} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``ANY`` specifies the search condition as ANY. This is the default error type + condition. + - ``NACK`` specifies the search condition as NACK. + - ``REJect`` specifies the search condition as REJect. + - ``MIXed`` specifies the search condition as MIXed. + - ``PARity`` specifies the search condition as PARity. + """ + return self._type + + +class SearchSearchItemTriggerABusSvidCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition?`` 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:BUS:SVID:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition {STARTCONDition|SLAVEADDRess|COMMand|PAYLoad|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``STARTCONDition`` specifies the search condition as STARTCONDition. This is the default + trigger on condition. + - ``SLAVEADDRess`` specifies the search condition as SLAVEADDRess. + - ``COMMand`` specifies the search condition as COMMand. + - ``PAYLoad`` specifies the search condition as PAYLoad. + - ``ERRors`` specifies the search condition as ERRors. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSvidCommandType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe`` command. + + Description: + - This command sets or queries the command type for SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe?`` 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:BUS:SVID:COMMand:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe {GET|SET|OPTional} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``GET`` specifies the search condition as GET. This is the default command type condition. + - ``SET`` specifies the search condition as SET. + - ``OPTional`` specifies the search condition as OPTional. + """ + + +class SearchSearchItemTriggerABusSvidCommandResponse(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse`` command. + + Description: + - This command sets or queries the command response of the respective command type for SVID + bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse?`` 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:BUS:SVID:COMMand:RESPonse value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse {GETReg|GETRegvendor|GETRegtestcfg|SETFast|SETSlow|SETDecay|SETPs|SETRegaddr|SETRegdata|REGAddrvendor|REGDatavendor|REGAddrtestconfg|REGDatatestconfg|TESTmode|SETWp|GETRegpktrecent|GETRegpktalert|GETRegpktbad|GETRegvrevent} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``GETReg`` specifies the search condition as GETReg. This is the default command response + condition. + - ``GETRegvendor`` specifies the search condition as GETRegvendor. + - ``GETRegtestcfg`` specifies the search condition as GETRegtestcfg. + - ``SETFast`` specifies the search condition as SETFast. + - ``SETSlow`` specifies the search condition as SETSlow. + - ``SETDecay`` specifies the search condition as SETDecay. + - ``SETPs`` specifies the search condition as SETPs. + - ``SETRegaddr`` specifies the search condition as SETRegaddr. + - ``SETRegdata`` specifies the search condition as SETRegdata. + - ``REGAddrvendor`` specifies the search condition as REGAddrvendor. + - ``REGDatavendor`` specifies the search condition as REGDatavendor. + - ``REGAddrtestconfg`` specifies the search condition as REGAddrtestconfg. + - ``REGDatatestconfg`` specifies the search condition as REGDatatestconfg. + - ``TESTmode`` specifies the search condition as TESTmode. + - ``SETWp`` specifies the search condition as SETWp. + - ``GETRegpktrecent`` specifies the search condition as GETRegpktrecent. + - ``GETRegpktalert`` specifies the search condition as GETRegpktalert. + - ``GETRegpktbad`` specifies the search condition as GETRegpktbad. + - ``GETRegvrevent`` specifies the search condition as GETRegvrevent. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSvidCommand(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.response``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._response = SearchSearchItemTriggerABusSvidCommandResponse( + device, f"{self._cmd_syntax}:RESPonse" + ) + self._type = SearchSearchItemTriggerABusSvidCommandType(device, f"{self._cmd_syntax}:TYPe") + + @property + def response(self) -> SearchSearchItemTriggerABusSvidCommandResponse: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse`` command. + + Description: + - This command sets or queries the command response of the respective command type for + SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse?`` 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:BUS:SVID:COMMand:RESPonse value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse {GETReg|GETRegvendor|GETRegtestcfg|SETFast|SETSlow|SETDecay|SETPs|SETRegaddr|SETRegdata|REGAddrvendor|REGDatavendor|REGAddrtestconfg|REGDatatestconfg|TESTmode|SETWp|GETRegpktrecent|GETRegpktalert|GETRegpktbad|GETRegvrevent} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``GETReg`` specifies the search condition as GETReg. This is the default command + response condition. + - ``GETRegvendor`` specifies the search condition as GETRegvendor. + - ``GETRegtestcfg`` specifies the search condition as GETRegtestcfg. + - ``SETFast`` specifies the search condition as SETFast. + - ``SETSlow`` specifies the search condition as SETSlow. + - ``SETDecay`` specifies the search condition as SETDecay. + - ``SETPs`` specifies the search condition as SETPs. + - ``SETRegaddr`` specifies the search condition as SETRegaddr. + - ``SETRegdata`` specifies the search condition as SETRegdata. + - ``REGAddrvendor`` specifies the search condition as REGAddrvendor. + - ``REGDatavendor`` specifies the search condition as REGDatavendor. + - ``REGAddrtestconfg`` specifies the search condition as REGAddrtestconfg. + - ``REGDatatestconfg`` specifies the search condition as REGDatatestconfg. + - ``TESTmode`` specifies the search condition as TESTmode. + - ``SETWp`` specifies the search condition as SETWp. + - ``GETRegpktrecent`` specifies the search condition as GETRegpktrecent. + - ``GETRegpktalert`` specifies the search condition as GETRegpktalert. + - ``GETRegpktbad`` specifies the search condition as GETRegpktbad. + - ``GETRegvrevent`` specifies the search condition as GETRegvrevent. + """ # noqa: E501 + return self._response + + @property + def type(self) -> SearchSearchItemTriggerABusSvidCommandType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe`` command. + + Description: + - This command sets or queries the command type for SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe?`` 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:BUS:SVID:COMMand:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe {GET|SET|OPTional} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``GET`` specifies the search condition as GET. This is the default command type + condition. + - ``SET`` specifies the search condition as SET. + - ``OPTional`` specifies the search condition as OPTional. + """ + return self._type + + +class SearchSearchItemTriggerABusSvid(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition`` command. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor`` command tree. + - ``.payload``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad`` command tree. + - ``.slave``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._command = SearchSearchItemTriggerABusSvidCommand( + device, f"{self._cmd_syntax}:COMMand" + ) + self._condition = SearchSearchItemTriggerABusSvidCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._error = SearchSearchItemTriggerABusSvidError(device, f"{self._cmd_syntax}:ERRor") + self._payload = SearchSearchItemTriggerABusSvidPayload( + device, f"{self._cmd_syntax}:PAYLoad" + ) + self._slave = SearchSearchItemTriggerABusSvidSlave(device, f"{self._cmd_syntax}:SLAVE") + + @property + def command(self) -> SearchSearchItemTriggerABusSvidCommand: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.response``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:RESPonse`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand:TYPe`` command. + """ + return self._command + + @property + def condition(self) -> SearchSearchItemTriggerABusSvidCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for SVID bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition?`` 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:BUS:SVID:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition {STARTCONDition|SLAVEADDRess|COMMand|PAYLoad|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``STARTCONDition`` specifies the search condition as STARTCONDition. This is the + default trigger on condition. + - ``SLAVEADDRess`` specifies the search condition as SLAVEADDRess. + - ``COMMand`` specifies the search condition as COMMand. + - ``PAYLoad`` specifies the search condition as PAYLoad. + - ``ERRors`` specifies the search condition as ERRors. + """ # noqa: E501 + return self._condition + + @property + def error(self) -> SearchSearchItemTriggerABusSvidError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor:TYPe`` command. + """ + return self._error + + @property + def payload(self) -> SearchSearchItemTriggerABusSvidPayload: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:TYPe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad:VALue`` command. + """ + return self._payload + + @property + def slave(self) -> SearchSearchItemTriggerABusSvidSlave: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE:ADDRESS`` command. + """ + return self._slave + + +class SearchSearchItemTriggerABusSpmiSlaveaddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue`` command. + + Description: + - This command sets or queries the binary data string that identifies the slave address used + in SPMI when the search condition is RESet, SLEep, SHUTdown, WAKeup, AUTHenticate, + REGREAd, REGWRIte, EXTREGREAd, EXTREGWRIte, LONGEXTREGREAd, LONGEXTREGWRIte, + DEVICEDESCSLAVEREAd, or REG0WRIte. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue?`` 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:BUS:SPMI:SLAVEADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is the binary data string that identifies the slave address for which to + search. + """ + + +class SearchSearchItemTriggerABusSpmiSlaveaddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSpmiSlaveaddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSpmiSlaveaddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue`` command. + + Description: + - This command sets or queries the binary data string that identifies the slave address + used in SPMI when the search condition is RESet, SLEep, SHUTdown, WAKeup, + AUTHenticate, REGREAd, REGWRIte, EXTREGREAd, EXTREGWRIte, LONGEXTREGREAd, + LONGEXTREGWRIte, DEVICEDESCSLAVEREAd, or REG0WRIte. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue?`` 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:BUS:SPMI:SLAVEADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is the binary data string that identifies the slave address for which to + search. + """ + return self._value + + +class SearchSearchItemTriggerABusSpmiRegisteraddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue`` command. + + Description: + - This command sets or queries the binary data string that identifies the register address + used in SPMI triggering if the trigger condition is MASTERREAd, MASTERWRIte, REGREAd, + REGWRIte, EXTREGREAd, EXTREGWRIte, LONGEXTREGREAd, or LONGEXTREGWRIte. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue?`` 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:BUS:SPMI:REGISTERADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is the binary data string that identifies the register address for which to + search. + """ + + +class SearchSearchItemTriggerABusSpmiRegisteraddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSpmiRegisteraddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSpmiRegisteraddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue`` command. + + Description: + - This command sets or queries the binary data string that identifies the register + address used in SPMI triggering if the trigger condition is MASTERREAd, MASTERWRIte, + REGREAd, REGWRIte, EXTREGREAd, EXTREGWRIte, LONGEXTREGREAd, or LONGEXTREGWRIte. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue?`` 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:BUS:SPMI:REGISTERADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is the binary data string that identifies the register address for which + to search. + """ + return self._value + + +class SearchSearchItemTriggerABusSpmiNoresponse(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse`` command. + + Description: + - This command sets or queries whether or not to search for No Response frames. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse?`` 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:BUS:SPMI:NORESPonse value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is either 'TRUE' or 'FALSE' boolean value for searching on SPMI No Response + frames. + """ + + +class SearchSearchItemTriggerABusSpmiMasteraddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue`` command. + + Description: + - This command sets or queries the binary data string that identifies the master address + used in SPMI when the search condition is MASTERREAd, MASTERWRIte, or + DEVICEDESCMASTERREAd. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue?`` 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:BUS:SPMI:MASTERADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is the binary data string that identifies the master address for which to + search. + """ + + +class SearchSearchItemTriggerABusSpmiMasteraddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSpmiMasteraddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSpmiMasteraddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue`` command. + + Description: + - This command sets or queries the binary data string that identifies the master address + used in SPMI when the search condition is MASTERREAd, MASTERWRIte, or + DEVICEDESCMASTERREAd. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue?`` 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:BUS:SPMI:MASTERADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is the binary data string that identifies the master address for which + to search. + """ + return self._value + + +class SearchSearchItemTriggerABusSpmiDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for SPMI when the search condition is + MASTERREAd, MASTERWRIte, REGREAd, REGWRIte, EXTREGREAd, EXTREGWRIte, LONGEXTREGREAd, + LONGEXTREGWRIte, or REG0WRIte. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue?`` 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:BUS:SPMI:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is the binary data string that identifies the data value for which to + search. + """ + + +class SearchSearchItemTriggerABusSpmiDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to be used when + searching on an SPMI bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe?`` 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:BUS:SPMI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` is the size of the data string in bytes. + """ + + +class SearchSearchItemTriggerABusSpmiData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusSpmiDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusSpmiDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusSpmiDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to be used when + searching on an SPMI bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe?`` 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:BUS:SPMI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` is the size of the data string in bytes. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusSpmiDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for SPMI when the search condition + is MASTERREAd, MASTERWRIte, REGREAd, REGWRIte, EXTREGREAd, EXTREGWRIte, + LONGEXTREGREAd, LONGEXTREGWRIte, or REG0WRIte. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue?`` 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:BUS:SPMI:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is the binary data string that identifies the data value for which to + search. + """ + return self._value + + +class SearchSearchItemTriggerABusSpmiCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition`` command. + + Description: + - This command sets or queries the search condition for an SPMI bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition?`` 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:BUS:SPMI:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition {SSC|RESet|SLEep|SHUTdown|WAKeup|MASTERREAd|MASTERWRIte|REGREAd|REGWRIte|DEVICEDESCMASTERREAd|DEVICEDESCSLAVEREAd|EXTREGREAd|EXTREGWRIte|LONGEXTREGREAd|LONGEXTREGWRIte|REG0WRIte|AUTHenticate|TRANSferbusownership|PARItyerror} + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``SSC`` specifies searching for the Sequence Start Condition. + - ``RESet`` specifies searching for the Reset command sequence. + - ``SLEep`` specifies searching for the Sleep command sequnce. + - ``SHUTdown`` specifies searching for the Shutdown command sequence. + - ``WAKeup`` specifies searching for the Wakeup command sequence. + - ``MASTERREAd`` specifies searching for the Master Read command sequence. + - ``MASTERWRIte`` specifies searching for the Master Write command sequence. + - ``REGREAd`` specifies searching for the Register Read command sequence. + - ``REGWRIte`` specifies searching for the Register Write command sequence. + - ``DEVICEDESCMASTERREAd`` specifies searching for the Device Descriptor Block Master Read + command sequence. + - ``DEVICEDESCSLAVEREAd`` specifies searching for the Device Descriptor Block Slave Read + command sequence. + - ``EXTREGREAd`` specifies triggering on the Extended Register Read command sequence. + - ``EXTREGWRIte`` specifies searching for the Extended Register Write command sequence. + - ``LONGEXTREGREAd`` specifies searching for the Extended Register Read Long command + sequence. + - ``LONGEXTREGWRIte`` specifies searching for the Extended Register Write Long command + sequence. + - ``REG0WRIte`` specifies searching for the Register 0 Write command sequence. + - ``AUTHenticate`` specifies searching for the Authentication command sequence. + - ``TRANSferbusownership`` specifies searching for the Transfer Bus Ownership (TBO) command + sequence. + - ``PARItyerror`` specifies searching for the parity errors. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSpmi(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa`` command tree. + - ``.masteraddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess`` command + tree. + - ``.noresponse``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse`` command. + - ``.registeraddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess`` command + tree. + - ``.slaveaddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusSpmiCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusSpmiData(device, f"{self._cmd_syntax}:DATa") + self._masteraddress = SearchSearchItemTriggerABusSpmiMasteraddress( + device, f"{self._cmd_syntax}:MASTERADDRess" + ) + self._noresponse = SearchSearchItemTriggerABusSpmiNoresponse( + device, f"{self._cmd_syntax}:NORESPonse" + ) + self._registeraddress = SearchSearchItemTriggerABusSpmiRegisteraddress( + device, f"{self._cmd_syntax}:REGISTERADDRess" + ) + self._slaveaddress = SearchSearchItemTriggerABusSpmiSlaveaddress( + device, f"{self._cmd_syntax}:SLAVEADDRess" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusSpmiCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition`` command. + + Description: + - This command sets or queries the search condition for an SPMI bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition?`` 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:BUS:SPMI:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition {SSC|RESet|SLEep|SHUTdown|WAKeup|MASTERREAd|MASTERWRIte|REGREAd|REGWRIte|DEVICEDESCMASTERREAd|DEVICEDESCSLAVEREAd|EXTREGREAd|EXTREGWRIte|LONGEXTREGREAd|LONGEXTREGWRIte|REG0WRIte|AUTHenticate|TRANSferbusownership|PARItyerror} + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition? + ``` + + Info: + - ``Search`` is the search identifier number. + - ``SSC`` specifies searching for the Sequence Start Condition. + - ``RESet`` specifies searching for the Reset command sequence. + - ``SLEep`` specifies searching for the Sleep command sequnce. + - ``SHUTdown`` specifies searching for the Shutdown command sequence. + - ``WAKeup`` specifies searching for the Wakeup command sequence. + - ``MASTERREAd`` specifies searching for the Master Read command sequence. + - ``MASTERWRIte`` specifies searching for the Master Write command sequence. + - ``REGREAd`` specifies searching for the Register Read command sequence. + - ``REGWRIte`` specifies searching for the Register Write command sequence. + - ``DEVICEDESCMASTERREAd`` specifies searching for the Device Descriptor Block Master + Read command sequence. + - ``DEVICEDESCSLAVEREAd`` specifies searching for the Device Descriptor Block Slave Read + command sequence. + - ``EXTREGREAd`` specifies triggering on the Extended Register Read command sequence. + - ``EXTREGWRIte`` specifies searching for the Extended Register Write command sequence. + - ``LONGEXTREGREAd`` specifies searching for the Extended Register Read Long command + sequence. + - ``LONGEXTREGWRIte`` specifies searching for the Extended Register Write Long command + sequence. + - ``REG0WRIte`` specifies searching for the Register 0 Write command sequence. + - ``AUTHenticate`` specifies searching for the Authentication command sequence. + - ``TRANSferbusownership`` specifies searching for the Transfer Bus Ownership (TBO) + command sequence. + - ``PARItyerror`` specifies searching for the parity errors. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusSpmiData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa:VALue`` command. + """ + return self._data + + @property + def masteraddress(self) -> SearchSearchItemTriggerABusSpmiMasteraddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess:VALue`` command. + """ + return self._masteraddress + + @property + def noresponse(self) -> SearchSearchItemTriggerABusSpmiNoresponse: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse`` command. + + Description: + - This command sets or queries whether or not to search for No Response frames. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse?`` 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:BUS:SPMI:NORESPonse value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse + - SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` is either 'TRUE' or 'FALSE' boolean value for searching on SPMI No + Response frames. + """ + return self._noresponse + + @property + def registeraddress(self) -> SearchSearchItemTriggerABusSpmiRegisteraddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess:VALue`` command. + """ + return self._registeraddress + + @property + def slaveaddress(self) -> SearchSearchItemTriggerABusSpmiSlaveaddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess:VALue`` command. + """ + return self._slaveaddress + + +class SearchSearchItemTriggerABusSpiSourcetype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe`` command. + + Description: + - This command sets or queries trigger Source for SPI bus. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe?`` 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:BUS:SPI:SOURCETYpe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe {MISo|MOSi} + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe? + ``` + + Info: + - ``MISo`` specifies the trigger source as MISo. The default search source type is MISo. + - ``MOSi`` specifies the trigger source as MOSi. + """ + + +class SearchSearchItemTriggerABusSpiDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue`` command. + + Description: + - The command sets or queries the binary data string used for an SPI bus search to determine + where to place a mark. The search number is specified by x. The search condition must be + DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue?`` 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:BUS:SPI:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. The valid characters + are 0, 1, and X for binary format; and A-F, 0-9, and X for hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusSpiDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string in bytes used for the specified + SPI bus trigger search to determine where to place a mark. The search condition must be + DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe?`` 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:BUS:SPI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe? + ``` + + Info: + - ```` specifies the number of contiguous data bytes. + """ + + +class SearchSearchItemTriggerABusSpiData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusSpiDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusSpiDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusSpiDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string in bytes used for the + specified SPI bus trigger search to determine where to place a mark. The search + condition must be DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe?`` 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:BUS:SPI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe? + ``` + + Info: + - ```` specifies the number of contiguous data bytes. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusSpiDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue`` command. + + Description: + - The command sets or queries the binary data string used for an SPI bus search to + determine where to place a mark. The search number is specified by x. The search + condition must be DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue?`` 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:BUS:SPI:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. The valid + characters are 0, 1, and X for binary format; and A-F, 0-9, and X for hexadecimal + format. + """ + return self._value + + +class SearchSearchItemTriggerABusSpiCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition`` command. + + Description: + - This command sets or queries the search condition for an SPI bus search to determine where + to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition?`` 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:BUS:SPI:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition {DATA|SS|STARTofframe} + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition? + ``` + + Info: + - ``DATA`` specifies the trigger condition as Data. + - ``SS`` specifies the trigger condition as Slave Selection. + - ``STARTofframe`` specifies the trigger condition as start of frame. + """ + + +class SearchSearchItemTriggerABusSpi(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa`` command tree. + - ``.sourcetype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusSpiCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusSpiData(device, f"{self._cmd_syntax}:DATa") + self._sourcetype = SearchSearchItemTriggerABusSpiSourcetype( + device, f"{self._cmd_syntax}:SOURCETYpe" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusSpiCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition`` command. + + Description: + - This command sets or queries the search condition for an SPI bus search to determine + where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition?`` 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:BUS:SPI:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition {DATA|SS|STARTofframe} + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition? + ``` + + Info: + - ``DATA`` specifies the trigger condition as Data. + - ``SS`` specifies the trigger condition as Slave Selection. + - ``STARTofframe`` specifies the trigger condition as start of frame. + """ + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusSpiData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa:VALue`` command. + """ + return self._data + + @property + def sourcetype(self) -> SearchSearchItemTriggerABusSpiSourcetype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe`` command. + + Description: + - This command sets or queries trigger Source for SPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe?`` 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:BUS:SPI:SOURCETYpe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe {MISo|MOSi} + - SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe? + ``` + + Info: + - ``MISo`` specifies the trigger source as MISo. The default search source type is MISo. + - ``MOSi`` specifies the trigger source as MOSi. + """ + return self._sourcetype + + +class SearchSearchItemTriggerABusSpacewireTimecodeValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue`` command. + + Description: + - This command sets or queries the binary data string used for SpaceWire search if the + search condition is Time Code. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue?`` 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:BUS:SPACEWIRe:TIMECode:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue? + ``` + + Info: + - ``Search`` is the search number. + - ``QString`` sets the binary data value to be used when searching on an SpaceWire bus + signal. + """ + + +class SearchSearchItemTriggerABusSpacewireTimecode(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSpacewireTimecodeValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSpacewireTimecodeValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue`` command. + + Description: + - This command sets or queries the binary data string used for SpaceWire search if the + search condition is Time Code. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue?`` 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:BUS:SPACEWIRe:TIMECode:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue? + ``` + + Info: + - ``Search`` is the search number. + - ``QString`` sets the binary data value to be used when searching on an SpaceWire bus + signal. + """ + return self._value + + +class SearchSearchItemTriggerABusSpacewireErrortype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe`` command. + + Description: + - This command sets or queries the error type for which to search on the SpaceWire bus + signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe?`` 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:BUS:SPACEWIRe:ERRORTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe {EEP|ESC|PARity} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe? + ``` + + Info: + - ``Search`` is the search number. + - ``EEP`` sets the error search type to Error end of packet. + - ``ESC`` sets the error search type to Escape error. + - ``PARity`` sets the error search type to Parity error. + """ + + +class SearchSearchItemTriggerABusSpacewireDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on an + SpaceWire bus signal. The search condition must be set to Data (see Related Commands ). + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue?`` 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:BUS:SPACEWIRe:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue? + ``` + + Info: + - ``Search`` is the search number. + - ``QString`` specifies the binary data value to search for on a SpaceWire bus signal. + """ + + +class SearchSearchItemTriggerABusSpacewireDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to use when + searching on a SpaceWire bus signal. The search condition needs to be set to Data (see + Related Commands ). + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe?`` 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:BUS:SPACEWIRe:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe? + ``` + + Info: + - ``Search`` is the search number. + - ``NR1`` is an integer value that specifies the number of contiguous data bytes to use when + searching on the SpaceWire data field. The valid range is 1 to 10. + """ + + +class SearchSearchItemTriggerABusSpacewireData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusSpacewireDataSize( + device, f"{self._cmd_syntax}:SIZe" + ) + self._value = SearchSearchItemTriggerABusSpacewireDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusSpacewireDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to use when + searching on a SpaceWire bus signal. The search condition needs to be set to Data (see + Related Commands ). + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe?`` 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:BUS:SPACEWIRe:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe? + ``` + + Info: + - ``Search`` is the search number. + - ``NR1`` is an integer value that specifies the number of contiguous data bytes to use + when searching on the SpaceWire data field. The valid range is 1 to 10. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusSpacewireDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on an + SpaceWire bus signal. The search condition must be set to Data (see Related Commands + ). + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue?`` 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:BUS:SPACEWIRe:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue? + ``` + + Info: + - ``Search`` is the search number. + - ``QString`` specifies the binary data value to search for on a SpaceWire bus signal. + """ + return self._value + + +class SearchSearchItemTriggerABusSpacewireControlcodetype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe`` command. + + Description: + - This command sets or queries the control code type to use when searching on a SpaceWire + bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe?`` 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:BUS:SPACEWIRe:CONTROLCODETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe {NULL|TIMECODe} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe? + ``` + + Info: + - ``Search`` is the search number. + - ``NULL`` sets the control code type to Null code. + - ``TIMECODe`` sets the control code type to Time code (only varying part of Time code [6 + bits] is considered for search). + """ + + +class SearchSearchItemTriggerABusSpacewireControlchartype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe`` command. + + Description: + - This command sets or queries the control character type to use when searching on a + SpaceWire bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe?`` 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:BUS:SPACEWIRe:CONTROLCHARTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe {FCT|ESC|ENDOFPACKet} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe? + ``` + + Info: + - ``Search`` is the search number. + - ``FCT`` sets the control character type to Flow Control Token. + - ``ESC`` sets the control character type to Escape. + - ``ENDOFPACKet`` sets the control character type to End of Packet. + """ + + +class SearchSearchItemTriggerABusSpacewireCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition`` command. + + Description: + - This command sets or queries the field or condition for which to search on a SpaceWire + bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition?`` 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:BUS:SPACEWIRe:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition {SYNC|DATa|ERRors|CONTROLCODe|CONTROLCHAR} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition? + ``` + + Info: + - ``Search`` is the search number. + - ``SYNC`` sets the search condition to Synchronization. + - ``DATa`` sets the search condition to Data Characters. + - ``ERRors`` sets the search condition to SpaceWire Bus Decode Errors. + - ``CONTROLCODe`` sets the search condition to control code. + - ``CONTROLCHAR`` sets the search condition to control character. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSpacewire(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition`` command. + - ``.controlchartype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe`` + command. + - ``.controlcodetype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe`` + command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa`` command tree. + - ``.errortype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe`` command. + - ``.timecode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusSpacewireCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._controlchartype = SearchSearchItemTriggerABusSpacewireControlchartype( + device, f"{self._cmd_syntax}:CONTROLCHARTYPe" + ) + self._controlcodetype = SearchSearchItemTriggerABusSpacewireControlcodetype( + device, f"{self._cmd_syntax}:CONTROLCODETYPe" + ) + self._data = SearchSearchItemTriggerABusSpacewireData(device, f"{self._cmd_syntax}:DATa") + self._errortype = SearchSearchItemTriggerABusSpacewireErrortype( + device, f"{self._cmd_syntax}:ERRORTYPe" + ) + self._timecode = SearchSearchItemTriggerABusSpacewireTimecode( + device, f"{self._cmd_syntax}:TIMECode" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusSpacewireCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition`` command. + + Description: + - This command sets or queries the field or condition for which to search on a SpaceWire + bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition?`` 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:BUS:SPACEWIRe:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition {SYNC|DATa|ERRors|CONTROLCODe|CONTROLCHAR} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition? + ``` + + Info: + - ``Search`` is the search number. + - ``SYNC`` sets the search condition to Synchronization. + - ``DATa`` sets the search condition to Data Characters. + - ``ERRors`` sets the search condition to SpaceWire Bus Decode Errors. + - ``CONTROLCODe`` sets the search condition to control code. + - ``CONTROLCHAR`` sets the search condition to control character. + """ # noqa: E501 + return self._condition + + @property + def controlchartype(self) -> SearchSearchItemTriggerABusSpacewireControlchartype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe`` command. + + Description: + - This command sets or queries the control character type to use when searching on a + SpaceWire bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe?`` 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:BUS:SPACEWIRe:CONTROLCHARTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe {FCT|ESC|ENDOFPACKet} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe? + ``` + + Info: + - ``Search`` is the search number. + - ``FCT`` sets the control character type to Flow Control Token. + - ``ESC`` sets the control character type to Escape. + - ``ENDOFPACKet`` sets the control character type to End of Packet. + """ + return self._controlchartype + + @property + def controlcodetype(self) -> SearchSearchItemTriggerABusSpacewireControlcodetype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe`` command. + + Description: + - This command sets or queries the control code type to use when searching on a + SpaceWire bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe?`` 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:BUS:SPACEWIRe:CONTROLCODETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe {NULL|TIMECODe} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe? + ``` + + Info: + - ``Search`` is the search number. + - ``NULL`` sets the control code type to Null code. + - ``TIMECODe`` sets the control code type to Time code (only varying part of Time code + [6 bits] is considered for search). + """ + return self._controlcodetype + + @property + def data(self) -> SearchSearchItemTriggerABusSpacewireData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa:VALue`` command. + """ + return self._data + + @property + def errortype(self) -> SearchSearchItemTriggerABusSpacewireErrortype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe`` command. + + Description: + - This command sets or queries the error type for which to search on the SpaceWire bus + signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe?`` 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:BUS:SPACEWIRe:ERRORTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe {EEP|ESC|PARity} + - SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe? + ``` + + Info: + - ``Search`` is the search number. + - ``EEP`` sets the error search type to Error end of packet. + - ``ESC`` sets the error search type to Escape error. + - ``PARity`` sets the error search type to Parity error. + """ + return self._errortype + + @property + def timecode(self) -> SearchSearchItemTriggerABusSpacewireTimecode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode:VALue`` command. + """ + return self._timecode + + +class SearchSearchItemTriggerABusSource(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SOUrce`` command. + + Description: + - This command sets or queries the bus source for the bus search to determine where to place + a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS: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:BUS:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SOUrce {B0|B1|B2|B3|B4|B5|B6|B7|B8|B9|B10|B11|B12|B13|B14|B15|B16} + - SEARCH:SEARCH:TRIGger:A:BUS:SOUrce? + ``` + + Info: + - ``B`` specifies the bus source as a bus number from B01 to B16. x has a minimum of 0 + and a maximum of 16. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSmbusUdiddataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue`` command. + + Description: + - This command specifies the binary data string used for SMBUS triggering if the trigger + condition is UDID data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue?`` 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:BUS:SMBUS:UDIDDATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue {ONE|TWO|FOUR} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the UDID data value as the field within a SMBUS frame to search + on. The default value is XXXXXXXX. + """ + + +class SearchSearchItemTriggerABusSmbusUdiddata(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSmbusUdiddataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSmbusUdiddataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue`` command. + + Description: + - This command specifies the binary data string used for SMBUS triggering if the trigger + condition is UDID data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue?`` 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:BUS:SMBUS:UDIDDATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue {ONE|TWO|FOUR} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the UDID data value as the field within a SMBUS frame to + search on. The default value is XXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusSmbusFieldbyte(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe`` command. + + Description: + - This command sets or queries the field byte for a SMBUS bus if trigger condition is UDID + data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe?`` 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:BUS:SMBUS:FIELDBYTe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe {ONE|TWO|FOUR} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe? + ``` + + Info: + - ``Search`` is the search number. + - ``ONE`` sets the field byte size to 8 bits. This is the default value. + - ``TWO`` sets the field byte size to 16 bits. + - ``FOUR`` sets the field byte size to 32 bits. + """ + + +class SearchSearchItemTriggerABusSmbusErrorType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe`` command. + + Description: + - This command sets or queries the error type for a SMBus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe?`` 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:BUS:SMBUS:ERROr:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe {ANY|ACK|NACK|PEC} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe? + ``` + + Info: + - ``Search`` is the search number. + - ``ANY`` sets the error search type to ANY. This is the default value. + - ``ACK`` sets the error search type to ACK. + - ``NACK`` sets the error search type to NACK. + - ``PEC`` sets the error search type to PEC. + """ + + +class SearchSearchItemTriggerABusSmbusError(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusSmbusErrorType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusSmbusErrorType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe`` command. + + Description: + - This command sets or queries the error type for a SMBus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe?`` 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:BUS:SMBUS:ERROr:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe {ANY|ACK|NACK|PEC} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe? + ``` + + Info: + - ``Search`` is the search number. + - ``ANY`` sets the error search type to ANY. This is the default value. + - ``ACK`` sets the error search type to ACK. + - ``NACK`` sets the error search type to NACK. + - ``PEC`` sets the error search type to PEC. + """ + return self._type + + +class SearchSearchItemTriggerABusSmbusDeviceaddrValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue`` command. + + Description: + - This command specifies the binary physical address string is used for SMBUS triggering if + the trigger condition is device address. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue?`` 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:BUS:SMBUS:DEVICEADDR:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the device address value as the field within a SMBUS frame to + search on. The default value is XXXXXXX. + """ + + +class SearchSearchItemTriggerABusSmbusDeviceaddr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSmbusDeviceaddrValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSmbusDeviceaddrValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue`` command. + + Description: + - This command specifies the binary physical address string is used for SMBUS triggering + if the trigger condition is device address. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue?`` 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:BUS:SMBUS:DEVICEADDR:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the device address value as the field within a SMBUS frame to + search on. The default value is XXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusSmbusDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for SMBus triggering if the trigger + condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue?`` 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:BUS:SMBUS:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the data value as the field within a SMBUS frame to search on. The + default value is XXXXXXX. + """ + + +class SearchSearchItemTriggerABusSmbusDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for an SMBus + trigger if the trigger condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe?`` 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:BUS:SMBUS:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe? + ``` + + Info: + - ``Search`` is the search number. + - ``NR1`` sets the data size value. The valid range is 1 to 8. The default data size is 1. + """ + + +class SearchSearchItemTriggerABusSmbusData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusSmbusDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusSmbusDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusSmbusDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for an SMBus + trigger if the trigger condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe?`` 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:BUS:SMBUS:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe? + ``` + + Info: + - ``Search`` is the search number. + - ``NR1`` sets the data size value. The valid range is 1 to 8. The default data size is + 1. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusSmbusDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for SMBus triggering if the trigger + condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue?`` 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:BUS:SMBUS:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the data value as the field within a SMBUS frame to search on. + The default value is XXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusSmbusCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a SMBUS bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition?`` 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:BUS:SMBUS:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition {STARt|REPEATSTARt|ADDRess|HOSTADDR|DEVICEADDR|COMMand|DATa|UDIDDATa|ERRor|STOP|IDLe} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition? + ``` + + Info: + - ``Search`` is the search number. + - ``STARt`` sets the search condition to start. This is the default value. + - ``REPEATSTARt`` sets the search condition to repeat start. + - ``ADDRess`` sets the search condition to address. + - ``HOSTADDR`` sets the search condition to host address. + - ``DEVICEADDR`` sets the search condition to device address. + - ``COMMand`` sets the search condition to command. + - ``DATa`` sets the search condition to data. + - ``UDIDDATa`` sets the search condition to UDID data. + - ``ERRor`` sets the search condition to error. + - ``STOP`` sets the search condition to stop. + - ``IDLe`` sets the search condition to idle. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSmbusCommandValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue`` command. + + Description: + - This command specifies the binary command code string used for SMBUS triggering if the + trigger condition is command code. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue?`` 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:BUS:SMBUS:COMMand:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the command value as the field within a SMBUS frame to search on. + The default value is XXXXXXX. + """ + + +class SearchSearchItemTriggerABusSmbusCommand(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSmbusCommandValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSmbusCommandValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue`` command. + + Description: + - This command specifies the binary command code string used for SMBUS triggering if the + trigger condition is command code. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue?`` 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:BUS:SMBUS:COMMand:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the command value as the field within a SMBUS frame to search + on. The default value is XXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusSmbusAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue`` command. + + Description: + - This command specifies the binary physical address string used for SMBUS triggering if the + trigger condition is address. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue?`` 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:BUS:SMBUS:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the address value as the field within a SMBUS frame to search on. + The default value is XXXXXXX. + """ + + +class SearchSearchItemTriggerABusSmbusAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSmbusAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSmbusAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue`` command. + + Description: + - This command specifies the binary physical address string used for SMBUS triggering if + the trigger condition is address. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue?`` 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:BUS:SMBUS:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue? + ``` + + Info: + - ``Search`` is the search identifier number. + - ```` specifies the address value as the field within a SMBUS frame to search + on. The default value is XXXXXXX. + """ + return self._value + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusSmbus(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess`` command tree. + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa`` command tree. + - ``.deviceaddr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr`` command tree. + - ``.fieldbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe`` command. + - ``.udiddata``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusSmbusAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + self._command = SearchSearchItemTriggerABusSmbusCommand( + device, f"{self._cmd_syntax}:COMMand" + ) + self._condition = SearchSearchItemTriggerABusSmbusCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusSmbusData(device, f"{self._cmd_syntax}:DATa") + self._deviceaddr = SearchSearchItemTriggerABusSmbusDeviceaddr( + device, f"{self._cmd_syntax}:DEVICEADDR" + ) + self._error = SearchSearchItemTriggerABusSmbusError(device, f"{self._cmd_syntax}:ERROr") + self._fieldbyte = SearchSearchItemTriggerABusSmbusFieldbyte( + device, f"{self._cmd_syntax}:FIELDBYTe" + ) + self._udiddata = SearchSearchItemTriggerABusSmbusUdiddata( + device, f"{self._cmd_syntax}:UDIDDATa" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusSmbusAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess:VALue`` command. + """ + return self._address + + @property + def command(self) -> SearchSearchItemTriggerABusSmbusCommand: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand:VALue`` command. + """ + return self._command + + @property + def condition(self) -> SearchSearchItemTriggerABusSmbusCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a SMBUS bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition?`` 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:BUS:SMBUS:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition {STARt|REPEATSTARt|ADDRess|HOSTADDR|DEVICEADDR|COMMand|DATa|UDIDDATa|ERRor|STOP|IDLe} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition? + ``` + + Info: + - ``Search`` is the search number. + - ``STARt`` sets the search condition to start. This is the default value. + - ``REPEATSTARt`` sets the search condition to repeat start. + - ``ADDRess`` sets the search condition to address. + - ``HOSTADDR`` sets the search condition to host address. + - ``DEVICEADDR`` sets the search condition to device address. + - ``COMMand`` sets the search condition to command. + - ``DATa`` sets the search condition to data. + - ``UDIDDATa`` sets the search condition to UDID data. + - ``ERRor`` sets the search condition to error. + - ``STOP`` sets the search condition to stop. + - ``IDLe`` sets the search condition to idle. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusSmbusData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa:VALue`` command. + """ + return self._data + + @property + def deviceaddr(self) -> SearchSearchItemTriggerABusSmbusDeviceaddr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR:VALue`` command. + """ + return self._deviceaddr + + @property + def error(self) -> SearchSearchItemTriggerABusSmbusError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr:TYPe`` command. + """ + return self._error + + @property + def fieldbyte(self) -> SearchSearchItemTriggerABusSmbusFieldbyte: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe`` command. + + Description: + - This command sets or queries the field byte for a SMBUS bus if trigger condition is + UDID data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe?`` 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:BUS:SMBUS:FIELDBYTe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe {ONE|TWO|FOUR} + - SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe? + ``` + + Info: + - ``Search`` is the search number. + - ``ONE`` sets the field byte size to 8 bits. This is the default value. + - ``TWO`` sets the field byte size to 16 bits. + - ``FOUR`` sets the field byte size to 32 bits. + """ + return self._fieldbyte + + @property + def udiddata(self) -> SearchSearchItemTriggerABusSmbusUdiddata: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa:VALue`` command. + """ + return self._udiddata + + +class SearchSearchItemTriggerABusSentSlowIdentifierValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue`` command. + + Description: + - This command sets or queries the binary slow identifier value to be used when searching on + a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue?`` 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:BUS:SENT:SLOW:IDentifier:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the slow channel identifier binary value. + """ + + +class SearchSearchItemTriggerABusSentSlowIdentifier(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSentSlowIdentifierValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSentSlowIdentifierValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue`` command. + + Description: + - This command sets or queries the binary slow identifier value to be used when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue?`` 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:BUS:SENT:SLOW:IDentifier:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the slow channel identifier binary value. + """ + return self._value + + +class SearchSearchItemTriggerABusSentSlowDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue`` command. + + Description: + - This command sets or queries the binary slow channel data value to be used when searching + on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue?`` 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:BUS:SENT:SLOW:DATA:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the slow channel data binary value. + """ + + +class SearchSearchItemTriggerABusSentSlowDataQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT slow packet + bus data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier?`` 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:BUS:SENT:SLOW:DATA:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQualINrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``LESSEQual`` sets the qualifier as Less Than or Equal to. + - ``LESSThan`` sets the qualifier as Less Than. + - ``MOREEQual`` sets the qualifier as More Than or Equal to. + - ``MOREThan`` sets the qualifier as More Than. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``INrange`` sets the search qualifier to inside a range. + - ``OUTrange`` sets the search qualifier to outside a range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSentSlowDataHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue`` command. + + Description: + - This command sets or queries the high binary Slow channel data value to use when searching + on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue?`` 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:BUS:SENT:SLOW:DATA:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` sets the binary Slow channel data value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusSentSlowData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusSentSlowDataHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusSentSlowDataQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusSentSlowDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusSentSlowDataHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue`` command. + + Description: + - This command sets or queries the high binary Slow channel data value to use when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue?`` 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:BUS:SENT:SLOW:DATA:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` sets the binary Slow channel data value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusSentSlowDataQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT slow + packet bus data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier?`` 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:BUS:SENT:SLOW:DATA:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQualINrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``LESSEQual`` sets the qualifier as Less Than or Equal to. + - ``LESSThan`` sets the qualifier as Less Than. + - ``MOREEQual`` sets the qualifier as More Than or Equal to. + - ``MOREThan`` sets the qualifier as More Than. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``INrange`` sets the search qualifier to inside a range. + - ``OUTrange`` sets the search qualifier to outside a range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusSentSlowDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue`` command. + + Description: + - This command sets or queries the binary slow channel data value to be used when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue?`` 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:BUS:SENT:SLOW:DATA:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the slow channel data binary value. + """ + return self._value + + +class SearchSearchItemTriggerABusSentSlow(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA`` command tree. + - ``.identifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = SearchSearchItemTriggerABusSentSlowData(device, f"{self._cmd_syntax}:DATA") + self._identifier = SearchSearchItemTriggerABusSentSlowIdentifier( + device, f"{self._cmd_syntax}:IDentifier" + ) + + @property + def data(self) -> SearchSearchItemTriggerABusSentSlowData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA:VALue`` command. + """ + return self._data + + @property + def identifier(self) -> SearchSearchItemTriggerABusSentSlowIdentifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier:VALue`` command. + """ + return self._identifier + + +class SearchSearchItemTriggerABusSentPauseTicksValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue`` command. + + Description: + - This command sets or queries the minimum number of pause clock ticks to be used when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue?`` 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:BUS:SENT:PAUSE:TICKs:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the minimum number of pause clock ticks to be used when searching. + """ + + +class SearchSearchItemTriggerABusSentPauseTicksHivalue(SCPICmdWriteNoArguments, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue`` command. + + Description: + - This command sets or queries the maximum number of pause clock ticks to be used when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue?`` 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:SENT:PAUSE:TICKs:HIVALue`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the maximum number of pause clock ticks to be used when searching. + """ + + +class SearchSearchItemTriggerABusSentPauseTicks(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusSentPauseTicksHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._value = SearchSearchItemTriggerABusSentPauseTicksValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusSentPauseTicksHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue`` command. + + Description: + - This command sets or queries the maximum number of pause clock ticks to be used when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue?`` 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:SENT:PAUSE:TICKs:HIVALue`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the maximum number of pause clock ticks to be used when searching. + """ + return self._hivalue + + @property + def value(self) -> SearchSearchItemTriggerABusSentPauseTicksValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue`` command. + + Description: + - This command sets or queries the minimum number of pause clock ticks to be used when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue?`` 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:BUS:SENT:PAUSE:TICKs:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the minimum number of pause clock ticks to be used when searching. + """ + return self._value + + +class SearchSearchItemTriggerABusSentPauseQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT pause pulses. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier?`` 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:BUS:SENT:PAUSE:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``INrange`` sets the qualifier to be within a range. + - ``LESSEQual`` sets the qualifier as Less Than or Equal to. + - ``LESSThan`` sets the qualifier as Less Than. + - ``MOREEQual`` sets the qualifier as More Than or Equal to. + - ``MOREThan`` sets the qualifier as More Than. + - ``OUTrange`` sets the qualifier to be outside a range. + - ``UNEQual`` specifies the qualifier as Unequal. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSentPause(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier`` command. + - ``.ticks``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._qualifier = SearchSearchItemTriggerABusSentPauseQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._ticks = SearchSearchItemTriggerABusSentPauseTicks(device, f"{self._cmd_syntax}:TICKs") + + @property + def qualifier(self) -> SearchSearchItemTriggerABusSentPauseQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT pause + pulses. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier?`` 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:BUS:SENT:PAUSE:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``INrange`` sets the qualifier to be within a range. + - ``LESSEQual`` sets the qualifier as Less Than or Equal to. + - ``LESSThan`` sets the qualifier as Less Than. + - ``MOREEQual`` sets the qualifier as More Than or Equal to. + - ``MOREThan`` sets the qualifier as More Than. + - ``OUTrange`` sets the qualifier to be outside a range. + - ``UNEQual`` specifies the qualifier as Unequal. + """ # noqa: E501 + return self._qualifier + + @property + def ticks(self) -> SearchSearchItemTriggerABusSentPauseTicks: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:HIVALue`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs:VALue`` command. + """ + return self._ticks + + +class SearchSearchItemTriggerABusSentFastStatusValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue`` command. + + Description: + - This command sets or queries the binary status value to be used when searching on a SENT + bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue?`` 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:BUS:SENT:FAST:STATus:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the binary status binary value. + """ + + +class SearchSearchItemTriggerABusSentFastStatus(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSentFastStatusValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSentFastStatusValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue`` command. + + Description: + - This command sets or queries the binary status value to be used when searching on a + SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue?`` 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:BUS:SENT:FAST:STATus:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the binary status binary value. + """ + return self._value + + +class SearchSearchItemTriggerABusSentFastInvertnibbleValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue`` command. + + Description: + - This command sets or queries the binary fast message inverted nibble value to be used when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue?`` 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:BUS:SENT:FAST:INVERTNIBble:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the fast message inverted nibble binary value. + """ + + +class SearchSearchItemTriggerABusSentFastInvertnibble(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSentFastInvertnibbleValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSentFastInvertnibbleValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue`` command. + + Description: + - This command sets or queries the binary fast message inverted nibble value to be used + when searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue?`` 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:BUS:SENT:FAST:INVERTNIBble:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the fast message inverted nibble binary value. + """ + return self._value + + +class SearchSearchItemTriggerABusSentFastCounterValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue`` command. + + Description: + - This command sets or queries the binary fast message counter value to be used when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue?`` 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:BUS:SENT:FAST:COUNTer:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the Fast Channel 1 counter value. + """ + + +class SearchSearchItemTriggerABusSentFastCounterQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT fast packet + bus data for the secure format counter. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier?`` 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:BUS:SENT:FAST:COUNTer:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``LESSThan`` specifies the qualifier as Less Than. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``MOREThan`` specifies the qualifier as More Than. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``INrange`` sets the qualifier to inside a range. + - ``OUTrange`` sets the qualifier to outside a range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSentFastCounterHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue`` command. + + Description: + - This command sets or queries the high binary fast message counter value to use when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue?`` 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:BUS:SENT:FAST:COUNTer:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` sets the Fast Channel 1 counter binary value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusSentFastCounter(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusSentFastCounterHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusSentFastCounterQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusSentFastCounterValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusSentFastCounterHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue`` command. + + Description: + - This command sets or queries the high binary fast message counter value to use when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue?`` 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:BUS:SENT:FAST:COUNTer:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` sets the Fast Channel 1 counter binary value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusSentFastCounterQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT fast + packet bus data for the secure format counter. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier?`` 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:BUS:SENT:FAST:COUNTer:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``LESSThan`` specifies the qualifier as Less Than. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``MOREThan`` specifies the qualifier as More Than. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``INrange`` sets the qualifier to inside a range. + - ``OUTrange`` sets the qualifier to outside a range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusSentFastCounterValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue`` command. + + Description: + - This command sets or queries the binary fast message counter value to be used when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue?`` 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:BUS:SENT:FAST:COUNTer:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the Fast Channel 1 counter value. + """ + return self._value + + +class SearchSearchItemTriggerABusSentFastChan2bValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue`` command. + + Description: + - This command sets or queries the binary fast channel 2 value to be used when searching on + a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue?`` 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:BUS:SENT:FAST:CHAN2B:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the Fast Channel 2 binary value. + """ + + +class SearchSearchItemTriggerABusSentFastChan2bQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT fast packet + bus data for device channel 2. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier?`` 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:BUS:SENT:FAST:CHAN2B:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``LESSThan`` specifies the qualifier as Less Than. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``MOREThan`` specifies the qualifier as More Than. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``INrange`` sets the qualifier to inside a range. + - ``OUTrange`` sets the qualifier to outside a range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSentFastChan2bHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue`` command. + + Description: + - This command sets or queries the high binary fast channel 2 value to use when searching on + a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue?`` 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:BUS:SENT:FAST:CHAN2B:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` sets the Fast Channel 2 high binary data value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusSentFastChan2b(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusSentFastChan2bHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusSentFastChan2bQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusSentFastChan2bValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusSentFastChan2bHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue`` command. + + Description: + - This command sets or queries the high binary fast channel 2 value to use when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue?`` 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:BUS:SENT:FAST:CHAN2B:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` sets the Fast Channel 2 high binary data value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusSentFastChan2bQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT fast + packet bus data for device channel 2. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier?`` 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:BUS:SENT:FAST:CHAN2B:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``LESSThan`` specifies the qualifier as Less Than. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``MOREThan`` specifies the qualifier as More Than. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``INrange`` sets the qualifier to inside a range. + - ``OUTrange`` sets the qualifier to outside a range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusSentFastChan2bValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue`` command. + + Description: + - This command sets or queries the binary fast channel 2 value to be used when searching + on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue?`` 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:BUS:SENT:FAST:CHAN2B:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the Fast Channel 2 binary value. + """ + return self._value + + +class SearchSearchItemTriggerABusSentFastChan1aValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue`` command. + + Description: + - This command sets or queries the binary fast channel 1 value to be used when searching on + a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue?`` 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:BUS:SENT:FAST:CHAN1A:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the Fast Channel 1 binary value. + """ + + +class SearchSearchItemTriggerABusSentFastChan1aQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT fast packet + bus data for device channel 1. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier?`` 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:BUS:SENT:FAST:CHAN1A:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``LESSThan`` specifies the qualifier as Less Than. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``MOREThan`` specifies the qualifier as More Than. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``INrange`` sets the qualifier to inside a range. + - ``OUTrange`` sets the qualifier to outside a range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSentFastChan1aHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue`` command. + + Description: + - This command sets or queries the high binary fast channel 1 value to use when searching on + a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue?`` 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:BUS:SENT:FAST:CHAN1A:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` sets the Fast Channel 1 binary data high value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusSentFastChan1a(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusSentFastChan1aHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusSentFastChan1aQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusSentFastChan1aValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusSentFastChan1aHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue`` command. + + Description: + - This command sets or queries the high binary fast channel 1 value to use when + searching on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue?`` 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:BUS:SENT:FAST:CHAN1A:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` sets the Fast Channel 1 binary data high value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusSentFastChan1aQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on SENT fast + packet bus data for device channel 1. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier?`` 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:BUS:SENT:FAST:CHAN1A:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EQUal`` specifies the qualifier as Equal. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``LESSThan`` specifies the qualifier as Less Than. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``MOREThan`` specifies the qualifier as More Than. + - ``UNEQual`` specifies the qualifier as Unequal. + - ``INrange`` sets the qualifier to inside a range. + - ``OUTrange`` sets the qualifier to outside a range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusSentFastChan1aValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue`` command. + + Description: + - This command sets or queries the binary fast channel 1 value to be used when searching + on a SENT bus signal. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue?`` 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:BUS:SENT:FAST:CHAN1A:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` is the Fast Channel 1 binary value. + """ + return self._value + + +class SearchSearchItemTriggerABusSentFast(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.chan1a``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A`` command tree. + - ``.chan2b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B`` command tree. + - ``.counter``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer`` command tree. + - ``.invertnibble``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble`` command + tree. + - ``.status``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._chan1a = SearchSearchItemTriggerABusSentFastChan1a( + device, f"{self._cmd_syntax}:CHAN1A" + ) + self._chan2b = SearchSearchItemTriggerABusSentFastChan2b( + device, f"{self._cmd_syntax}:CHAN2B" + ) + self._counter = SearchSearchItemTriggerABusSentFastCounter( + device, f"{self._cmd_syntax}:COUNTer" + ) + self._invertnibble = SearchSearchItemTriggerABusSentFastInvertnibble( + device, f"{self._cmd_syntax}:INVERTNIBble" + ) + self._status = SearchSearchItemTriggerABusSentFastStatus( + device, f"{self._cmd_syntax}:STATus" + ) + + @property + def chan1a(self) -> SearchSearchItemTriggerABusSentFastChan1a: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A:VALue`` command. + """ + return self._chan1a + + @property + def chan2b(self) -> SearchSearchItemTriggerABusSentFastChan2b: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B:VALue`` command. + """ + return self._chan2b + + @property + def counter(self) -> SearchSearchItemTriggerABusSentFastCounter: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:HIVALue`` + command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer:VALue`` command. + """ + return self._counter + + @property + def invertnibble(self) -> SearchSearchItemTriggerABusSentFastInvertnibble: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble:VALue`` + command. + """ + return self._invertnibble + + @property + def status(self) -> SearchSearchItemTriggerABusSentFastStatus: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus:VALue`` command. + """ + return self._status + + +class SearchSearchItemTriggerABusSentErrtypeCrc(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC`` command. + + Description: + - This command sets or queries the CRC error type to be used when searching on SENT data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC?`` 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:BUS:SENT:ERRType:CRC value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC {FAST|SLOW} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC? + ``` + + Info: + - ``Search`` is the number of the search. + - ``FAST`` specifies searching for CRC errors only in the fast channel. + - ``SLOW`` specifies searching for CRC errors only in the slow channel. + """ + + +class SearchSearchItemTriggerABusSentErrtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType`` command. + + Description: + - This command sets or queries the error type to be used when searching on SENT data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType?`` 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:BUS:SENT:ERRType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType {FRAMELENgth|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType? + ``` + + Info: + - ``Search`` is the number of the search. + - ``FRAMELENgth`` specifies searching for SENT frame length errors. + - ``CRC`` specifies searching for CRC errors. + + Properties: + - ``.crc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._crc = SearchSearchItemTriggerABusSentErrtypeCrc(device, f"{self._cmd_syntax}:CRC") + + @property + def crc(self) -> SearchSearchItemTriggerABusSentErrtypeCrc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC`` command. + + Description: + - This command sets or queries the CRC error type to be used when searching on SENT + data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC?`` 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:BUS:SENT:ERRType:CRC value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC {FAST|SLOW} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC? + ``` + + Info: + - ``Search`` is the number of the search. + - ``FAST`` specifies searching for CRC errors only in the fast channel. + - ``SLOW`` specifies searching for CRC errors only in the slow channel. + """ + return self._crc + + +class SearchSearchItemTriggerABusSentCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition`` command. + + Description: + - This command sets or queries the search condition for a SENT bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition?`` 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:BUS:SENT:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition {START|FAST|SLOW|PAUSE|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``START`` specifies searching for start of packet. + - ``FAST`` specifies searching for fast channel data. + - ``SLOW`` specifies searching for slow channel data. + - ``PAUSE`` specifies searching for pause pulses. + - ``ERRor`` specifies searching on errors. + """ + + +class SearchSearchItemTriggerABusSent(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition`` command. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType`` command. + - ``.fast``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST`` command tree. + - ``.pause``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE`` command tree. + - ``.slow``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusSentCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._errtype = SearchSearchItemTriggerABusSentErrtype( + device, f"{self._cmd_syntax}:ERRType" + ) + self._fast = SearchSearchItemTriggerABusSentFast(device, f"{self._cmd_syntax}:FAST") + self._pause = SearchSearchItemTriggerABusSentPause(device, f"{self._cmd_syntax}:PAUSE") + self._slow = SearchSearchItemTriggerABusSentSlow(device, f"{self._cmd_syntax}:SLOW") + + @property + def condition(self) -> SearchSearchItemTriggerABusSentCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition`` command. + + Description: + - This command sets or queries the search condition for a SENT bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition?`` 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:BUS:SENT:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition {START|FAST|SLOW|PAUSE|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``START`` specifies searching for start of packet. + - ``FAST`` specifies searching for fast channel data. + - ``SLOW`` specifies searching for slow channel data. + - ``PAUSE`` specifies searching for pause pulses. + - ``ERRor`` specifies searching on errors. + """ + return self._condition + + @property + def errtype(self) -> SearchSearchItemTriggerABusSentErrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType`` command. + + Description: + - This command sets or queries the error type to be used when searching on SENT data. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType?`` 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:BUS:SENT:ERRType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType {FRAMELENgth|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType? + ``` + + Info: + - ``Search`` is the number of the search. + - ``FRAMELENgth`` specifies searching for SENT frame length errors. + - ``CRC`` specifies searching for CRC errors. + + Sub-properties: + - ``.crc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType:CRC`` command. + """ + return self._errtype + + @property + def fast(self) -> SearchSearchItemTriggerABusSentFast: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.chan1a``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN1A`` command tree. + - ``.chan2b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:CHAN2B`` command tree. + - ``.counter``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:COUNTer`` command tree. + - ``.invertnibble``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:INVERTNIBble`` + command tree. + - ``.status``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST:STATus`` command tree. + """ + return self._fast + + @property + def pause(self) -> SearchSearchItemTriggerABusSentPause: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:QUALifier`` command. + - ``.ticks``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE:TICKs`` command tree. + """ + return self._pause + + @property + def slow(self) -> SearchSearchItemTriggerABusSentSlow: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:DATA`` command tree. + - ``.identifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW:IDentifier`` command + tree. + """ + return self._slow + + +class SearchSearchItemTriggerABusSdlcUnnumberedFrametype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe`` command. + + Description: + - This command sets or queries the Unnumbered Frame Type in SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe?`` 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:BUS:SDLC:UNNumbered:FRAMETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe {UP|UI|SNRM|SNRME|REQDISConnect|UACK|REQSETINIT|DISCMODe|FRAMEREJ|TEST|XID|CONFigure|BEACon} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``UP`` sets the Unnumbered Frame Type as UP. + - ``UI`` sets the Unnumbered Frame Type as UI. + - ``SNRM`` sets the Unnumbered Frame Type as SNRM. + - ``SNRME`` sets the Unnumbered Frame Type as SNRME. + - ``REQDISConnect`` sets the Unnumbered Frame Type as REQDISConnect. + - ``UACK`` sets the Unnumbered Frame Type as UACK. + - ``REQSETINIT`` sets the Unnumbered Frame Type as REQSETINIT. + - ``DISCMODe`` sets the Unnumbered Frame Type as DISCMODe. + - ``FRAMEREJ`` sets the Unnumbered Frame Type as FRAMEREJ. + - ``TEST`` sets the Unnumbered Frame Type as TEST. + - ``XID`` sets the Unnumbered Frame Type as XID. + - ``CONFigure`` sets the Unnumbered Frame Type as CONFigure. + - ``BEACon`` sets the Unnumbered Frame Type as BEACon. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSdlcUnnumbered(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._frametype = SearchSearchItemTriggerABusSdlcUnnumberedFrametype( + device, f"{self._cmd_syntax}:FRAMETYPe" + ) + + @property + def frametype(self) -> SearchSearchItemTriggerABusSdlcUnnumberedFrametype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe`` command. + + Description: + - This command sets or queries the Unnumbered Frame Type in SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe?`` 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:BUS:SDLC:UNNumbered:FRAMETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe {UP|UI|SNRM|SNRME|REQDISConnect|UACK|REQSETINIT|DISCMODe|FRAMEREJ|TEST|XID|CONFigure|BEACon} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``UP`` sets the Unnumbered Frame Type as UP. + - ``UI`` sets the Unnumbered Frame Type as UI. + - ``SNRM`` sets the Unnumbered Frame Type as SNRM. + - ``SNRME`` sets the Unnumbered Frame Type as SNRME. + - ``REQDISConnect`` sets the Unnumbered Frame Type as REQDISConnect. + - ``UACK`` sets the Unnumbered Frame Type as UACK. + - ``REQSETINIT`` sets the Unnumbered Frame Type as REQSETINIT. + - ``DISCMODe`` sets the Unnumbered Frame Type as DISCMODe. + - ``FRAMEREJ`` sets the Unnumbered Frame Type as FRAMEREJ. + - ``TEST`` sets the Unnumbered Frame Type as TEST. + - ``XID`` sets the Unnumbered Frame Type as XID. + - ``CONFigure`` sets the Unnumbered Frame Type as CONFigure. + - ``BEACon`` sets the Unnumbered Frame Type as BEACon. + """ # noqa: E501 + return self._frametype + + +class SearchSearchItemTriggerABusSdlcSupervisoryFrametype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe`` command. + + Description: + - This command sets or queries the Supervisory Frame Type in SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe?`` 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:BUS:SDLC:SUPervisory:FRAMETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe {RR|RNR|REJ} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``RR`` sets the frame type as RR. + - ``RNR`` sets the frame type as RNR. + - ``REJ`` sets the frame type as REJ. + """ + + +class SearchSearchItemTriggerABusSdlcSupervisory(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._frametype = SearchSearchItemTriggerABusSdlcSupervisoryFrametype( + device, f"{self._cmd_syntax}:FRAMETYPe" + ) + + @property + def frametype(self) -> SearchSearchItemTriggerABusSdlcSupervisoryFrametype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe`` command. + + Description: + - This command sets or queries the Supervisory Frame Type in SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe?`` 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:BUS:SDLC:SUPervisory:FRAMETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe {RR|RNR|REJ} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``RR`` sets the frame type as RR. + - ``RNR`` sets the frame type as RNR. + - ``REJ`` sets the frame type as REJ. + """ + return self._frametype + + +class SearchSearchItemTriggerABusSdlcStaddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue`` command. + + Description: + - This command specifies the binary Station Address string used for SDLC triggering if the + trigger condition is Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue?`` 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:BUS:SDLC:STADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusSdlcStaddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusSdlcStaddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusSdlcStaddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue`` command. + + Description: + - This command specifies the binary Station Address string used for SDLC triggering if + the trigger condition is Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue?`` 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:BUS:SDLC:STADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The default value is XXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusSdlcFrameType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe`` command. + + Description: + - This command sets or queries the Frame Type in SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe?`` 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:BUS:SDLC:FRAMe:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe {COMMand|RESPonse|BOTH} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``COMMand`` sets Command as the Frame Type in SDLC bus. The default value of frame type + for SDLC Unnumbered frame is Command. + - ``RESPonse`` sets Response as the Frame Type in SDLC bus. + - ``BOTH`` sets both Command and Response as the Frame Type in SDLC bus. + """ + + +class SearchSearchItemTriggerABusSdlcFrame(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusSdlcFrameType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusSdlcFrameType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe`` command. + + Description: + - This command sets or queries the Frame Type in SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe?`` 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:BUS:SDLC:FRAMe:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe {COMMand|RESPonse|BOTH} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``COMMand`` sets Command as the Frame Type in SDLC bus. The default value of frame + type for SDLC Unnumbered frame is Command. + - ``RESPonse`` sets Response as the Frame Type in SDLC bus. + - ``BOTH`` sets both Command and Response as the Frame Type in SDLC bus. + """ + return self._type + + +class SearchSearchItemTriggerABusSdlcErrorType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe`` command. + + Description: + - This command sets or queries the Error Type in SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe?`` 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:BUS:SDLC:ERROR:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe {FCS|NUMERICORDer} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``FCS`` sets FCS as the Error Type in SDLC bus. The default error type condition is FCS. + - ``NUMERICORDer`` sets NUMERICORDer as the Error Type in SDLC bus. + """ + + +class SearchSearchItemTriggerABusSdlcError(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusSdlcErrorType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusSdlcErrorType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe`` command. + + Description: + - This command sets or queries the Error Type in SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe?`` 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:BUS:SDLC:ERROR:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe {FCS|NUMERICORDer} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``FCS`` sets FCS as the Error Type in SDLC bus. The default error type condition is + FCS. + - ``NUMERICORDer`` sets NUMERICORDer as the Error Type in SDLC bus. + """ + return self._type + + +class SearchSearchItemTriggerABusSdlcDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for SDLC triggering if the trigger + condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue?`` 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:BUS:SDLC:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The default value is XXXXXXXX . + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusSdlcDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for SDLC + triggering if the trigger condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe?`` 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:BUS:SDLC:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe? + ``` + + Info: + - ```` is the length of the data string in bytes. The default Data size is 1, otherwise + ranges between 1 to 5. + """ + + +class SearchSearchItemTriggerABusSdlcData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusSdlcDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusSdlcDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusSdlcDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for SDLC + triggering if the trigger condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe?`` 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:BUS:SDLC:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe? + ``` + + Info: + - ```` is the length of the data string in bytes. The default Data size is 1, + otherwise ranges between 1 to 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusSdlcDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for SDLC triggering if the trigger + condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue?`` 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:BUS:SDLC:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The default value is XXXXXXXX . + """ + return self._value + + +class SearchSearchItemTriggerABusSdlcCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition?`` 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:BUS:SDLC:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition {STARt|DATa|ABORt|ADDRess|UNNumbered|INFormation|SUPervisory|ERRors|END} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``STARt`` specifies start as the field within a SDLC frame to search on. The default + Trigger on Condtion is STARt. + - ``DATa`` specifies data as the field within a SDLC frame to search on. + - ``ABORt`` specifies abort as the field within a SDLC frame to search on. + - ``ADDRess`` specifies address as the field within a SDLC frame to search on. + - ``UNNumbered`` specifies unnumbered as the field within a SDLC frame to search on. + - ``INFormation`` specifies information as the field within a SDLC frame to search on. + - ``SUPervisory`` specifies supervisory as the field within a SDLC frame to search on. + - ``ERRors`` specifies errors as the field within a SDLC frame to search on. + - ``END`` specifies end as the field within a SDLC frame to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusSdlcAddressType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe`` command. + + Description: + - This commands specifies the Address type in SDLC frame which can be Broadcast, No-Station + and Address value can be specified. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe?`` 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:BUS:SDLC:ADDRess:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe {BROadcast|NOSTATion|STATIONADDr} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``BROadcast`` specifies the Broadcast as the field within a SDLC frame to search on. + BROadcast is the default value. + - ``NOSTATion`` specifies the No-Station as the field within a SDLC frame to search on. + - ``STATIONADDr`` specifies the Address as the field within a SDLC frame to search on. + """ + + +class SearchSearchItemTriggerABusSdlcAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusSdlcAddressType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusSdlcAddressType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe`` command. + + Description: + - This commands specifies the Address type in SDLC frame which can be Broadcast, + No-Station and Address value can be specified. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe?`` 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:BUS:SDLC:ADDRess:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe {BROadcast|NOSTATion|STATIONADDr} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``BROadcast`` specifies the Broadcast as the field within a SDLC frame to search on. + BROadcast is the default value. + - ``NOSTATion`` specifies the No-Station as the field within a SDLC frame to search on. + - ``STATIONADDr`` specifies the Address as the field within a SDLC frame to search on. + """ + return self._type + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusSdlc(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR`` command tree. + - ``.frame``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe`` command tree. + - ``.staddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress`` command tree. + - ``.supervisory``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory`` command tree. + - ``.unnumbered``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusSdlcAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + self._condition = SearchSearchItemTriggerABusSdlcCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusSdlcData(device, f"{self._cmd_syntax}:DATa") + self._error = SearchSearchItemTriggerABusSdlcError(device, f"{self._cmd_syntax}:ERROR") + self._frame = SearchSearchItemTriggerABusSdlcFrame(device, f"{self._cmd_syntax}:FRAMe") + self._staddress = SearchSearchItemTriggerABusSdlcStaddress( + device, f"{self._cmd_syntax}:STADDress" + ) + self._supervisory = SearchSearchItemTriggerABusSdlcSupervisory( + device, f"{self._cmd_syntax}:SUPervisory" + ) + self._unnumbered = SearchSearchItemTriggerABusSdlcUnnumbered( + device, f"{self._cmd_syntax}:UNNumbered" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusSdlcAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess:TYPe`` command. + """ + return self._address + + @property + def condition(self) -> SearchSearchItemTriggerABusSdlcCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a SDLC bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition?`` 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:BUS:SDLC:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition {STARt|DATa|ABORt|ADDRess|UNNumbered|INFormation|SUPervisory|ERRors|END} + - SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``STARt`` specifies start as the field within a SDLC frame to search on. The default + Trigger on Condtion is STARt. + - ``DATa`` specifies data as the field within a SDLC frame to search on. + - ``ABORt`` specifies abort as the field within a SDLC frame to search on. + - ``ADDRess`` specifies address as the field within a SDLC frame to search on. + - ``UNNumbered`` specifies unnumbered as the field within a SDLC frame to search on. + - ``INFormation`` specifies information as the field within a SDLC frame to search on. + - ``SUPervisory`` specifies supervisory as the field within a SDLC frame to search on. + - ``ERRors`` specifies errors as the field within a SDLC frame to search on. + - ``END`` specifies end as the field within a SDLC frame to search on. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusSdlcData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa:VALue`` command. + """ + return self._data + + @property + def error(self) -> SearchSearchItemTriggerABusSdlcError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR:TYPe`` command. + """ + return self._error + + @property + def frame(self) -> SearchSearchItemTriggerABusSdlcFrame: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe:TYPe`` command. + """ + return self._frame + + @property + def staddress(self) -> SearchSearchItemTriggerABusSdlcStaddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress:VALue`` command. + """ + return self._staddress + + @property + def supervisory(self) -> SearchSearchItemTriggerABusSdlcSupervisory: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory:FRAMETYPe`` + command. + """ + return self._supervisory + + @property + def unnumbered(self) -> SearchSearchItemTriggerABusSdlcUnnumbered: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered:FRAMETYPe`` + command. + """ + return self._unnumbered + + +class SearchSearchItemTriggerABusS8b10bSymbolType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe`` command. + + Description: + - This command sets or queries the type of symbol when searching on 8b10b signal. The search + condition must be set to Symbols. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe?`` 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:BUS:S8B10B:SYMbol:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe {DATa|CONTrol} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``DATa`` specifies searching for Data Symbols. + - ``CONTrol`` specifies searching for Control Symbols. + """ + + +class SearchSearchItemTriggerABusS8b10bSymbolTbitvalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue`` command. + + Description: + - This command specifies the 10 bit value to be used when searching on an 8b10b signal. The + default is all X's (don't care). The search condition needs to be set to Symbols. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue?`` 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:BUS:S8B10B:SYMbol:TBITVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 10 bit value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusS8b10bSymbolTbitrdpos(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos`` command. + + Description: + - This command specifies the 10 bit RD positive value to be used when searching on an 8b10b + signal. The default is all X's (don't care). The search condition needs to be set to + Symbols. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos?`` 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:BUS:S8B10B:SYMbol:TBITRDPos value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 10 bit RD positive value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusS8b10bSymbolTbitrdneg(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg`` command. + + Description: + - This command specifies the 10 bit RD negative value to be used when searching on an 8b10b + signal. The default is all X's (don't care). The search condition needs to be set to + Symbols. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg?`` 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:BUS:S8B10B:SYMbol:TBITRDNeg value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 10 bit RD negative value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusS8b10bSymbolMode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe`` command. + + Description: + - This command sets or queries the mode of data search to be used when searching on 8b10b + signal. The search condition must be set to Symbols. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe?`` 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:BUS:S8B10B:SYMbol:MODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe {EBIT|TBIT|SYMB} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EBIT`` specifies searching for Eight Bit data. + - ``TBIT`` specifies searching for Ten bit data (6 bits and 4 bits combined). Only valid + values are considered. + - ``SYMB`` specifies searching for symbol data with disparity. Takes only K and D with + possible values. + """ + + +class SearchSearchItemTriggerABusS8b10bSymbolEbitvalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue`` command. + + Description: + - This command specifies the 8 bit value to be used when searching on an 8b10b signal. The + default is all X's (don't care). The search condition needs to be set to Symbols. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue?`` 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:BUS:S8B10B:SYMbol:EBITVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 8 bit value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusS8b10bSymbolCsymvalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue`` command. + + Description: + - This command sets or queries the control symbol value to be used when searching on 8b10b + signal. The default is all X's (don't care). The search condition needs to be set to + Symbols. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue?`` 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:BUS:S8B10B:SYMbol:CSYMVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 10 bit value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusS8b10bSymbol(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.csymvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue`` command. + - ``.ebitvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue`` command. + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe`` command. + - ``.tbitrdneg``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg`` command. + - ``.tbitrdpos``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos`` command. + - ``.tbitvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._csymvalue = SearchSearchItemTriggerABusS8b10bSymbolCsymvalue( + device, f"{self._cmd_syntax}:CSYMVALue" + ) + self._ebitvalue = SearchSearchItemTriggerABusS8b10bSymbolEbitvalue( + device, f"{self._cmd_syntax}:EBITVALue" + ) + self._mode = SearchSearchItemTriggerABusS8b10bSymbolMode(device, f"{self._cmd_syntax}:MODe") + self._tbitrdneg = SearchSearchItemTriggerABusS8b10bSymbolTbitrdneg( + device, f"{self._cmd_syntax}:TBITRDNeg" + ) + self._tbitrdpos = SearchSearchItemTriggerABusS8b10bSymbolTbitrdpos( + device, f"{self._cmd_syntax}:TBITRDPos" + ) + self._tbitvalue = SearchSearchItemTriggerABusS8b10bSymbolTbitvalue( + device, f"{self._cmd_syntax}:TBITVALue" + ) + self._type = SearchSearchItemTriggerABusS8b10bSymbolType(device, f"{self._cmd_syntax}:TYPe") + + @property + def csymvalue(self) -> SearchSearchItemTriggerABusS8b10bSymbolCsymvalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue`` command. + + Description: + - This command sets or queries the control symbol value to be used when searching on + 8b10b signal. The default is all X's (don't care). The search condition needs to be + set to Symbols. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue?`` 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:BUS:S8B10B:SYMbol:CSYMVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 10 bit value. + """ + return self._csymvalue + + @property + def ebitvalue(self) -> SearchSearchItemTriggerABusS8b10bSymbolEbitvalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue`` command. + + Description: + - This command specifies the 8 bit value to be used when searching on an 8b10b signal. + The default is all X's (don't care). The search condition needs to be set to Symbols. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue?`` 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:BUS:S8B10B:SYMbol:EBITVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 8 bit value. + """ + return self._ebitvalue + + @property + def mode(self) -> SearchSearchItemTriggerABusS8b10bSymbolMode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe`` command. + + Description: + - This command sets or queries the mode of data search to be used when searching on + 8b10b signal. The search condition must be set to Symbols. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe?`` 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:BUS:S8B10B:SYMbol:MODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe {EBIT|TBIT|SYMB} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``EBIT`` specifies searching for Eight Bit data. + - ``TBIT`` specifies searching for Ten bit data (6 bits and 4 bits combined). Only valid + values are considered. + - ``SYMB`` specifies searching for symbol data with disparity. Takes only K and D with + possible values. + """ + return self._mode + + @property + def tbitrdneg(self) -> SearchSearchItemTriggerABusS8b10bSymbolTbitrdneg: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg`` command. + + Description: + - This command specifies the 10 bit RD negative value to be used when searching on an + 8b10b signal. The default is all X's (don't care). The search condition needs to be + set to Symbols. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg?`` 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:BUS:S8B10B:SYMbol:TBITRDNeg value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 10 bit RD negative value. + """ + return self._tbitrdneg + + @property + def tbitrdpos(self) -> SearchSearchItemTriggerABusS8b10bSymbolTbitrdpos: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos`` command. + + Description: + - This command specifies the 10 bit RD positive value to be used when searching on an + 8b10b signal. The default is all X's (don't care). The search condition needs to be + set to Symbols. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos?`` 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:BUS:S8B10B:SYMbol:TBITRDPos value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 10 bit RD positive value. + """ + return self._tbitrdpos + + @property + def tbitvalue(self) -> SearchSearchItemTriggerABusS8b10bSymbolTbitvalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue`` command. + + Description: + - This command specifies the 10 bit value to be used when searching on an 8b10b signal. + The default is all X's (don't care). The search condition needs to be set to Symbols. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue?`` 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:BUS:S8B10B:SYMbol:TBITVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ```` specifies the 10 bit value. + """ + return self._tbitvalue + + @property + def type(self) -> SearchSearchItemTriggerABusS8b10bSymbolType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe`` command. + + Description: + - This command sets or queries the type of symbol when searching on 8b10b signal. The + search condition must be set to Symbols. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe?`` 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:BUS:S8B10B:SYMbol:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe {DATa|CONTrol} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe? + ``` + + Info: + - ``Search`` is the number of the search. + - ``DATa`` specifies searching for Data Symbols. + - ``CONTrol`` specifies searching for Control Symbols. + """ + return self._type + + +class SearchSearchItemTriggerABusS8b10bError(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor`` command. + + Description: + - This command sets or queries the error type to be used when searching on a 8B10b signal. + The search condition must be set to Errors. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor?`` 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:BUS:S8B10B:ERRor value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor {SYMBol|DISParity} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ``SYMBol`` specifies searching for Symbol Errors. + - ``DISParity`` specifies searching for Disparity Errors. + """ + + +class SearchSearchItemTriggerABusS8b10bDisparity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity`` command. + + Description: + - This command sets or queries the disparity to be used when searching on a 8B10b signal. + The search condition must be set to Symbols > 8-bit. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity?`` 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:BUS:S8B10B:DISParity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity {POSITIVe|NEGAtive|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ``POSITIVe`` specifies searching for positive disparity. + - ``NEGAtive`` specifies searching for negative disparity. + - ``EITHer`` specifies searching for neutral or either positive/negative disparity. + """ + + +class SearchSearchItemTriggerABusS8b10b(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.disparity``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity`` command. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor`` command. + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._disparity = SearchSearchItemTriggerABusS8b10bDisparity( + device, f"{self._cmd_syntax}:DISParity" + ) + self._error = SearchSearchItemTriggerABusS8b10bError(device, f"{self._cmd_syntax}:ERRor") + self._symbol = SearchSearchItemTriggerABusS8b10bSymbol(device, f"{self._cmd_syntax}:SYMbol") + + @property + def disparity(self) -> SearchSearchItemTriggerABusS8b10bDisparity: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity`` command. + + Description: + - This command sets or queries the disparity to be used when searching on a 8B10b + signal. The search condition must be set to Symbols > 8-bit. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity?`` 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:BUS:S8B10B:DISParity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity {POSITIVe|NEGAtive|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ``POSITIVe`` specifies searching for positive disparity. + - ``NEGAtive`` specifies searching for negative disparity. + - ``EITHer`` specifies searching for neutral or either positive/negative disparity. + """ + return self._disparity + + @property + def error(self) -> SearchSearchItemTriggerABusS8b10bError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor`` command. + + Description: + - This command sets or queries the error type to be used when searching on a 8B10b + signal. The search condition must be set to Errors. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor?`` 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:BUS:S8B10B:ERRor value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor {SYMBol|DISParity} + - SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor? + ``` + + Info: + - ``Search`` is the Search identifier number. + - ``SYMBol`` specifies searching for Symbol Errors. + - ``DISParity`` specifies searching for Disparity Errors. + """ + return self._error + + @property + def symbol(self) -> SearchSearchItemTriggerABusS8b10bSymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.csymvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:CSYMVALue`` + command. + - ``.ebitvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:EBITVALue`` + command. + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:MODe`` command. + - ``.tbitrdneg``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDNeg`` + command. + - ``.tbitrdpos``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITRDPos`` + command. + - ``.tbitvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TBITVALue`` + command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol:TYPe`` command. + """ + return self._symbol + + +class SearchSearchItemTriggerABusRs232cDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue`` command. + + Description: + - This command sets or queries the data string used for the specified RS232C bus trigger + search to determine where to place a mark. The search condition must be Data. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue?`` 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:BUS:RS232C:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, and X + for values in binary format; and A-F, 0-9, and X for values in hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusRs232cDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string in bytes to be used for an + RS232 bus search to determine where to place a mark when the search condition is Data. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe?`` 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:BUS:RS232C:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe? + ``` + + Info: + - ```` is the number of bits per word in the data string, from 1 to 8. + """ + + +class SearchSearchItemTriggerABusRs232cData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusRs232cDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusRs232cDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusRs232cDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string in bytes to be used for an + RS232 bus search to determine where to place a mark when the search condition is + Data. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe?`` 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:BUS:RS232C:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe? + ``` + + Info: + - ```` is the number of bits per word in the data string, from 1 to 8. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusRs232cDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue`` command. + + Description: + - This command sets or queries the data string used for the specified RS232C bus trigger + search to determine where to place a mark. The search condition must be Data. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue?`` 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:BUS:RS232C:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, + and X for values in binary format; and A-F, 0-9, and X for values in hexadecimal + format. + """ + return self._value + + +class SearchSearchItemTriggerABusRs232cCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition`` command. + + Description: + - This command sets or queries the condition for an RS232C bus search to determine where to + place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition?`` 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:BUS:RS232C:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition {DATa|EOp|PARItyerror|STARt} + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition? + ``` + + Info: + - ``DATa`` specifies the search condition as Data. + - ``EOp`` specifies the search condition as End of Packet. + - ``PARItyerror`` specifies the search condition as Parity Error. + - ``STARt`` specifies the search condition as Start. + """ + + +class SearchSearchItemTriggerABusRs232c(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusRs232cCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusRs232cData(device, f"{self._cmd_syntax}:DATa") + + @property + def condition(self) -> SearchSearchItemTriggerABusRs232cCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition`` command. + + Description: + - This command sets or queries the condition for an RS232C bus search to determine where + to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition?`` 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:BUS:RS232C:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition {DATa|EOp|PARItyerror|STARt} + - SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition? + ``` + + Info: + - ``DATa`` specifies the search condition as Data. + - ``EOp`` specifies the search condition as End of Packet. + - ``PARItyerror`` specifies the search condition as Parity Error. + - ``STARt`` specifies the search condition as Start. + """ + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusRs232cData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa:VALue`` command. + """ + return self._data + + +class SearchSearchItemTriggerABusParallelDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data string used for a parallel bus search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue?`` 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:BUS:PARallel:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue? + ``` + + Info: + - ```` specifies the data value in a valid format. Valid characters are 0-9. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusParallelData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusParallelDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusParallelDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data string used for a parallel bus search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue?`` 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:BUS:PARallel:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue? + ``` + + Info: + - ```` specifies the data value in a valid format. Valid characters are 0-9. + """ + return self._value + + +class SearchSearchItemTriggerABusParallel(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = SearchSearchItemTriggerABusParallelData(device, f"{self._cmd_syntax}:DATa") + + @property + def data(self) -> SearchSearchItemTriggerABusParallelData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa:VALue`` command. + """ + return self._data + + +class SearchSearchItemTriggerABusOnewireSearchromRomcode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe`` command. + + Description: + - This command sets or queries the ROM code for Search ROM in ONEWIRE bus. MODe should be + set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe?`` 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:BUS:ONEWIRe:SEARCHROM:ROMCODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the ROM code for Search ROM. The default size and value of ROM + code for Search ROM is 64 bits and 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX + XXXXXXXX XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusOnewireSearchrom(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.romcode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._romcode = SearchSearchItemTriggerABusOnewireSearchromRomcode( + device, f"{self._cmd_syntax}:ROMCODe" + ) + + @property + def romcode(self) -> SearchSearchItemTriggerABusOnewireSearchromRomcode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe`` command. + + Description: + - This command sets or queries the ROM code for Search ROM in ONEWIRE bus. MODe should + be set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe?`` 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:BUS:ONEWIRe:SEARCHROM:ROMCODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the ROM code for Search ROM. The default size and value of ROM + code for Search ROM is 64 bits and 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX + XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + return self._romcode + + +class SearchSearchItemTriggerABusOnewireReadromSerialnumber(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer`` command. + + Description: + - This command sets or queries the serial number for Read ROM in ONEWIRE bus. MODe should be + set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer?`` 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:BUS:ONEWIRe:READROM:SERIALNUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Serial Number triggering. The default + size and value of serial number for Read ROM is 48 bits and 'XXXXXXXX XXXXXXXX XXXXXXXX + XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusOnewireReadromFamilycode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe`` command. + + Description: + - This command sets or queries the family code for Read ROM in ONEWIRE bus. MODe should be + set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe?`` 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:BUS:ONEWIRe:READROM:FAMILYCODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Family Code triggering. The default + size and value of family code for Read ROM is 8 bits and 'XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusOnewireReadrom(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.familycode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe`` + command. + - ``.serialnumber``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._familycode = SearchSearchItemTriggerABusOnewireReadromFamilycode( + device, f"{self._cmd_syntax}:FAMILYCODe" + ) + self._serialnumber = SearchSearchItemTriggerABusOnewireReadromSerialnumber( + device, f"{self._cmd_syntax}:SERIALNUMBer" + ) + + @property + def familycode(self) -> SearchSearchItemTriggerABusOnewireReadromFamilycode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe`` command. + + Description: + - This command sets or queries the family code for Read ROM in ONEWIRE bus. MODe should + be set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe?`` 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:BUS:ONEWIRe:READROM:FAMILYCODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Family Code triggering. The default + size and value of family code for Read ROM is 8 bits and 'XXXXXXXX'. + """ + return self._familycode + + @property + def serialnumber(self) -> SearchSearchItemTriggerABusOnewireReadromSerialnumber: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer`` command. + + Description: + - This command sets or queries the serial number for Read ROM in ONEWIRE bus. MODe + should be set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer?`` 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:BUS:ONEWIRe:READROM:SERIALNUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Serial Number triggering. The + default size and value of serial number for Read ROM is 48 bits and 'XXXXXXXX XXXXXXXX + XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + return self._serialnumber + + +class SearchSearchItemTriggerABusOnewireOverdriveSerialnumber(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer`` command. + + Description: + - This command sets or queries the serial number for Overdrive Match ROM in ONEWIRE bus. + MODe should be set to Overdrive. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer?`` 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:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Serial Number triggering. The default + size and value of serial number for Overdrive match ROM is 48 bits and 'XXXXXXXX XXXXXXXX + XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusOnewireOverdriveFamilycode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe`` command. + + Description: + - This command sets or queries the Family Code for Overdrive Match ROM in ONEWIRE bus. MODe + should be set to Overdrive. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe?`` 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:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Family Code triggering. The default + size and value of family code for Overdrive match ROM is 8 bits and 'XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusOnewireOverdrive(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.familycode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe`` + command. + - ``.serialnumber``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._familycode = SearchSearchItemTriggerABusOnewireOverdriveFamilycode( + device, f"{self._cmd_syntax}:FAMILYCODe" + ) + self._serialnumber = SearchSearchItemTriggerABusOnewireOverdriveSerialnumber( + device, f"{self._cmd_syntax}:SERIALNUMBer" + ) + + @property + def familycode(self) -> SearchSearchItemTriggerABusOnewireOverdriveFamilycode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe`` command. + + Description: + - This command sets or queries the Family Code for Overdrive Match ROM in ONEWIRE bus. + MODe should be set to Overdrive. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe?`` 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:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Family Code triggering. The default + size and value of family code for Overdrive match ROM is 8 bits and 'XXXXXXXX'. + """ + return self._familycode + + @property + def serialnumber(self) -> SearchSearchItemTriggerABusOnewireOverdriveSerialnumber: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer`` command. + + Description: + - This command sets or queries the serial number for Overdrive Match ROM in ONEWIRE bus. + MODe should be set to Overdrive. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer?`` 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:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Serial Number triggering. The + default size and value of serial number for Overdrive match ROM is 48 bits and + 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + return self._serialnumber + + +class SearchSearchItemTriggerABusOnewireMatchromSerialnumber(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer`` command. + + Description: + - This command sets or queries the serial number for Match ROM in ONEWIRE bus. MODe should + be set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer?`` 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:BUS:ONEWIRe:MATCHROM:SERIALNUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Serial Number triggering. The default + size and value of serial number for Match ROM is 48 bits and 'XXXXXXXX XXXXXXXX XXXXXXXX + XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusOnewireMatchromFamilycode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe`` command. + + Description: + - This command sets or queries the family code for Match ROM in ONEWIRE bus. MODe should be + set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe?`` 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:BUS:ONEWIRe:MATCHROM:FAMILYCODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Family Code triggering. The default + size and value of family code for Match ROM is 8 bits and 'XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusOnewireMatchrom(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.familycode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe`` + command. + - ``.serialnumber``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._familycode = SearchSearchItemTriggerABusOnewireMatchromFamilycode( + device, f"{self._cmd_syntax}:FAMILYCODe" + ) + self._serialnumber = SearchSearchItemTriggerABusOnewireMatchromSerialnumber( + device, f"{self._cmd_syntax}:SERIALNUMBer" + ) + + @property + def familycode(self) -> SearchSearchItemTriggerABusOnewireMatchromFamilycode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe`` command. + + Description: + - This command sets or queries the family code for Match ROM in ONEWIRE bus. MODe should + be set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe?`` 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:BUS:ONEWIRe:MATCHROM:FAMILYCODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Family Code triggering. The default + size and value of family code for Match ROM is 8 bits and 'XXXXXXXX'. + """ + return self._familycode + + @property + def serialnumber(self) -> SearchSearchItemTriggerABusOnewireMatchromSerialnumber: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer`` command. + + Description: + - This command sets or queries the serial number for Match ROM in ONEWIRE bus. MODe + should be set to Standard. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer?`` 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:BUS:ONEWIRe:MATCHROM:SERIALNUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the binary string used for Serial Number triggering. The + default size and value of serial number for Match ROM is 48 bits and 'XXXXXXXX + XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + return self._serialnumber + + +class SearchSearchItemTriggerABusOnewireDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for ONEWIRe triggering if the trigger + condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue?`` 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:BUS:ONEWIRe:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data value in a valid format. The default size and value for + DATA is 8 bits and 'XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusOnewireDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for ONEWIRe + triggering if the trigger condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe?`` 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:BUS:ONEWIRe:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data string in a valid format. The minimum and default values are + 1. The maximum value is 5. + """ + + +class SearchSearchItemTriggerABusOnewireData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusOnewireDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusOnewireDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusOnewireDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for ONEWIRe + triggering if the trigger condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe?`` 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:BUS:ONEWIRe:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data string in a valid format. The minimum and default values + are 1. The maximum value is 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusOnewireDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for ONEWIRe triggering if the + trigger condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue?`` 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:BUS:ONEWIRe:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data value in a valid format. The default size and value + for DATA is 8 bits and 'XXXXXXXX'. + """ + return self._value + + +class SearchSearchItemTriggerABusOnewireCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a ONEWIRe bus. MODe should be set + to Overdrive for OVERDRIVEMATCh and OVERDRIVESKIP. MODe should be set to Standard for + READROM, MATCHROM, SKIPROM, SEARCHROM, ALARMSEARch. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition?`` 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:BUS:ONEWIRe:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition {RESet|PREsence|COMMand|DATa|READROM|MATCHROM|OVERDRIVEMATCh|SKIPROM|OVERDRIVESKIP|SEARCHROM|ALARMSEARch|CRCERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``RESet`` specifies the search condition as RESet. Reset is the default trigger on + condition. + - ``PREsence`` specifies the search condition as PREsence. + - ``COMMand`` specifies the search condition as COMMand. + - ``DATa`` specifies the search condition as DATa. + - ``READROM`` specifies the search condition as READROM. + - ``MATCHROM`` specifies the search condition as MATCHROM. + - ``SKIPROM`` specifies the search condition as SKIPROM. + - ``SEARCHROM`` specifies the search condition as SEARCHROM. + - ``ALARMSEARch`` specifies the search condition as ALARMSEARch. + - ``CRCERRor`` specifies the search condition as CRCERRor. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusOnewireCommandValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue`` command. + + Description: + - This command specifies the binary data string used for ONEWIRe triggering if the trigger + condition is COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue?`` 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:BUS:ONEWIRe:COMMand:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data value in a valid format. The default size and value for + COMMAND is 8 bits and 'XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusOnewireCommand(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusOnewireCommandValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusOnewireCommandValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue`` command. + + Description: + - This command specifies the binary data string used for ONEWIRe triggering if the + trigger condition is COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue?`` 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:BUS:ONEWIRe:COMMand:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data value in a valid format. The default size and value + for COMMAND is 8 bits and 'XXXXXXXX'. + """ + return self._value + + +class SearchSearchItemTriggerABusOnewire(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa`` command tree. + - ``.matchrom``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM`` command tree. + - ``.overdrive``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe`` command tree. + - ``.readrom``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM`` command tree. + - ``.searchrom``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._command = SearchSearchItemTriggerABusOnewireCommand( + device, f"{self._cmd_syntax}:COMMand" + ) + self._condition = SearchSearchItemTriggerABusOnewireCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusOnewireData(device, f"{self._cmd_syntax}:DATa") + self._matchrom = SearchSearchItemTriggerABusOnewireMatchrom( + device, f"{self._cmd_syntax}:MATCHROM" + ) + self._overdrive = SearchSearchItemTriggerABusOnewireOverdrive( + device, f"{self._cmd_syntax}:OVERDRIVe" + ) + self._readrom = SearchSearchItemTriggerABusOnewireReadrom( + device, f"{self._cmd_syntax}:READROM" + ) + self._searchrom = SearchSearchItemTriggerABusOnewireSearchrom( + device, f"{self._cmd_syntax}:SEARCHROM" + ) + + @property + def command(self) -> SearchSearchItemTriggerABusOnewireCommand: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand:VALue`` command. + """ + return self._command + + @property + def condition(self) -> SearchSearchItemTriggerABusOnewireCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a ONEWIRe bus. MODe should be + set to Overdrive for OVERDRIVEMATCh and OVERDRIVESKIP. MODe should be set to Standard + for READROM, MATCHROM, SKIPROM, SEARCHROM, ALARMSEARch. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition?`` 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:BUS:ONEWIRe:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition {RESet|PREsence|COMMand|DATa|READROM|MATCHROM|OVERDRIVEMATCh|SKIPROM|OVERDRIVESKIP|SEARCHROM|ALARMSEARch|CRCERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``RESet`` specifies the search condition as RESet. Reset is the default trigger on + condition. + - ``PREsence`` specifies the search condition as PREsence. + - ``COMMand`` specifies the search condition as COMMand. + - ``DATa`` specifies the search condition as DATa. + - ``READROM`` specifies the search condition as READROM. + - ``MATCHROM`` specifies the search condition as MATCHROM. + - ``SKIPROM`` specifies the search condition as SKIPROM. + - ``SEARCHROM`` specifies the search condition as SEARCHROM. + - ``ALARMSEARch`` specifies the search condition as ALARMSEARch. + - ``CRCERRor`` specifies the search condition as CRCERRor. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusOnewireData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa:VALue`` command. + """ + return self._data + + @property + def matchrom(self) -> SearchSearchItemTriggerABusOnewireMatchrom: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.familycode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:FAMILYCODe`` + command. + - ``.serialnumber``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM:SERIALNUMBer`` command. + """ + return self._matchrom + + @property + def overdrive(self) -> SearchSearchItemTriggerABusOnewireOverdrive: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.familycode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:FAMILYCODe`` + command. + - ``.serialnumber``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe:SERIALNUMBer`` command. + """ + return self._overdrive + + @property + def readrom(self) -> SearchSearchItemTriggerABusOnewireReadrom: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.familycode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:FAMILYCODe`` + command. + - ``.serialnumber``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM:SERIALNUMBer`` + command. + """ + return self._readrom + + @property + def searchrom(self) -> SearchSearchItemTriggerABusOnewireSearchrom: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.romcode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM:ROMCODe`` + command. + """ + return self._searchrom + + +class SearchSearchItemTriggerABusNrzDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on a NRZ + signal. The search condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue?`` 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:BUS:NRZ:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data value in a valid format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusNrzDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string, in bytes, to use when searching on + the NRZ signal. The search condition needs to be set to DATa. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe?`` 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:BUS:NRZ:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data string in a valid format. The minimum and default values are + 1. The maximum value is 5. + """ + + +class SearchSearchItemTriggerABusNrzData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusNrzDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusNrzDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusNrzDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string, in bytes, to use when searching + on the NRZ signal. The search condition needs to be set to DATa. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe?`` 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:BUS:NRZ:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data string in a valid format. The minimum and default values + are 1. The maximum value is 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusNrzDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on a NRZ + signal. The search condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue?`` 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:BUS:NRZ:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data value in a valid format. + """ + return self._value + + +class SearchSearchItemTriggerABusNrz(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = SearchSearchItemTriggerABusNrzData(device, f"{self._cmd_syntax}:DATa") + + @property + def data(self) -> SearchSearchItemTriggerABusNrzData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa:VALue`` command. + """ + return self._data + + +class SearchSearchItemTriggerABusMil1553bStatusParity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity`` command. + + Description: + - This command sets or queries the value of the status word parity bit for a MIL-STD-1553 + bus to search on. The search number is specified by x. The search condition must be set to + STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity?`` 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:BUS:MIL1553B:STATus:PARity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity? + ``` + + Info: + - ``ONE`` filters status words to only match those where the parity bit has a value of 1. + - ``ZERo`` filters status words to only match those where the parity bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the parity bit. + """ + + +class SearchSearchItemTriggerABusMil1553bStatusBitTf(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF`` command. + + Description: + - This command sets or queries the value of the terminal flag bit (TF bit, bit 19) in a + status word for a MIL-STD-1553 bus to search on. The search number is specified by x. The + search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF?`` 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:BUS:MIL1553B:STATus:BIT:TF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF? + ``` + + Info: + - ``ONE`` filters status words to only match those where the TF bit has a value of 1. + - ``ZERo`` filters status words to only match those where the TF bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the TF bit. + """ + + +class SearchSearchItemTriggerABusMil1553bStatusBitSubsf(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF`` command. + + Description: + - This command sets or queries the value of the subsystem flag bit (SUBSF bit, bit 17) in a + status word for a MIL-STD-1553 bus to search on. The search number is specified by x>. The + search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF?`` 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:BUS:MIL1553B:STATus:BIT:SUBSF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF? + ``` + + Info: + - ``ONE`` filters status words to only match those where the SUBSF bit has a value of 1. + - ``ZERo`` filters status words to only match those where the SUBSF bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the SUBSF bit. + """ + + +class SearchSearchItemTriggerABusMil1553bStatusBitSrq(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ`` command. + + Description: + - This command sets or queries the value of the status word service request bit (SRQ bit, + bit 11) in a status word for a MIL-STD-1553 bus to search on. The search number is + specified by x. The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ?`` 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:BUS:MIL1553B:STATus:BIT:SRQ value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ? + ``` + + Info: + - ``ONE`` filters status words to only match those where the SRQ bit has a value of 1. + - ``ZERo`` filters status words to only match those where the SRQ bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the SRQ bit. + """ + + +class SearchSearchItemTriggerABusMil1553bStatusBitMe(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME`` command. + + Description: + - This command sets or queries the value of the message error bit (ME bit, bit 9) in a + status word for a MIL-STD-1553 bus to search on. The search number is specified by x. The + search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME?`` 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:BUS:MIL1553B:STATus:BIT:ME value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME? + ``` + + Info: + - ``ONE`` filters status words to only match those where the ME bit has a value of 1. + - ``ZERo`` filters status words to only match those where the ME bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the ME bit. + """ + + +class SearchSearchItemTriggerABusMil1553bStatusBitInstr(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR`` command. + + Description: + - This command sets or queries the value of the instrumentation bit (INSTR bit, bit 10) in a + status word for a MIL-STD-1553 bus to search on. The search number is specified by x. The + search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR?`` 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:BUS:MIL1553B:STATus:BIT:INSTR value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR? + ``` + + Info: + - ``ONE`` filters status words to only match those where the INSTR bit has a value of 1. + - ``ZERo`` filters status words to only match those where the INSTR bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the INSTR bit. + """ + + +class SearchSearchItemTriggerABusMil1553bStatusBitDbca(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA`` command. + + Description: + - This command sets or queries the value of the dynamic bus control acceptance bit (DBCA + bit, bit 18) in a status word for a MIL-STD-1553 bus to search on. The search number is + specified by x. The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA?`` 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:BUS:MIL1553B:STATus:BIT:DBCA value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA? + ``` + + Info: + - ``ONE`` filters status words to only match those where the DBCA bit has a value of 1. + - ``ZERo`` filters status words to only match those where the DBCA bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the DBCA bit. + """ + + +class SearchSearchItemTriggerABusMil1553bStatusBitBusy(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY`` command. + + Description: + - This command sets or queries the value of the busy bit (BUSY bit, bit 16) in a status word + for a MIL-STD-1553 bus to search on. The search number is specified by x. The search + condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY?`` 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:BUS:MIL1553B:STATus:BIT:BUSY value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY? + ``` + + Info: + - ``ONE`` filters status words to only match those where the BUSY bit has a value of 1. + - ``ZERo`` filters status words to only match those where the BUSY bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the BUSY bit. + """ + + +class SearchSearchItemTriggerABusMil1553bStatusBitBcr(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR`` command. + + Description: + - This command sets or queries the value of the broadcast command received bit (BCR bit, bit + 15) in a status word for a MIL-STD-1553 bus to search on. The search number is specified + by x. The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR?`` 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:BUS:MIL1553B:STATus:BIT:BCR value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR? + ``` + + Info: + - ``ONE`` filters status words to only match those where the BCR bit has a value of 1. + - ``ZERo`` filters status words to only match those where the BCR bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the BCR bit. + """ + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusMil1553bStatusBit(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.bcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR`` command. + - ``.busy``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY`` command. + - ``.dbca``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA`` command. + - ``.instr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR`` command. + - ``.me``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME`` command. + - ``.srq``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ`` command. + - ``.subsf``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF`` command. + - ``.tf``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bcr = SearchSearchItemTriggerABusMil1553bStatusBitBcr( + device, f"{self._cmd_syntax}:BCR" + ) + self._busy = SearchSearchItemTriggerABusMil1553bStatusBitBusy( + device, f"{self._cmd_syntax}:BUSY" + ) + self._dbca = SearchSearchItemTriggerABusMil1553bStatusBitDbca( + device, f"{self._cmd_syntax}:DBCA" + ) + self._instr = SearchSearchItemTriggerABusMil1553bStatusBitInstr( + device, f"{self._cmd_syntax}:INSTR" + ) + self._me = SearchSearchItemTriggerABusMil1553bStatusBitMe(device, f"{self._cmd_syntax}:ME") + self._srq = SearchSearchItemTriggerABusMil1553bStatusBitSrq( + device, f"{self._cmd_syntax}:SRQ" + ) + self._subsf = SearchSearchItemTriggerABusMil1553bStatusBitSubsf( + device, f"{self._cmd_syntax}:SUBSF" + ) + self._tf = SearchSearchItemTriggerABusMil1553bStatusBitTf(device, f"{self._cmd_syntax}:TF") + + @property + def bcr(self) -> SearchSearchItemTriggerABusMil1553bStatusBitBcr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR`` command. + + Description: + - This command sets or queries the value of the broadcast command received bit (BCR bit, + bit 15) in a status word for a MIL-STD-1553 bus to search on. The search number is + specified by x. The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR?`` 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:BUS:MIL1553B:STATus:BIT:BCR value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR? + ``` + + Info: + - ``ONE`` filters status words to only match those where the BCR bit has a value of 1. + - ``ZERo`` filters status words to only match those where the BCR bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the BCR bit. + """ + return self._bcr + + @property + def busy(self) -> SearchSearchItemTriggerABusMil1553bStatusBitBusy: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY`` command. + + Description: + - This command sets or queries the value of the busy bit (BUSY bit, bit 16) in a status + word for a MIL-STD-1553 bus to search on. The search number is specified by x. The + search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY?`` 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:BUS:MIL1553B:STATus:BIT:BUSY value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY? + ``` + + Info: + - ``ONE`` filters status words to only match those where the BUSY bit has a value of 1. + - ``ZERo`` filters status words to only match those where the BUSY bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the BUSY bit. + """ + return self._busy + + @property + def dbca(self) -> SearchSearchItemTriggerABusMil1553bStatusBitDbca: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA`` command. + + Description: + - This command sets or queries the value of the dynamic bus control acceptance bit (DBCA + bit, bit 18) in a status word for a MIL-STD-1553 bus to search on. The search number + is specified by x. The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA?`` 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:BUS:MIL1553B:STATus:BIT:DBCA value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA? + ``` + + Info: + - ``ONE`` filters status words to only match those where the DBCA bit has a value of 1. + - ``ZERo`` filters status words to only match those where the DBCA bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the DBCA bit. + """ + return self._dbca + + @property + def instr(self) -> SearchSearchItemTriggerABusMil1553bStatusBitInstr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR`` command. + + Description: + - This command sets or queries the value of the instrumentation bit (INSTR bit, bit 10) + in a status word for a MIL-STD-1553 bus to search on. The search number is specified + by x. The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR?`` 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:BUS:MIL1553B:STATus:BIT:INSTR value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR? + ``` + + Info: + - ``ONE`` filters status words to only match those where the INSTR bit has a value of 1. + - ``ZERo`` filters status words to only match those where the INSTR bit has a value of + 0. + - ``NOCARE`` disables filtering of status words on the INSTR bit. + """ + return self._instr + + @property + def me(self) -> SearchSearchItemTriggerABusMil1553bStatusBitMe: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME`` command. + + Description: + - This command sets or queries the value of the message error bit (ME bit, bit 9) in a + status word for a MIL-STD-1553 bus to search on. The search number is specified by x. + The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME?`` 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:BUS:MIL1553B:STATus:BIT:ME value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME? + ``` + + Info: + - ``ONE`` filters status words to only match those where the ME bit has a value of 1. + - ``ZERo`` filters status words to only match those where the ME bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the ME bit. + """ + return self._me + + @property + def srq(self) -> SearchSearchItemTriggerABusMil1553bStatusBitSrq: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ`` command. + + Description: + - This command sets or queries the value of the status word service request bit (SRQ + bit, bit 11) in a status word for a MIL-STD-1553 bus to search on. The search number + is specified by x. The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ?`` 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:BUS:MIL1553B:STATus:BIT:SRQ value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ? + ``` + + Info: + - ``ONE`` filters status words to only match those where the SRQ bit has a value of 1. + - ``ZERo`` filters status words to only match those where the SRQ bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the SRQ bit. + """ + return self._srq + + @property + def subsf(self) -> SearchSearchItemTriggerABusMil1553bStatusBitSubsf: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF`` command. + + Description: + - This command sets or queries the value of the subsystem flag bit (SUBSF bit, bit 17) + in a status word for a MIL-STD-1553 bus to search on. The search number is specified + by x>. The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF?`` 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:BUS:MIL1553B:STATus:BIT:SUBSF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF? + ``` + + Info: + - ``ONE`` filters status words to only match those where the SUBSF bit has a value of 1. + - ``ZERo`` filters status words to only match those where the SUBSF bit has a value of + 0. + - ``NOCARE`` disables filtering of status words on the SUBSF bit. + """ + return self._subsf + + @property + def tf(self) -> SearchSearchItemTriggerABusMil1553bStatusBitTf: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF`` command. + + Description: + - This command sets or queries the value of the terminal flag bit (TF bit, bit 19) in a + status word for a MIL-STD-1553 bus to search on. The search number is specified by x. + The search condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF?`` 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:BUS:MIL1553B:STATus:BIT:TF value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF? + ``` + + Info: + - ``ONE`` filters status words to only match those where the TF bit has a value of 1. + - ``ZERo`` filters status words to only match those where the TF bit has a value of 0. + - ``NOCARE`` disables filtering of status words on the TF bit. + """ + return self._tf + + +class SearchSearchItemTriggerABusMil1553bStatusAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue`` command. + + Description: + - This command sets or queries the low value when searching on status word addresses for a + MIL-STD-1553 bus. The search number is specified by x. The search condition must be set to + STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue?`` 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:BUS:MIL1553B:STATus:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue? + ``` + + Info: + - ```` is the address value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMil1553bStatusAddressQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier`` command. + + Description: + - This command sets or queries the qualifier used when searching on status word addresses + for a MIL-STD-1553 bus. The search number is specified by x. The search condition must be + set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier?`` 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:BUS:MIL1553B:STATus:ADDRess:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusMil1553bStatusAddressHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on status word addresses for a + MIL-STD-1553 bus. The search number is specified by x. The search condition must be set to + STATus and the address qualifier must be INrange or OUTrange. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue?`` 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:BUS:MIL1553B:STATus:ADDRess:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue? + ``` + + Info: + - ```` is the address value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMil1553bStatusAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue`` + command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusMil1553bStatusAddressHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusMil1553bStatusAddressQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusMil1553bStatusAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusMil1553bStatusAddressHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on status word addresses + for a MIL-STD-1553 bus. The search number is specified by x. The search condition must + be set to STATus and the address qualifier must be INrange or OUTrange. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue?`` 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:BUS:MIL1553B:STATus:ADDRess:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue? + ``` + + Info: + - ```` is the address value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusMil1553bStatusAddressQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier`` command. + + Description: + - This command sets or queries the qualifier used when searching on status word + addresses for a MIL-STD-1553 bus. The search number is specified by x. The search + condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier?`` 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:BUS:MIL1553B:STATus:ADDRess:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier out of range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusMil1553bStatusAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue`` command. + + Description: + - This command sets or queries the low value when searching on status word addresses for + a MIL-STD-1553 bus. The search number is specified by x. The search condition must be + set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue?`` 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:BUS:MIL1553B:STATus:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue? + ``` + + Info: + - ```` is the address value. + """ + return self._value + + +class SearchSearchItemTriggerABusMil1553bStatus(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess`` command tree. + - ``.bit``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT`` command tree. + - ``.parity``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusMil1553bStatusAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + self._bit = SearchSearchItemTriggerABusMil1553bStatusBit(device, f"{self._cmd_syntax}:BIT") + self._parity = SearchSearchItemTriggerABusMil1553bStatusParity( + device, f"{self._cmd_syntax}:PARity" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusMil1553bStatusAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:HIVALue`` + command. + - ``.qualifier``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:QUALifier`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess:VALue`` + command. + """ + return self._address + + @property + def bit(self) -> SearchSearchItemTriggerABusMil1553bStatusBit: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BCR`` command. + - ``.busy``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:BUSY`` command. + - ``.dbca``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:DBCA`` command. + - ``.instr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:INSTR`` command. + - ``.me``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:ME`` command. + - ``.srq``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SRQ`` command. + - ``.subsf``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:SUBSF`` command. + - ``.tf``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT:TF`` command. + """ + return self._bit + + @property + def parity(self) -> SearchSearchItemTriggerABusMil1553bStatusParity: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity`` command. + + Description: + - This command sets or queries the value of the status word parity bit for a + MIL-STD-1553 bus to search on. The search number is specified by x. The search + condition must be set to STATus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity?`` 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:BUS:MIL1553B:STATus:PARity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity? + ``` + + Info: + - ``ONE`` filters status words to only match those where the parity bit has a value of + 1. + - ``ZERo`` filters status words to only match those where the parity bit has a value of + 0. + - ``NOCARE`` disables filtering of status words on the parity bit. + """ + return self._parity + + +class SearchSearchItemTriggerABusMil1553bErrtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe`` command. + + Description: + - This command sets or queries the type of error condition for a MIL-STD-1553 bus to search + on. The search number is specified by x. The search condition must be set to ERRor. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe?`` 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:BUS:MIL1553B:ERRTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe {PARity|SYNC|DATA} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe? + ``` + + Info: + - ``PARity`` specifies searching for an incorrectly calculated parity bit in any word. + - ``SYNC`` specifies searching for any sync pulse that does not transition in the middle of + the pulse as required. + - ``DATA`` specifies searching for any non-contiguous data words. + """ + + +class SearchSearchItemTriggerABusMil1553bDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue`` command. + + Description: + - This command sets or queries the value when searching on data words for a MIL-STD-1553 + bus. The search number is specified by x. The search condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue?`` 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:BUS:MIL1553B:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue? + ``` + + Info: + - ```` is the data value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMil1553bDataParity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity`` command. + + Description: + - This command sets or queries the value of the command word parity bit for a MIL-STD-1553 + bus to search on. The search number is specified by x. The search condition must be set to + DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity?`` 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:BUS:MIL1553B:DATa:PARity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity? + ``` + + Info: + - ``ONE`` filters data words to only match those where the parity bit has a value of 1. + - ``ZERo`` filters data words to only match those where the parity bit has a value of 0. + - ``NOCARE`` disables filtering of data words on the parity bit. + """ + + +class SearchSearchItemTriggerABusMil1553bData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.parity``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._parity = SearchSearchItemTriggerABusMil1553bDataParity( + device, f"{self._cmd_syntax}:PARity" + ) + self._value = SearchSearchItemTriggerABusMil1553bDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def parity(self) -> SearchSearchItemTriggerABusMil1553bDataParity: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity`` command. + + Description: + - This command sets or queries the value of the command word parity bit for a + MIL-STD-1553 bus to search on. The search number is specified by x. The search + condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity?`` 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:BUS:MIL1553B:DATa:PARity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity? + ``` + + Info: + - ``ONE`` filters data words to only match those where the parity bit has a value of 1. + - ``ZERo`` filters data words to only match those where the parity bit has a value of 0. + - ``NOCARE`` disables filtering of data words on the parity bit. + """ + return self._parity + + @property + def value(self) -> SearchSearchItemTriggerABusMil1553bDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue`` command. + + Description: + - This command sets or queries the value when searching on data words for a MIL-STD-1553 + bus. The search number is specified by x. The search condition must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue?`` 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:BUS:MIL1553B:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue? + ``` + + Info: + - ```` is the data value. + """ + return self._value + + +class SearchSearchItemTriggerABusMil1553bCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition`` command. + + Description: + - This command sets or queries the field or condition for a MIL-STD-1553 bus to search on. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition?`` 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:BUS:MIL1553B:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition {SYNC|COMMAND|STATus|DATA|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition? + ``` + + Info: + - ``SYNC`` specifies a search for the sync pulse of any word. + - ``COMMAND`` specifies a search for a matching command word. + - ``STATus`` specifies a search for a matching status word. + - ``DATA`` specifies a search for a matching data word. + - ``ERRor`` specifies a search for a specified error condition. + """ + + +class SearchSearchItemTriggerABusMil1553bCommandTrbit(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit`` command. + + Description: + - This command sets or queries the value of the command word Transmit / Receive bit for a + MIL-STD-1553 bus to search on. The search number is specified by x. The search condition + must be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit?`` 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:BUS:MIL1553B:COMMAND:TRBit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit {RX|TX|X} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit? + ``` + + Info: + - ``RX`` filters command words to only match those that are receive packets. + - ``TX`` filters command words to only match those that are transmit packets. + - ``X`` disables filtering of command words on the R/T bit. + """ + + +class SearchSearchItemTriggerABusMil1553bCommandSubaddress(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress`` command. + + Description: + - This command sets or queries the value of the command word subaddress field for a + MIL-STD-1553 bus to search on. The search number is specified by x. The search condition + must be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress?`` 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:BUS:MIL1553B:COMMAND:SUBADdress value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress? + ``` + + Info: + - ```` is the word count value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMil1553bCommandParity(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity`` command. + + Description: + - This command sets or queries the value of the command word parity bit for a MIL-STD-1553 + bus to search on. The search number is specified by x. The search condition must be set to + COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity?`` 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:BUS:MIL1553B:COMMAND:PARity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity? + ``` + + Info: + - ``ONE`` filters command words to only match those where the parity bit has a value of 1. + - ``ZERo`` filters command words to only match those where the parity bit has a value of 0. + - ``NOCARE`` disables filtering of command words on the parity bit. + """ + + +class SearchSearchItemTriggerABusMil1553bCommandCount(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt`` command. + + Description: + - This command sets or queries the value of the command word 'word count' field for a + MIL-STD-1553 bus to search on. The search number is specified by x. The search condition + must be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt?`` 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:BUS:MIL1553B:COMMAND:COUNt value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt? + ``` + + Info: + - ```` is the word count value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMil1553bCommandAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue`` command. + + Description: + - This command sets or queries the low value when searching on command word addresses for a + MIL-STD-1553 bus. The search number is specified by x. The search condition must be set to + COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue?`` 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:BUS:MIL1553B:COMMAND:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue? + ``` + + Info: + - ```` is the address value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMil1553bCommandAddressQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on command word + addresses for a MIL-STD-1553 bus. The search number is specified by x. The search + condition must be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier?`` 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:BUS:MIL1553B:COMMAND:ADDRess:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusMil1553bCommandAddressHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on command word addresses for a + MIL-STD-1553 bus. The search number is specified by x. The search condition must be set to + COMMAND, and the address qualifier must be INrange or OUTrange. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue?`` 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:BUS:MIL1553B:COMMAND:ADDRess:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue? + ``` + + Info: + - ```` is the address value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMil1553bCommandAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue`` + command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusMil1553bCommandAddressHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusMil1553bCommandAddressQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusMil1553bCommandAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusMil1553bCommandAddressHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on command word addresses + for a MIL-STD-1553 bus. The search number is specified by x. The search condition must + be set to COMMAND, and the address qualifier must be INrange or OUTrange. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue?`` 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:BUS:MIL1553B:COMMAND:ADDRess:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue? + ``` + + Info: + - ```` is the address value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusMil1553bCommandAddressQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on command word + addresses for a MIL-STD-1553 bus. The search number is specified by x. The search + condition must be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier?`` 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:BUS:MIL1553B:COMMAND:ADDRess:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier out of range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusMil1553bCommandAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue`` command. + + Description: + - This command sets or queries the low value when searching on command word addresses + for a MIL-STD-1553 bus. The search number is specified by x. The search condition must + be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue?`` 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:BUS:MIL1553B:COMMAND:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue? + ``` + + Info: + - ```` is the address value. + """ + return self._value + + +class SearchSearchItemTriggerABusMil1553bCommand(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess`` command + tree. + - ``.count``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt`` command. + - ``.parity``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity`` command. + - ``.subaddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress`` + command. + - ``.trbit``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusMil1553bCommandAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + self._count = SearchSearchItemTriggerABusMil1553bCommandCount( + device, f"{self._cmd_syntax}:COUNt" + ) + self._parity = SearchSearchItemTriggerABusMil1553bCommandParity( + device, f"{self._cmd_syntax}:PARity" + ) + self._subaddress = SearchSearchItemTriggerABusMil1553bCommandSubaddress( + device, f"{self._cmd_syntax}:SUBADdress" + ) + self._trbit = SearchSearchItemTriggerABusMil1553bCommandTrbit( + device, f"{self._cmd_syntax}:TRBit" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusMil1553bCommandAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:HIVALue`` + command. + - ``.qualifier``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:QUALifier`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess:VALue`` + command. + """ + return self._address + + @property + def count(self) -> SearchSearchItemTriggerABusMil1553bCommandCount: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt`` command. + + Description: + - This command sets or queries the value of the command word 'word count' field for a + MIL-STD-1553 bus to search on. The search number is specified by x. The search + condition must be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt?`` 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:BUS:MIL1553B:COMMAND:COUNt value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt? + ``` + + Info: + - ```` is the word count value. + """ + return self._count + + @property + def parity(self) -> SearchSearchItemTriggerABusMil1553bCommandParity: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity`` command. + + Description: + - This command sets or queries the value of the command word parity bit for a + MIL-STD-1553 bus to search on. The search number is specified by x. The search + condition must be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity?`` 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:BUS:MIL1553B:COMMAND:PARity value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity? + ``` + + Info: + - ``ONE`` filters command words to only match those where the parity bit has a value of + 1. + - ``ZERo`` filters command words to only match those where the parity bit has a value of + 0. + - ``NOCARE`` disables filtering of command words on the parity bit. + """ + return self._parity + + @property + def subaddress(self) -> SearchSearchItemTriggerABusMil1553bCommandSubaddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress`` command. + + Description: + - This command sets or queries the value of the command word subaddress field for a + MIL-STD-1553 bus to search on. The search number is specified by x. The search + condition must be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress?`` 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:BUS:MIL1553B:COMMAND:SUBADdress value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress? + ``` + + Info: + - ```` is the word count value. + """ + return self._subaddress + + @property + def trbit(self) -> SearchSearchItemTriggerABusMil1553bCommandTrbit: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit`` command. + + Description: + - This command sets or queries the value of the command word Transmit / Receive bit for + a MIL-STD-1553 bus to search on. The search number is specified by x. The search + condition must be set to COMMAND. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit?`` 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:BUS:MIL1553B:COMMAND:TRBit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit {RX|TX|X} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit? + ``` + + Info: + - ``RX`` filters command words to only match those that are receive packets. + - ``TX`` filters command words to only match those that are transmit packets. + - ``X`` disables filtering of command words on the R/T bit. + """ + return self._trbit + + +class SearchSearchItemTriggerABusMil1553b(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe`` command. + - ``.status``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._command = SearchSearchItemTriggerABusMil1553bCommand( + device, f"{self._cmd_syntax}:COMMAND" + ) + self._condition = SearchSearchItemTriggerABusMil1553bCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusMil1553bData(device, f"{self._cmd_syntax}:DATa") + self._errtype = SearchSearchItemTriggerABusMil1553bErrtype( + device, f"{self._cmd_syntax}:ERRTYPe" + ) + self._status = SearchSearchItemTriggerABusMil1553bStatus( + device, f"{self._cmd_syntax}:STATus" + ) + + @property + def command(self) -> SearchSearchItemTriggerABusMil1553bCommand: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:ADDRess`` command + tree. + - ``.count``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:COUNt`` command. + - ``.parity``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:PARity`` command. + - ``.subaddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:SUBADdress`` + command. + - ``.trbit``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND:TRBit`` command. + """ + return self._command + + @property + def condition(self) -> SearchSearchItemTriggerABusMil1553bCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition`` command. + + Description: + - This command sets or queries the field or condition for a MIL-STD-1553 bus to search + on. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition?`` 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:BUS:MIL1553B:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition {SYNC|COMMAND|STATus|DATA|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition? + ``` + + Info: + - ``SYNC`` specifies a search for the sync pulse of any word. + - ``COMMAND`` specifies a search for a matching command word. + - ``STATus`` specifies a search for a matching status word. + - ``DATA`` specifies a search for a matching data word. + - ``ERRor`` specifies a search for a specified error condition. + """ + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusMil1553bData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.parity``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:PARity`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa:VALue`` command. + """ + return self._data + + @property + def errtype(self) -> SearchSearchItemTriggerABusMil1553bErrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe`` command. + + Description: + - This command sets or queries the type of error condition for a MIL-STD-1553 bus to + search on. The search number is specified by x. The search condition must be set to + ERRor. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe?`` 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:BUS:MIL1553B:ERRTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe {PARity|SYNC|DATA} + - SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe? + ``` + + Info: + - ``PARity`` specifies searching for an incorrectly calculated parity bit in any word. + - ``SYNC`` specifies searching for any sync pulse that does not transition in the middle + of the pulse as required. + - ``DATA`` specifies searching for any non-contiguous data words. + """ + return self._errtype + + @property + def status(self) -> SearchSearchItemTriggerABusMil1553bStatus: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:ADDRess`` command + tree. + - ``.bit``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:BIT`` command tree. + - ``.parity``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus:PARity`` command. + """ + return self._status + + +class SearchSearchItemTriggerABusMdioRegisteraddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue`` command. + + Description: + - This command specifies the binary register address string used for MDIO triggering if the + trigger condition is register address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue?`` 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:BUS:MDIO:REGisteraddress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue? + ``` + + Info: + - ```` is the register address value. Default register address value is XXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMdioRegisteraddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusMdioRegisteraddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusMdioRegisteraddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue`` command. + + Description: + - This command specifies the binary register address string used for MDIO triggering if + the trigger condition is register address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue?`` 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:BUS:MDIO:REGisteraddress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue? + ``` + + Info: + - ```` is the register address value. Default register address value is XXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusMdioPhysicaladdressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue`` command. + + Description: + - This command specifies the binary physical address string used for MDIO triggering if the + trigger condition is physical address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue?`` 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:BUS:MDIO:PHYSicaladdress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue? + ``` + + Info: + - ```` is the physical address value. Default physical address value is XXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMdioPhysicaladdress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusMdioPhysicaladdressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusMdioPhysicaladdressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue`` command. + + Description: + - This command specifies the binary physical address string used for MDIO triggering if + the trigger condition is physical address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue?`` 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:BUS:MDIO:PHYSicaladdress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue? + ``` + + Info: + - ```` is the physical address value. Default physical address value is XXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusMdioOpcodeValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue`` command. + + Description: + - This command specifies the binary op-code string used for MDIO triggering if the trigger + condition is op-code. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue?`` 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:BUS:MDIO:OPCode:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue? + ``` + + Info: + - ```` is the op-code value. Default op-code value is XX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMdioOpcode(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusMdioOpcodeValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusMdioOpcodeValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue`` command. + + Description: + - This command specifies the binary op-code string used for MDIO triggering if the + trigger condition is op-code. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue?`` 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:BUS:MDIO:OPCode:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue? + ``` + + Info: + - ```` is the op-code value. Default op-code value is XX. + """ + return self._value + + +class SearchSearchItemTriggerABusMdioErrtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType`` command. + + Description: + - This command sets or queries the error type to be used when triggering on MDIO data. This + applies when the MDIO bus trigger condition is set to ERRor. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType?`` 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:BUS:MDIO:ERRType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType {OPCODEERRor|DEVERRor|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType? + ``` + + Info: + - ``OPCODEERRor`` specifies OPCODEERRor as the field within a MDIO frame to search on. This + is the default trigger on condition. + - ``DEVERRor`` specifies DEVERRor as the field within a MDIO frame to search on. + - ``ANY`` specifies ANY as the field within a MDIO frame to search on. + """ + + +class SearchSearchItemTriggerABusMdioDevicetypeValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue`` command. + + Description: + - This command specifies the binary device type string used for MDIO triggering if the + trigger condition is Device type. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue?`` 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:BUS:MDIO:DEVicetype:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue? + ``` + + Info: + - ```` is the device type. Default value is XXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMdioDevicetype(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusMdioDevicetypeValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusMdioDevicetypeValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue`` command. + + Description: + - This command specifies the binary device type string used for MDIO triggering if the + trigger condition is Device type. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue?`` 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:BUS:MDIO:DEVicetype:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue? + ``` + + Info: + - ```` is the device type. Default value is XXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusMdioDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for MDIO triggering if the trigger + condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue?`` 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:BUS:MDIO:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue? + ``` + + Info: + - ```` is the data value. Default value is XXXXXXXXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMdioData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusMdioDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusMdioDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for MDIO triggering if the trigger + condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue?`` 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:BUS:MDIO:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue? + ``` + + Info: + - ```` is the data value. Default value is XXXXXXXXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusMdioCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for MDIO bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition?`` 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:BUS:MDIO:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition {STARTPACKet|PHYSICALADDRess|REGISTERADDRess|DEVICETYPe|DATA|ADDRess|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition? + ``` + + Info: + - ``STARTPACKet`` specifies STARTPACKet as the field within a MDIO frame to search on. This + is the default trigger on condition. + - ``PHYSICALADDRess`` specifies PHYSICALADDRess as the field within a MDIO frame to search + on. + - ``REGISTERADDRess`` specifies REGISTERADDRess as the field within a MDIO frame to search + on. + - ``DEVICETYPe`` specifies DEVICETYPe as the field within a MDIO frame to search on. + - ``DATA`` specifies DATA as the field within a MDIO frame to search on. + - ``ADDRess`` specifies ADDRess as the field within a MDIO frame to search on. + - ``ERRor`` specifies ERRor as the field within a MDIO frame to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusMdioAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue`` command. + + Description: + - This command specifies the binary address string used for MDIO triggering if the trigger + condition is address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue?`` 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:BUS:MDIO:ADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue? + ``` + + Info: + - ```` is the address value. Default address value is XXXXXXXXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusMdioAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusMdioAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusMdioAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue`` command. + + Description: + - This command specifies the binary address string used for MDIO triggering if the + trigger condition is address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue?`` 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:BUS:MDIO:ADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue? + ``` + + Info: + - ```` is the address value. Default address value is XXXXXXXXXXXXXXXX. + """ + return self._value + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusMdio(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa`` command tree. + - ``.devicetype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType`` command. + - ``.opcode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode`` command tree. + - ``.physicaladdress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress`` command + tree. + - ``.registeraddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress`` command + tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusMdioAddress( + device, f"{self._cmd_syntax}:ADDress" + ) + self._condition = SearchSearchItemTriggerABusMdioCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusMdioData(device, f"{self._cmd_syntax}:DATa") + self._devicetype = SearchSearchItemTriggerABusMdioDevicetype( + device, f"{self._cmd_syntax}:DEVicetype" + ) + self._errtype = SearchSearchItemTriggerABusMdioErrtype( + device, f"{self._cmd_syntax}:ERRType" + ) + self._opcode = SearchSearchItemTriggerABusMdioOpcode(device, f"{self._cmd_syntax}:OPCode") + self._physicaladdress = SearchSearchItemTriggerABusMdioPhysicaladdress( + device, f"{self._cmd_syntax}:PHYSicaladdress" + ) + self._registeraddress = SearchSearchItemTriggerABusMdioRegisteraddress( + device, f"{self._cmd_syntax}:REGisteraddress" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusMdioAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress:VALue`` command. + """ + return self._address + + @property + def condition(self) -> SearchSearchItemTriggerABusMdioCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for MDIO bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition?`` 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:BUS:MDIO:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition {STARTPACKet|PHYSICALADDRess|REGISTERADDRess|DEVICETYPe|DATA|ADDRess|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition? + ``` + + Info: + - ``STARTPACKet`` specifies STARTPACKet as the field within a MDIO frame to search on. + This is the default trigger on condition. + - ``PHYSICALADDRess`` specifies PHYSICALADDRess as the field within a MDIO frame to + search on. + - ``REGISTERADDRess`` specifies REGISTERADDRess as the field within a MDIO frame to + search on. + - ``DEVICETYPe`` specifies DEVICETYPe as the field within a MDIO frame to search on. + - ``DATA`` specifies DATA as the field within a MDIO frame to search on. + - ``ADDRess`` specifies ADDRess as the field within a MDIO frame to search on. + - ``ERRor`` specifies ERRor as the field within a MDIO frame to search on. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusMdioData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa:VALue`` command. + """ + return self._data + + @property + def devicetype(self) -> SearchSearchItemTriggerABusMdioDevicetype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype:VALue`` command. + """ + return self._devicetype + + @property + def errtype(self) -> SearchSearchItemTriggerABusMdioErrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType`` command. + + Description: + - This command sets or queries the error type to be used when triggering on MDIO data. + This applies when the MDIO bus trigger condition is set to ERRor. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType?`` 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:BUS:MDIO:ERRType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType {OPCODEERRor|DEVERRor|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType? + ``` + + Info: + - ``OPCODEERRor`` specifies OPCODEERRor as the field within a MDIO frame to search on. + This is the default trigger on condition. + - ``DEVERRor`` specifies DEVERRor as the field within a MDIO frame to search on. + - ``ANY`` specifies ANY as the field within a MDIO frame to search on. + """ + return self._errtype + + @property + def opcode(self) -> SearchSearchItemTriggerABusMdioOpcode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode:VALue`` command. + """ + return self._opcode + + @property + def physicaladdress(self) -> SearchSearchItemTriggerABusMdioPhysicaladdress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress:VALue`` command. + """ + return self._physicaladdress + + @property + def registeraddress(self) -> SearchSearchItemTriggerABusMdioRegisteraddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress:VALue`` command. + """ + return self._registeraddress + + +class SearchSearchItemTriggerABusManchesterPacketoffdataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is DATA. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue?`` 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:BUS:MANChester:packetOffData:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue? + ``` + + Info: + - ```` specifies the data string in a valid format. + """ + + +class SearchSearchItemTriggerABusManchesterPacketoffdata(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusManchesterPacketoffdataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusManchesterPacketoffdataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is DATA. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue?`` 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:BUS:MANChester:packetOffData:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue? + ``` + + Info: + - ```` specifies the data string in a valid format. + """ + return self._value + + +class SearchSearchItemTriggerABusManchesterTrailerValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is Trailer when searching on an Manchester signal. The search condition needs to + be set to Trailer. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue?`` 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:BUS:MANChester:TRAILER:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue? + ``` + + Info: + - ```` specifies the data string in a valid format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusManchesterTrailer(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusManchesterTrailerValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusManchesterTrailerValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is Trailer when searching on an Manchester signal. The search condition + needs to be set to Trailer. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue?`` 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:BUS:MANChester:TRAILER:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue? + ``` + + Info: + - ```` specifies the data string in a valid format. + """ + return self._value + + +class SearchSearchItemTriggerABusManchesterSyncValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is Sync when searching on an Manchester signal. The search condition needs to be + set to Sync. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue?`` 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:BUS:MANChester:SYNC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue? + ``` + + Info: + - ```` specifies the data string in a valid format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusManchesterSync(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusManchesterSyncValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusManchesterSyncValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is Sync when searching on an Manchester signal. The search condition needs + to be set to Sync. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue?`` 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:BUS:MANChester:SYNC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue? + ``` + + Info: + - ```` specifies the data string in a valid format. + """ + return self._value + + +class SearchSearchItemTriggerABusManchesterHeaderValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is header when searching on an Manchester signal. The search condition needs to + be set to header. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue?`` 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:BUS:MANChester:HEADER:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue? + ``` + + Info: + - ```` is the header value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusManchesterHeader(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusManchesterHeaderValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusManchesterHeaderValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is header when searching on an Manchester signal. The search condition needs + to be set to header. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue?`` 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:BUS:MANChester:HEADER:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue? + ``` + + Info: + - ```` is the header value. + """ + return self._value + + +class SearchSearchItemTriggerABusManchesterErrorType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error to be used when searching on a Manchester signal. + The search condition must be set to error. Parity error identifies odd and even parity. + The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe?`` 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:BUS:MANChester:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe {MANChester|PARity} + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe? + ``` + + Info: + - ``MANChester`` sets the error type to Manchester. + - ``PARity`` sets the error type to parity. + """ + + +class SearchSearchItemTriggerABusManchesterError(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusManchesterErrorType( + device, f"{self._cmd_syntax}:TYPe" + ) + + @property + def type(self) -> SearchSearchItemTriggerABusManchesterErrorType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error to be used when searching on a Manchester + signal. The search condition must be set to error. Parity error identifies odd and + even parity. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe?`` 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:BUS:MANChester:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe {MANChester|PARity} + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe? + ``` + + Info: + - ``MANChester`` sets the error type to Manchester. + - ``PARity`` sets the error type to parity. + """ + return self._type + + +class SearchSearchItemTriggerABusManchesterDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is data when searching on an Manchester signal. The search condition needs to be + set to data. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue?`` 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:BUS:MANChester:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue? + ``` + + Info: + - ```` is the data value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusManchesterDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe`` command. + + Description: + - This command specifies the number of bits per word for the specified Manchester bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe?`` 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:BUS:MANChester:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data string in a valid format. The minimum and default values are + 1. The maximum value is 5. + """ + + +class SearchSearchItemTriggerABusManchesterData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusManchesterDataSize( + device, f"{self._cmd_syntax}:SIZe" + ) + self._value = SearchSearchItemTriggerABusManchesterDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusManchesterDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe`` command. + + Description: + - This command specifies the number of bits per word for the specified Manchester bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe?`` 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:BUS:MANChester:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe? + ``` + + Info: + - ``Search`` is the number of the search. + - ```` specifies the data string in a valid format. The minimum and default values + are 1. The maximum value is 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusManchesterDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue`` command. + + Description: + - This command specifies the binary string used for Manchester triggering if the trigger + condition is data when searching on an Manchester signal. The search condition needs + to be set to data. The search number is specified by . + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue?`` 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:BUS:MANChester:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue? + ``` + + Info: + - ```` is the data value. + """ + return self._value + + +class SearchSearchItemTriggerABusManchesterCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition`` command. + + Description: + - This command specifies a field or condition for an Manchester bus to search on. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition?`` 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:BUS:MANChester:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition {SYNCBITS|HEADer|DATa|packetOffData|TRAiler|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition? + ``` + + Info: + - ``SYNCBITS`` specifies Sync Bits symbols as the field within an Manchester frame to search + on. + - ``HEADer`` specifies header symbols as the field within an Manchester frame to search on. + - ``DATa`` specifies data symbols as the field within an Manchester frame to search on. + - ``packetOffData`` specifies the binary string used for Manchester triggering if the + trigger condition is DATA. + - ``TRAiler`` specifies trailer symbols as the field within an Manchester frame to search + on. + - ``ERRors`` specifies error symbols as the field within an Manchester frame to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusManchester(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor`` command tree. + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER`` command tree. + - ``.sync``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC`` command tree. + - ``.trailer``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER`` command tree. + - ``.packetoffdata``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData`` + command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusManchesterCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusManchesterData(device, f"{self._cmd_syntax}:DATa") + self._error = SearchSearchItemTriggerABusManchesterError( + device, f"{self._cmd_syntax}:ERRor" + ) + self._header = SearchSearchItemTriggerABusManchesterHeader( + device, f"{self._cmd_syntax}:HEADER" + ) + self._sync = SearchSearchItemTriggerABusManchesterSync(device, f"{self._cmd_syntax}:SYNC") + self._trailer = SearchSearchItemTriggerABusManchesterTrailer( + device, f"{self._cmd_syntax}:TRAILER" + ) + self._packetoffdata = SearchSearchItemTriggerABusManchesterPacketoffdata( + device, f"{self._cmd_syntax}:packetOffData" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusManchesterCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition`` command. + + Description: + - This command specifies a field or condition for an Manchester bus to search on. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition?`` 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:BUS:MANChester:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition {SYNCBITS|HEADer|DATa|packetOffData|TRAiler|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition? + ``` + + Info: + - ``SYNCBITS`` specifies Sync Bits symbols as the field within an Manchester frame to + search on. + - ``HEADer`` specifies header symbols as the field within an Manchester frame to search + on. + - ``DATa`` specifies data symbols as the field within an Manchester frame to search on. + - ``packetOffData`` specifies the binary string used for Manchester triggering if the + trigger condition is DATA. + - ``TRAiler`` specifies trailer symbols as the field within an Manchester frame to + search on. + - ``ERRors`` specifies error symbols as the field within an Manchester frame to search + on. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusManchesterData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa:VALue`` command. + """ + return self._data + + @property + def error(self) -> SearchSearchItemTriggerABusManchesterError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor:TYPe`` command. + """ + return self._error + + @property + def header(self) -> SearchSearchItemTriggerABusManchesterHeader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER:VALue`` command. + """ + return self._header + + @property + def sync(self) -> SearchSearchItemTriggerABusManchesterSync: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC:VALue`` command. + """ + return self._sync + + @property + def trailer(self) -> SearchSearchItemTriggerABusManchesterTrailer: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER:VALue`` command. + """ + return self._trailer + + @property + def packetoffdata(self) -> SearchSearchItemTriggerABusManchesterPacketoffdata: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData:VALue`` + command. + """ + return self._packetoffdata + + +class SearchSearchItemTriggerABusLinIdentifierValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue`` command. + + Description: + - This command sets or queries the string used for a LIN bus identifier value. The search + number is specified by x. The search condition must be IDENTIFIER or IDANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue?`` 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:BUS:LIN:IDentifier:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue? + ``` + + Info: + - ```` specifies the identifier value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusLinIdentifier(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusLinIdentifierValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusLinIdentifierValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue`` command. + + Description: + - This command sets or queries the string used for a LIN bus identifier value. The + search number is specified by x. The search condition must be IDENTIFIER or IDANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue?`` 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:BUS:LIN:IDentifier:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue? + ``` + + Info: + - ```` specifies the identifier value. + """ + return self._value + + +class SearchSearchItemTriggerABusLinErrtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE`` command. + + Description: + - This command sets or queries the error type for a LIN bus search. The search number is + specified by x. The search condition must be set to ERROR. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE?`` 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:BUS:LIN:ERRTYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE {CHecksum|PARity|SYNC} + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE? + ``` + + Info: + - ``CHecksum`` specifies the error type is checksum. + - ``PARity`` specifies the error type is parity. + - ``SYNC`` specifies the error type is sync. + """ + + +class SearchSearchItemTriggerABusLinDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue`` command. + + Description: + - This command sets or queries the data string used for a LIN bus search. The search number + is specified by x. The search condition must be DATA or IDANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue?`` 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:BUS:LIN:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue? + ``` + + Info: + - ```` specifies the data value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusLinDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the stat string in bytes used for a LIN bus + search. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe?`` 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:BUS:LIN:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. + """ + + +class SearchSearchItemTriggerABusLinDataQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier`` command. + + Description: + - This command sets or queries the data qualifier used in a LIN bus search. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier?`` 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:BUS:LIN:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier {EQual|LESSEQual|MOREEQual|UNEQual|LESSthan|MOREthan|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusLinDataHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue`` command. + + Description: + - This command sets or queries the high data value string used in a LIN bus search. The + search number is specified by x. The search condition must be DATA or IDANDDATA and the + data qualifier must be INRANGE or OUTRANGE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue?`` 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:BUS:LIN:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue? + ``` + + Info: + - ```` is a quoted string of 1s, 0s, or Xs representing the binary data string to + be used in a LIN search if the search condition is IDentifier or IDANDDATA (identifier and + data). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusLinData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusLinDataHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusLinDataQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._size = SearchSearchItemTriggerABusLinDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusLinDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def hivalue(self) -> SearchSearchItemTriggerABusLinDataHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue`` command. + + Description: + - This command sets or queries the high data value string used in a LIN bus search. The + search number is specified by x. The search condition must be DATA or IDANDDATA and + the data qualifier must be INRANGE or OUTRANGE. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue?`` 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:BUS:LIN:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue? + ``` + + Info: + - ```` is a quoted string of 1s, 0s, or Xs representing the binary data string + to be used in a LIN search if the search condition is IDentifier or IDANDDATA + (identifier and data). + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusLinDataQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier`` command. + + Description: + - This command sets or queries the data qualifier used in a LIN bus search. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier?`` 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:BUS:LIN:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier {EQual|LESSEQual|MOREEQual|UNEQual|LESSthan|MOREthan|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier out of range. + """ # noqa: E501 + return self._qualifier + + @property + def size(self) -> SearchSearchItemTriggerABusLinDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the stat string in bytes used for a LIN bus + search. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe?`` 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:BUS:LIN:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusLinDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue`` command. + + Description: + - This command sets or queries the data string used for a LIN bus search. The search + number is specified by x. The search condition must be DATA or IDANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue?`` 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:BUS:LIN:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue? + ``` + + Info: + - ```` specifies the data value. + """ + return self._value + + +class SearchSearchItemTriggerABusLinCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition`` command. + + Description: + - This command sets or queries the condition for a LIN bus search. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition?`` 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:BUS:LIN:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition {DATA|IDANDDATA|ERRor|IDentifier|SLEEP|SYNCfield|WAKEup} + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition? + ``` + + Info: + - ``DATA`` sets the trigger condition to data. + - ``IDANDDATA`` sets the trigger condition to ID and data. + - ``ERRor`` sets the trigger condition to error. + - ``IDentifier`` sets the trigger condition to identifier. + - ``SLEEP`` sets the trigger condition to sleep. + - ``SYNCfield`` sets the trigger condition to sync field. + - ``WAKEup`` sets the trigger condition to wakeup. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusLin(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE`` command. + - ``.identifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusLinCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusLinData(device, f"{self._cmd_syntax}:DATa") + self._errtype = SearchSearchItemTriggerABusLinErrtype(device, f"{self._cmd_syntax}:ERRTYPE") + self._identifier = SearchSearchItemTriggerABusLinIdentifier( + device, f"{self._cmd_syntax}:IDentifier" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusLinCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition`` command. + + Description: + - This command sets or queries the condition for a LIN bus search. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition?`` 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:BUS:LIN:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition {DATA|IDANDDATA|ERRor|IDentifier|SLEEP|SYNCfield|WAKEup} + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition? + ``` + + Info: + - ``DATA`` sets the trigger condition to data. + - ``IDANDDATA`` sets the trigger condition to ID and data. + - ``ERRor`` sets the trigger condition to error. + - ``IDentifier`` sets the trigger condition to identifier. + - ``SLEEP`` sets the trigger condition to sleep. + - ``SYNCfield`` sets the trigger condition to sync field. + - ``WAKEup`` sets the trigger condition to wakeup. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusLinData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:QUALifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa:VALue`` command. + """ + return self._data + + @property + def errtype(self) -> SearchSearchItemTriggerABusLinErrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE`` command. + + Description: + - This command sets or queries the error type for a LIN bus search. The search number is + specified by x. The search condition must be set to ERROR. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE?`` 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:BUS:LIN:ERRTYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE {CHecksum|PARity|SYNC} + - SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE? + ``` + + Info: + - ``CHecksum`` specifies the error type is checksum. + - ``PARity`` specifies the error type is parity. + - ``SYNC`` specifies the error type is sync. + """ + return self._errtype + + @property + def identifier(self) -> SearchSearchItemTriggerABusLinIdentifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier:VALue`` command. + """ + return self._identifier + + +class SearchSearchItemTriggerABusI3cTestmodeValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is TESTMODE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue?`` 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:BUS:I3C:TESTMODe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cTestmode(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cTestmodeValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cTestmodeValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is TESTMODE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue?`` 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:BUS:I3C:TESTMODe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cSupportbyteValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is SUPPORTEDBYTE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue?`` 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:BUS:I3C:SUPPORTBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cSupportbyte(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cSupportbyteValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cSupportbyteValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is SUPPORTEDBYTE. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue?`` 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:BUS:I3C:SUPPORTBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cStaticAddress(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess`` command. + + Description: + - This command sets or queries the binary field string used for the I3C search if the + trigger condition is STATICADDRESS. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess?`` 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:BUS:I3C:STATic:ADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the address value for which to search. The valid characters are 0, + 1, or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cStatic(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusI3cStaticAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusI3cStaticAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess`` command. + + Description: + - This command sets or queries the binary field string used for the I3C search if the + trigger condition is STATICADDRESS. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess?`` 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:BUS:I3C:STATic:ADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the address value for which to search. The valid characters + are 0, 1, or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._address + + +class SearchSearchItemTriggerABusI3cStatebyteValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is STATEBYTE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue?`` 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:BUS:I3C:STATEBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cStatebyte(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cStatebyteValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cStatebyteValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is STATEBYTE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue?`` 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:BUS:I3C:STATEBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cSdrDirectpacket(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket`` command. + + Description: + - This command sets or queries the SDR direct packet types for the specified I3C bus trigger + search to determine where to place a mark. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket?`` 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:BUS:I3C:SDR:DIRECTPacket value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket {ENSLave|DISLave|ENTasx|RSTDya|SETMwrl|SETMrdl|SEText|SETDya|SETNdya|GETMWrl|GETMRdl|GETPrid|GETBusch|GETDevch|GETSlave|ACCM|SETBrt|MDATASpeed|HDRCapability} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket? + ``` + + Info: + - ``Search`` specifies the search number. + - ``ENSLave`` specifies the trigger condition as Enable Slave. + - ``DISLave`` specifies the trigger condition as Disable Slave. + - ``ENTasx`` specifies the trigger condition as Enter Activity State. + - ``RSTDya`` specifies the trigger condition as Reset Dynamic Address. + - ``SETMwrl`` specifies the trigger condition as Set Max Write Length. + - ``SETMrdl`` specifies the trigger condition as Set Max Read Length. + - ``SEText`` specifies the trigger condition as Set Exchange Time. + - ``SETDya`` specifies the trigger condition as Set Dynamic Address. + - ``SETNdya`` specifies the trigger condition as Set New Dynamic Address. + - ``GETMWrl`` specifies the trigger condition as Get Max Write Length. + - ``GETMRdl`` specifies the trigger condition as Get Max Read Length. + - ``GETPrid`` specifies the trigger condition as Get Provisional ID. + - ``GETBusch`` specifies the trigger condition as Get Provisional ID. + - ``GETDevch`` specifies the trigger condition as Get Dev Characteristics. + - ``GETSlave`` specifies the trigger condition as Get Slave Current Status. + - ``ACCM`` specifies the trigger condition as Get Accept Mastership. + - ``SETBrt`` specifies the trigger condition as Set Bridge Direct Target. + - ``MDATASpeed`` specifies the trigger condition as Get Max Data Speed. + - ``HDRCapability`` specifies the trigger condition as Get HDR Capability. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusI3cSdrBroadcastpacket(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket`` command. + + Description: + - This command sets or queries the SDR broadcast packets for the specified I3C bus trigger + search to determine where to place a mark. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket?`` 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:BUS:I3C:SDR:BROADCASTPacket value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket {ENSLave|DISLave|ENTasx|RSTDya|ENTRDya|SETMwrl|SETMrdl|LSLave|ENTRTSTMode|EXTime>} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket? + ``` + + Info: + - ``Search`` specifies the search number. + - ``ENSLave`` specifies the I3C broadcast packet type as Enable Slave. + - ``DISLave`` specifies the I3C broadcast packet type as Disable Slave. + - ``ENTasx`` specifies the I3C broadcast packet type as Enter Activity Stat. + - ``RSTDya`` specifies the I3C broadcast packet type as Reset Dynamic Address. + - ``ENTRDya`` specifies the I3C broadcast packet type as Reset Dynamic Address. + - ``SETMwrl`` specifies the I3C broadcast packet type as Set Max Write Length. + - ``SETMrdl`` specifies the I3C broadcast packet type as Set Max Read Length. + - ``LSLave`` specifies the I3C broadcast packet type as Define List of Slaves. + - ``ENTRTSTMode`` specifies the I3C broadcast packet type as Enter Test Mode Broadcast. + - ``EXTime`` specifies the I3C broadcast packet type as Set Exchange Time. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusI3cSdr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.broadcastpacket``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket`` + command. + - ``.directpacket``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._broadcastpacket = SearchSearchItemTriggerABusI3cSdrBroadcastpacket( + device, f"{self._cmd_syntax}:BROADCASTPacket" + ) + self._directpacket = SearchSearchItemTriggerABusI3cSdrDirectpacket( + device, f"{self._cmd_syntax}:DIRECTPacket" + ) + + @property + def broadcastpacket(self) -> SearchSearchItemTriggerABusI3cSdrBroadcastpacket: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket`` command. + + Description: + - This command sets or queries the SDR broadcast packets for the specified I3C bus + trigger search to determine where to place a mark. Requires purchase and installation + of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket?`` 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:BUS:I3C:SDR:BROADCASTPacket value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket {ENSLave|DISLave|ENTasx|RSTDya|ENTRDya|SETMwrl|SETMrdl|LSLave|ENTRTSTMode|EXTime>} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket? + ``` + + Info: + - ``Search`` specifies the search number. + - ``ENSLave`` specifies the I3C broadcast packet type as Enable Slave. + - ``DISLave`` specifies the I3C broadcast packet type as Disable Slave. + - ``ENTasx`` specifies the I3C broadcast packet type as Enter Activity Stat. + - ``RSTDya`` specifies the I3C broadcast packet type as Reset Dynamic Address. + - ``ENTRDya`` specifies the I3C broadcast packet type as Reset Dynamic Address. + - ``SETMwrl`` specifies the I3C broadcast packet type as Set Max Write Length. + - ``SETMrdl`` specifies the I3C broadcast packet type as Set Max Read Length. + - ``LSLave`` specifies the I3C broadcast packet type as Define List of Slaves. + - ``ENTRTSTMode`` specifies the I3C broadcast packet type as Enter Test Mode Broadcast. + - ``EXTime`` specifies the I3C broadcast packet type as Set Exchange Time. + """ # noqa: E501 + return self._broadcastpacket + + @property + def directpacket(self) -> SearchSearchItemTriggerABusI3cSdrDirectpacket: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket`` command. + + Description: + - This command sets or queries the SDR direct packet types for the specified I3C bus + trigger search to determine where to place a mark. Requires purchase and installation + of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket?`` 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:BUS:I3C:SDR:DIRECTPacket value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket {ENSLave|DISLave|ENTasx|RSTDya|SETMwrl|SETMrdl|SEText|SETDya|SETNdya|GETMWrl|GETMRdl|GETPrid|GETBusch|GETDevch|GETSlave|ACCM|SETBrt|MDATASpeed|HDRCapability} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket? + ``` + + Info: + - ``Search`` specifies the search number. + - ``ENSLave`` specifies the trigger condition as Enable Slave. + - ``DISLave`` specifies the trigger condition as Disable Slave. + - ``ENTasx`` specifies the trigger condition as Enter Activity State. + - ``RSTDya`` specifies the trigger condition as Reset Dynamic Address. + - ``SETMwrl`` specifies the trigger condition as Set Max Write Length. + - ``SETMrdl`` specifies the trigger condition as Set Max Read Length. + - ``SEText`` specifies the trigger condition as Set Exchange Time. + - ``SETDya`` specifies the trigger condition as Set Dynamic Address. + - ``SETNdya`` specifies the trigger condition as Set New Dynamic Address. + - ``GETMWrl`` specifies the trigger condition as Get Max Write Length. + - ``GETMRdl`` specifies the trigger condition as Get Max Read Length. + - ``GETPrid`` specifies the trigger condition as Get Provisional ID. + - ``GETBusch`` specifies the trigger condition as Get Provisional ID. + - ``GETDevch`` specifies the trigger condition as Get Dev Characteristics. + - ``GETSlave`` specifies the trigger condition as Get Slave Current Status. + - ``ACCM`` specifies the trigger condition as Get Accept Mastership. + - ``SETBrt`` specifies the trigger condition as Set Bridge Direct Target. + - ``MDATASpeed`` specifies the trigger condition as Get Max Data Speed. + - ``HDRCapability`` specifies the trigger condition as Get HDR Capability. + """ # noqa: E501 + return self._directpacket + + +class SearchSearchItemTriggerABusI3cSaddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C bus searchif the + trigger condition is SLAVEADDRESS. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue?`` 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:BUS:I3C:SADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the address value for which to search. The valid characters are 0, + 1, or X for Binary format; and A-F, 0-9, and X for Hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusI3cSaddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cSaddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cSaddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C bus searchif the + trigger condition is SLAVEADDRESS. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue?`` 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:BUS:I3C:SADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the address value for which to search. The valid characters + are 0, 1, or X for Binary format; and A-F, 0-9, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cPackets(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets`` command. + + Description: + - This command sets or queries the I3C Direct Packets to Direct or Response. Requires + purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets?`` 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:BUS:I3C:PACKets value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets {RESPonse|DIRect} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets? + ``` + + Info: + - ``Search`` specifies the search number. + - ``RESPonse`` specifies the packet address mode as Response. + - ``DIRect`` specifies the packet address mode as Direct. + """ + + +class SearchSearchItemTriggerABusI3cMaxwriteValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is MAXWRITE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue?`` 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:BUS:I3C:MAXWRITe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cMaxwrite(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cMaxwriteValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cMaxwriteValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is MAXWRITE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue?`` 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:BUS:I3C:MAXWRITe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cMaxrturnValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is MAXREADTURN. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue?`` 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:BUS:I3C:MAXRTURN:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cMaxrturn(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cMaxrturnValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cMaxrturnValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is MAXREADTURN. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue?`` 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:BUS:I3C:MAXRTURN:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cMaxreadValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is MAXREAD. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue?`` 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:BUS:I3C:MAXREAD:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cMaxread(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cMaxreadValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cMaxreadValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is MAXREAD. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue?`` 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:BUS:I3C:MAXREAD:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cInaccbyteValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C search if the + trigger condition is INACCURACYBYTE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue?`` 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:BUS:I3C:INACCBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cInaccbyte(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cInaccbyteValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cInaccbyteValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C search if the + trigger condition is INACCURACYBYTE. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue?`` 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:BUS:I3C:INACCBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cIdValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C search if the + trigger condition is ENTDAA packet ID. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue?`` 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:BUS:I3C:ID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cId(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cIdValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusI3cIdValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C search if the + trigger condition is ENTDAA packet ID. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue?`` 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:BUS:I3C:ID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cGsmsbValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is GETSTATUSMSB. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue?`` 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:BUS:I3C:GSMSb:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cGsmsb(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cGsmsbValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusI3cGsmsbValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is GETSTATUSMSB. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue?`` 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:BUS:I3C:GSMSb:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cGslsbValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is GETSTATUSLSB. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue?`` 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:BUS:I3C:GSLSb:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cGslsb(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cGslsbValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusI3cGslsbValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is GETSTATUSLSB. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue?`` 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:BUS:I3C:GSLSb:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cFreqbyteValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is FREQUENCYBYTE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue?`` 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:BUS:I3C:FREQBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cFreqbyte(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cFreqbyteValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cFreqbyteValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is FREQUENCYBYTE. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue?`` 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:BUS:I3C:FREQBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cEventbyteValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is EVENTBYTE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue?`` 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:BUS:I3C:EVENTBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cEventbyte(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cEventbyteValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cEventbyteValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is EVENTBYTE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue?`` 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:BUS:I3C:EVENTBYTe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cErrortype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe`` command. + + Description: + - This command sets or queries the error type condition for the specified I3C bus search to + determine where to place a mark. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe?`` 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:BUS:I3C:ERRORTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe {NACK|TBIT|PARity|BADDr|DADDr|PREamble|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe? + ``` + + Info: + - ``Search`` specifies the search number. + - ``NACK`` specifies the error type on which to search as Missing Ack. + - ``TBIT`` specifies the error type on which to search as T-Bit. + - ``PARity`` specifies the error type on which to search as Parity. + - ``BADDr`` specifies the error type on which to search as Broadcast Address. + - ``DADDr`` specifies the error type on which to search as Dynamic Address. + - ``PREamble`` specifies the error type on which to search as Preamble. + - ``CRC`` specifies the error type on which to search as CRC. + """ + + +class SearchSearchItemTriggerABusI3cDwordValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is DATAWORDS. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue?`` 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:BUS:I3C:DWORd:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cDword(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cDwordValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusI3cDwordValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is DATAWORDS. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue?`` 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:BUS:I3C:DWORd:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cDcrtypeValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C bus search if the + trigger condition is DCRTYPE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue?`` 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:BUS:I3C:DCRType:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the data value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cDcrtype(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cDcrtypeValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cDcrtypeValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C bus search if + the trigger condition is DCRTYPE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue?`` 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:BUS:I3C:DCRType:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the data value for which to search. The valid characters are + 0, 1, or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cDcrValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C bus search if the + trigger condition is DCR. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue?`` 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:BUS:I3C:DCR:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cDcr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cDcrValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusI3cDcrValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C bus search if + the trigger condition is DCR. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue?`` 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:BUS:I3C:DCR:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue`` command. + + Description: + - This command sets or queries the data value of the data token for the specified I3C bus + trigger search to determine where to place a mark. Requires purchase and installation of + option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue?`` 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:BUS:I3C:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the data value. The valid characters are 0, 1, or X for Binary + format; and A-F, 0-9, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string in bytes used for the specified + I3C bus trigger search to determine where to place a mark. Requires purchase and + installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe?`` 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:BUS:I3C:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the data size in bytes. + """ + + +class SearchSearchItemTriggerABusI3cDataDirection(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection`` command. + + Description: + - This command sets or queries the direction of the data for the I3C bus trigger search to + determine where to place a mark. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection?`` 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:BUS:I3C:DATa:DIRection value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection {NOCARE|READ|WRITE} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection? + ``` + + Info: + - ``Search`` specifies the search number. + - ``NOCARE`` specifies the data direction for which to search is Don't Care. + - ``READ`` specifies the data direction for which to search is Read. + - ``WRITE`` specifies the data direction for which to search is Write. + """ + + +class SearchSearchItemTriggerABusI3cData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.direction``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._direction = SearchSearchItemTriggerABusI3cDataDirection( + device, f"{self._cmd_syntax}:DIRection" + ) + self._size = SearchSearchItemTriggerABusI3cDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusI3cDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def direction(self) -> SearchSearchItemTriggerABusI3cDataDirection: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection`` command. + + Description: + - This command sets or queries the direction of the data for the I3C bus trigger search + to determine where to place a mark. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection?`` 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:BUS:I3C:DATa:DIRection value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection {NOCARE|READ|WRITE} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection? + ``` + + Info: + - ``Search`` specifies the search number. + - ``NOCARE`` specifies the data direction for which to search is Don't Care. + - ``READ`` specifies the data direction for which to search is Read. + - ``WRITE`` specifies the data direction for which to search is Write. + """ + return self._direction + + @property + def size(self) -> SearchSearchItemTriggerABusI3cDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string in bytes used for the + specified I3C bus trigger search to determine where to place a mark. Requires purchase + and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe?`` 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:BUS:I3C:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the data size in bytes. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusI3cDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue`` command. + + Description: + - This command sets or queries the data value of the data token for the specified I3C + bus trigger search to determine where to place a mark. Requires purchase and + installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue?`` 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:BUS:I3C:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the data value. The valid characters are 0, 1, or X for Binary + format; and A-F, 0-9, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for the specified I3C bus trigger + search to determine where to place a mark. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition?`` 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:BUS:I3C:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition {STARt|REPEATStart|ADDRess|DATa|SDRDirect|SDRBroadcast|DDR|ERRors|HOTJoin|DMSGEnd|BMSGEnd|HDRRestart|HDRExit} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition? + ``` + + Info: + - ``Search`` specifies the search number. + - ``STARt`` specifies trigger condition as Start. + - ``REPEATStart`` specifies trigger condition as Repeated Start. + - ``ADDRess`` specifies trigger condition as Address. + - ``DATa`` specifies trigger condition as Data. + - ``SDRDirect`` specifies trigger condition as I3C SDR Direct. + - ``SDRBroadcast`` specifies trigger condition as I3C SDR Broadcast. + - ``DDR`` specifies trigger condition as DDR. + - ``ERRors`` specifies trigger condition as Errors. + - ``HOTJoin`` specifies trigger condition as Hot-Join. + - ``DMSGEnd`` specifies trigger condition as Direct Message End. + - ``BMSGEnd`` specifies trigger condition as Stop. + - ``HDRRestart`` specifies trigger condition as HDR Restart. + - ``HDRExit`` specifies trigger condition as HDR Exit. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusI3cCcodeValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is SETBRGTGT packet ID. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue?`` 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:BUS:I3C:CCODe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and A-F, 0-9, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cCcode(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cCcodeValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusI3cCcodeValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is SETBRGTGT packet ID. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue?`` 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:BUS:I3C:CCODe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and A-F, 0-9, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cBrgtidValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is SETBRGTGT packet ID. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue?`` 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:BUS:I3C:BRGTID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cBrgtid(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cBrgtidValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusI3cBrgtidValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C trigger if the + trigger condition is SETBRGTGT packet ID. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue?`` 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:BUS:I3C:BRGTID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cBpackets(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets`` command. + + Description: + - This command sets or queries the I3C Broadcast Packets search to Broadcast or Response. + Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets?`` 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:BUS:I3C:BPACKets value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets {RESPonse|BROadcast} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets? + ``` + + Info: + - ``Search`` specifies the search number. + - ``RESPonse`` specifies the broadcast address mode as Response. + - ``BROadcast`` specifies the broadcast address mode as Broadcast. + """ + + +class SearchSearchItemTriggerABusI3cBcrtypeValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C bus search if the + trigger condition is BCRTYPE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue?`` 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:BUS:I3C:BCRType:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the data value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cBcrtype(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cBcrtypeValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusI3cBcrtypeValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C bus search if + the trigger condition is BCRTYPE. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue?`` 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:BUS:I3C:BCRType:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the data value for which to search. The valid characters are + 0, 1, or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cBcrValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C search if the + trigger condition is BCR. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue?`` 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:BUS:I3C:BCR:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, or X + for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + + +class SearchSearchItemTriggerABusI3cBcr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusI3cBcrValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusI3cBcrValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue`` command. + + Description: + - This command sets or queries the binary field string used for the I3C search if the + trigger condition is BCR. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue?`` 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:BUS:I3C:BCR:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the value for which to search. The valid characters are 0, 1, + or X for Binary format; and 0-9, A-F, and X for Hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI3cAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue`` command. + + Description: + - This command sets or queries the I3C address value for which to search, to determine where + to place a search mark. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue?`` 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:BUS:I3C:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the address value for the specified Search . This is either a + 7-bit or 10-bit value depending on the address mode. The valid characters are 0-9, A-F, + and X for Hexadecimal address format; and 0, 1, and X (don't care) for Binary address + format. + """ + + +class SearchSearchItemTriggerABusI3cAddressMode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe`` command. + + Description: + - This command sets or queries the address mode for the specified I3C bus trigger search to + determine where to place a search mark. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe?`` 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:BUS:I3C:ADDRess:MODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe {ADDR10|ADDR7} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe? + ``` + + Info: + - ``Search`` specifies the search number. + - ``ADDR10`` specifies the address mode as ADDR10. + - ``ADDR7`` specifies the address mode as ADDR7. + """ + + +class SearchSearchItemTriggerABusI3cAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._mode = SearchSearchItemTriggerABusI3cAddressMode(device, f"{self._cmd_syntax}:MODe") + self._value = SearchSearchItemTriggerABusI3cAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def mode(self) -> SearchSearchItemTriggerABusI3cAddressMode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe`` command. + + Description: + - This command sets or queries the address mode for the specified I3C bus trigger search + to determine where to place a search mark. Requires purchase and installation of + option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe?`` 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:BUS:I3C:ADDRess:MODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe {ADDR10|ADDR7} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe? + ``` + + Info: + - ``Search`` specifies the search number. + - ``ADDR10`` specifies the address mode as ADDR10. + - ``ADDR7`` specifies the address mode as ADDR7. + """ + return self._mode + + @property + def value(self) -> SearchSearchItemTriggerABusI3cAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue`` command. + + Description: + - This command sets or queries the I3C address value for which to search, to determine + where to place a search mark. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue?`` 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:BUS:I3C:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue? + ``` + + Info: + - ``Search`` specifies the search number. + - ```` specifies the address value for the specified Search . This is either + a 7-bit or 10-bit value depending on the address mode. The valid characters are 0-9, + A-F, and X for Hexadecimal address format; and 0, 1, and X (don't care) for Binary + address format. + """ + return self._value + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class SearchSearchItemTriggerABusI3c(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess`` command tree. + - ``.bcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR`` command tree. + - ``.bcrtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType`` command tree. + - ``.bpackets``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets`` command. + - ``.brgtid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID`` command tree. + - ``.ccode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa`` command tree. + - ``.dcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR`` command tree. + - ``.dcrtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType`` command tree. + - ``.dword``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd`` command tree. + - ``.errortype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe`` command. + - ``.eventbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe`` command tree. + - ``.freqbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe`` command tree. + - ``.gslsb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb`` command tree. + - ``.gsmsb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb`` command tree. + - ``.id``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID`` command tree. + - ``.inaccbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe`` command tree. + - ``.maxread``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD`` command tree. + - ``.maxrturn``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN`` command tree. + - ``.maxwrite``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe`` command tree. + - ``.packets``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets`` command. + - ``.saddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress`` command tree. + - ``.sdr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR`` command tree. + - ``.statebyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe`` command tree. + - ``.static``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic`` command tree. + - ``.supportbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe`` command tree. + - ``.testmode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusI3cAddress(device, f"{self._cmd_syntax}:ADDRess") + self._bcr = SearchSearchItemTriggerABusI3cBcr(device, f"{self._cmd_syntax}:BCR") + self._bcrtype = SearchSearchItemTriggerABusI3cBcrtype(device, f"{self._cmd_syntax}:BCRType") + self._bpackets = SearchSearchItemTriggerABusI3cBpackets( + device, f"{self._cmd_syntax}:BPACKets" + ) + self._brgtid = SearchSearchItemTriggerABusI3cBrgtid(device, f"{self._cmd_syntax}:BRGTID") + self._ccode = SearchSearchItemTriggerABusI3cCcode(device, f"{self._cmd_syntax}:CCODe") + self._condition = SearchSearchItemTriggerABusI3cCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusI3cData(device, f"{self._cmd_syntax}:DATa") + self._dcr = SearchSearchItemTriggerABusI3cDcr(device, f"{self._cmd_syntax}:DCR") + self._dcrtype = SearchSearchItemTriggerABusI3cDcrtype(device, f"{self._cmd_syntax}:DCRType") + self._dword = SearchSearchItemTriggerABusI3cDword(device, f"{self._cmd_syntax}:DWORd") + self._errortype = SearchSearchItemTriggerABusI3cErrortype( + device, f"{self._cmd_syntax}:ERRORTYPe" + ) + self._eventbyte = SearchSearchItemTriggerABusI3cEventbyte( + device, f"{self._cmd_syntax}:EVENTBYTe" + ) + self._freqbyte = SearchSearchItemTriggerABusI3cFreqbyte( + device, f"{self._cmd_syntax}:FREQBYTe" + ) + self._gslsb = SearchSearchItemTriggerABusI3cGslsb(device, f"{self._cmd_syntax}:GSLSb") + self._gsmsb = SearchSearchItemTriggerABusI3cGsmsb(device, f"{self._cmd_syntax}:GSMSb") + self._id = SearchSearchItemTriggerABusI3cId(device, f"{self._cmd_syntax}:ID") + self._inaccbyte = SearchSearchItemTriggerABusI3cInaccbyte( + device, f"{self._cmd_syntax}:INACCBYTe" + ) + self._maxread = SearchSearchItemTriggerABusI3cMaxread(device, f"{self._cmd_syntax}:MAXREAD") + self._maxrturn = SearchSearchItemTriggerABusI3cMaxrturn( + device, f"{self._cmd_syntax}:MAXRTURN" + ) + self._maxwrite = SearchSearchItemTriggerABusI3cMaxwrite( + device, f"{self._cmd_syntax}:MAXWRITe" + ) + self._packets = SearchSearchItemTriggerABusI3cPackets(device, f"{self._cmd_syntax}:PACKets") + self._saddress = SearchSearchItemTriggerABusI3cSaddress( + device, f"{self._cmd_syntax}:SADDress" + ) + self._sdr = SearchSearchItemTriggerABusI3cSdr(device, f"{self._cmd_syntax}:SDR") + self._statebyte = SearchSearchItemTriggerABusI3cStatebyte( + device, f"{self._cmd_syntax}:STATEBYTe" + ) + self._static = SearchSearchItemTriggerABusI3cStatic(device, f"{self._cmd_syntax}:STATic") + self._supportbyte = SearchSearchItemTriggerABusI3cSupportbyte( + device, f"{self._cmd_syntax}:SUPPORTBYTe" + ) + self._testmode = SearchSearchItemTriggerABusI3cTestmode( + device, f"{self._cmd_syntax}:TESTMODe" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusI3cAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:MODe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess:VALue`` command. + """ + return self._address + + @property + def bcr(self) -> SearchSearchItemTriggerABusI3cBcr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR:VALue`` command. + """ + return self._bcr + + @property + def bcrtype(self) -> SearchSearchItemTriggerABusI3cBcrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType:VALue`` command. + """ + return self._bcrtype + + @property + def bpackets(self) -> SearchSearchItemTriggerABusI3cBpackets: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets`` command. + + Description: + - This command sets or queries the I3C Broadcast Packets search to Broadcast or + Response. Requires purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets?`` 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:BUS:I3C:BPACKets value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets {RESPonse|BROadcast} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets? + ``` + + Info: + - ``Search`` specifies the search number. + - ``RESPonse`` specifies the broadcast address mode as Response. + - ``BROadcast`` specifies the broadcast address mode as Broadcast. + """ + return self._bpackets + + @property + def brgtid(self) -> SearchSearchItemTriggerABusI3cBrgtid: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID:VALue`` command. + """ + return self._brgtid + + @property + def ccode(self) -> SearchSearchItemTriggerABusI3cCcode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe:VALue`` command. + """ + return self._ccode + + @property + def condition(self) -> SearchSearchItemTriggerABusI3cCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for the specified I3C bus trigger + search to determine where to place a mark. Requires purchase and installation of + option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition?`` 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:BUS:I3C:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition {STARt|REPEATStart|ADDRess|DATa|SDRDirect|SDRBroadcast|DDR|ERRors|HOTJoin|DMSGEnd|BMSGEnd|HDRRestart|HDRExit} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition? + ``` + + Info: + - ``Search`` specifies the search number. + - ``STARt`` specifies trigger condition as Start. + - ``REPEATStart`` specifies trigger condition as Repeated Start. + - ``ADDRess`` specifies trigger condition as Address. + - ``DATa`` specifies trigger condition as Data. + - ``SDRDirect`` specifies trigger condition as I3C SDR Direct. + - ``SDRBroadcast`` specifies trigger condition as I3C SDR Broadcast. + - ``DDR`` specifies trigger condition as DDR. + - ``ERRors`` specifies trigger condition as Errors. + - ``HOTJoin`` specifies trigger condition as Hot-Join. + - ``DMSGEnd`` specifies trigger condition as Direct Message End. + - ``BMSGEnd`` specifies trigger condition as Stop. + - ``HDRRestart`` specifies trigger condition as HDR Restart. + - ``HDRExit`` specifies trigger condition as HDR Exit. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusI3cData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.direction``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:DIRection`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa:VALue`` command. + """ + return self._data + + @property + def dcr(self) -> SearchSearchItemTriggerABusI3cDcr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR:VALue`` command. + """ + return self._dcr + + @property + def dcrtype(self) -> SearchSearchItemTriggerABusI3cDcrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType:VALue`` command. + """ + return self._dcrtype + + @property + def dword(self) -> SearchSearchItemTriggerABusI3cDword: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd:VALue`` command. + """ + return self._dword + + @property + def errortype(self) -> SearchSearchItemTriggerABusI3cErrortype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe`` command. + + Description: + - This command sets or queries the error type condition for the specified I3C bus search + to determine where to place a mark. Requires purchase and installation of option + SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe?`` 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:BUS:I3C:ERRORTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe {NACK|TBIT|PARity|BADDr|DADDr|PREamble|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe? + ``` + + Info: + - ``Search`` specifies the search number. + - ``NACK`` specifies the error type on which to search as Missing Ack. + - ``TBIT`` specifies the error type on which to search as T-Bit. + - ``PARity`` specifies the error type on which to search as Parity. + - ``BADDr`` specifies the error type on which to search as Broadcast Address. + - ``DADDr`` specifies the error type on which to search as Dynamic Address. + - ``PREamble`` specifies the error type on which to search as Preamble. + - ``CRC`` specifies the error type on which to search as CRC. + """ # noqa: E501 + return self._errortype + + @property + def eventbyte(self) -> SearchSearchItemTriggerABusI3cEventbyte: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe:VALue`` command. + """ + return self._eventbyte + + @property + def freqbyte(self) -> SearchSearchItemTriggerABusI3cFreqbyte: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe:VALue`` command. + """ + return self._freqbyte + + @property + def gslsb(self) -> SearchSearchItemTriggerABusI3cGslsb: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb:VALue`` command. + """ + return self._gslsb + + @property + def gsmsb(self) -> SearchSearchItemTriggerABusI3cGsmsb: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb:VALue`` command. + """ + return self._gsmsb + + @property + def id(self) -> SearchSearchItemTriggerABusI3cId: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID:VALue`` command. + """ + return self._id + + @property + def inaccbyte(self) -> SearchSearchItemTriggerABusI3cInaccbyte: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe:VALue`` command. + """ + return self._inaccbyte + + @property + def maxread(self) -> SearchSearchItemTriggerABusI3cMaxread: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD:VALue`` command. + """ + return self._maxread + + @property + def maxrturn(self) -> SearchSearchItemTriggerABusI3cMaxrturn: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN:VALue`` command. + """ + return self._maxrturn + + @property + def maxwrite(self) -> SearchSearchItemTriggerABusI3cMaxwrite: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue`` command. + """ + return self._maxwrite + + @property + def packets(self) -> SearchSearchItemTriggerABusI3cPackets: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets`` command. + + Description: + - This command sets or queries the I3C Direct Packets to Direct or Response. Requires + purchase and installation of option SRI3C. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets?`` 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:BUS:I3C:PACKets value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets {RESPonse|DIRect} + - SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets? + ``` + + Info: + - ``Search`` specifies the search number. + - ``RESPonse`` specifies the packet address mode as Response. + - ``DIRect`` specifies the packet address mode as Direct. + """ + return self._packets + + @property + def saddress(self) -> SearchSearchItemTriggerABusI3cSaddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue`` command. + """ + return self._saddress + + @property + def sdr(self) -> SearchSearchItemTriggerABusI3cSdr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.broadcastpacket``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket`` + command. + - ``.directpacket``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket`` + command. + """ + return self._sdr + + @property + def statebyte(self) -> SearchSearchItemTriggerABusI3cStatebyte: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue`` command. + """ + return self._statebyte + + @property + def static(self) -> SearchSearchItemTriggerABusI3cStatic: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess`` command. + """ + return self._static + + @property + def supportbyte(self) -> SearchSearchItemTriggerABusI3cSupportbyte: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue`` command. + """ + return self._supportbyte + + @property + def testmode(self) -> SearchSearchItemTriggerABusI3cTestmode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe:VALue`` command. + """ + return self._testmode + + +class SearchSearchItemTriggerABusI2cDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data string used for I2C bus search to determine + where to place a mark. The search number is specified by x. The search condition must be + DATA or ADDRANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue?`` 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:BUS:I2C:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue? + ``` + + Info: + - ```` specifies the data value. The valid characters are 0, 1, or X for binary + format; and A-F, 0-9, and X for hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusI2cDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string in bytes used for an I2C bus + search to determine where to place a mark. The search number is specified by x. The search + condition must be DATA or ADDRANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe?`` 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:BUS:I2C:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size in bytes. + """ + + +class SearchSearchItemTriggerABusI2cDataDirection(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection`` command. + + Description: + - This command sets or queries the direction of the data for the I2C bus search to determine + where to place a mark. The search number is specified by x. Read or write is indicated by + the R/W bit in the I2C protocol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection?`` 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:BUS:I2C:DATa:DIRection value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection {NOCARE|READ|WRITE} + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection? + ``` + + Info: + - ``NOCARE`` specifies the direction of data as Don't Care. + - ``READ`` specifies the direction of data as Read. + - ``WRITE`` specifies the direction of data as Write. + """ + + +class SearchSearchItemTriggerABusI2cData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.direction``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._direction = SearchSearchItemTriggerABusI2cDataDirection( + device, f"{self._cmd_syntax}:DIRection" + ) + self._size = SearchSearchItemTriggerABusI2cDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusI2cDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def direction(self) -> SearchSearchItemTriggerABusI2cDataDirection: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection`` command. + + Description: + - This command sets or queries the direction of the data for the I2C bus search to + determine where to place a mark. The search number is specified by x. Read or write is + indicated by the R/W bit in the I2C protocol. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection?`` 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:BUS:I2C:DATa:DIRection value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection {NOCARE|READ|WRITE} + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection? + ``` + + Info: + - ``NOCARE`` specifies the direction of data as Don't Care. + - ``READ`` specifies the direction of data as Read. + - ``WRITE`` specifies the direction of data as Write. + """ + return self._direction + + @property + def size(self) -> SearchSearchItemTriggerABusI2cDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string in bytes used for an I2C + bus search to determine where to place a mark. The search number is specified by x. + The search condition must be DATA or ADDRANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe?`` 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:BUS:I2C:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size in bytes. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusI2cDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data string used for I2C bus search to + determine where to place a mark. The search number is specified by x. The search + condition must be DATA or ADDRANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue?`` 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:BUS:I2C:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue? + ``` + + Info: + - ```` specifies the data value. The valid characters are 0, 1, or X for binary + format; and A-F, 0-9, and X for hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusI2cCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition`` command. + + Description: + - This command sets or queries the search condition for an I2C bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition?`` 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:BUS:I2C:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition {ADDRess|ADDRANDDATA|DATa|ACKMISS|REPEATstart|STARt|STOP} + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition? + ``` + + Info: + - ``ADDress`` specifies the trigger condition as Address. + - ``ADDRANDDATA`` specifies the trigger condition as Address and Data. + - ``DATa`` specifies the trigger condition as Data. + - ``ACKMISS`` specifies the trigger condition as Missing of Acknowledgement. + - ``REPEATstart`` specifies the trigger condition as Repeat of Start. + - ``STARt`` specifies the trigger condition as Start. + - ``STOP`` specifies the trigger condition as Stop. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusI2cAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue`` command. + + Description: + - This command sets or queries the binary address string used for the I2C search the + specified search condition is Address or AddressData. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue?`` 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:BUS:I2C:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue? + ``` + + Info: + - ```` specifies the address value. This is either a 7-bit or 10-bit value + depending on the address mode. The valid characters are 0-9, A-F, and X for addresses in + hexadecimal format; and 0, 1, and X otherwise. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusI2cAddressMode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe`` command. + + Description: + - This command sets or queries the I2C address mode for the specified bus search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe?`` 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:BUS:I2C:ADDRess:MODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe {ADDR10|ADDR7} + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe? + ``` + + Info: + - ``ADDR10`` specifies the address mode as ADDR10. + - ``ADDR7`` specifies the address mode as ADDR7. + """ + + +class SearchSearchItemTriggerABusI2cAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._mode = SearchSearchItemTriggerABusI2cAddressMode(device, f"{self._cmd_syntax}:MODe") + self._value = SearchSearchItemTriggerABusI2cAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def mode(self) -> SearchSearchItemTriggerABusI2cAddressMode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe`` command. + + Description: + - This command sets or queries the I2C address mode for the specified bus search to + determine where to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe?`` 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:BUS:I2C:ADDRess:MODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe {ADDR10|ADDR7} + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe? + ``` + + Info: + - ``ADDR10`` specifies the address mode as ADDR10. + - ``ADDR7`` specifies the address mode as ADDR7. + """ + return self._mode + + @property + def value(self) -> SearchSearchItemTriggerABusI2cAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue`` command. + + Description: + - This command sets or queries the binary address string used for the I2C search the + specified search condition is Address or AddressData. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue?`` 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:BUS:I2C:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue? + ``` + + Info: + - ```` specifies the address value. This is either a 7-bit or 10-bit value + depending on the address mode. The valid characters are 0-9, A-F, and X for addresses + in hexadecimal format; and 0, 1, and X otherwise. + """ + return self._value + + +class SearchSearchItemTriggerABusI2c(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusI2cAddress(device, f"{self._cmd_syntax}:ADDRess") + self._condition = SearchSearchItemTriggerABusI2cCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusI2cData(device, f"{self._cmd_syntax}:DATa") + + @property + def address(self) -> SearchSearchItemTriggerABusI2cAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:MODe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess:VALue`` command. + """ + return self._address + + @property + def condition(self) -> SearchSearchItemTriggerABusI2cCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition`` command. + + Description: + - This command sets or queries the search condition for an I2C bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition?`` 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:BUS:I2C:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition {ADDRess|ADDRANDDATA|DATa|ACKMISS|REPEATstart|STARt|STOP} + - SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition? + ``` + + Info: + - ``ADDress`` specifies the trigger condition as Address. + - ``ADDRANDDATA`` specifies the trigger condition as Address and Data. + - ``DATa`` specifies the trigger condition as Data. + - ``ACKMISS`` specifies the trigger condition as Missing of Acknowledgement. + - ``REPEATstart`` specifies the trigger condition as Repeat of Start. + - ``STARt`` specifies the trigger condition as Start. + - ``STOP`` specifies the trigger condition as Stop. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusI2cData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.direction``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:DIRection`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa:VALue`` command. + """ + return self._data + + +class SearchSearchItemTriggerABusFlexrayHeaderPaylength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth`` command. + + Description: + - This command sets or queries the payload length portion of the binary header string when + searching on a FlexRay bus search trigger header. The search number is specified by x. The + search condition must be set to HEADer. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth?`` 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:BUS:FLEXRAY:HEADER:PAYLENgth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth? + ``` + + Info: + - ```` specifies the header Payload Length. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayHeaderIndbits(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits`` command. + + Description: + - This command sets or queries the Indicator bits portion of the binary header string when + searching on a FlexRay bus header. The search number is specified by x. The search + condition must be set to HEADer. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits?`` 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:BUS:FLEXRAY:HEADER:INDBits value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits? + ``` + + Info: + - ```` specifies the header Indicator Bits. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayHeaderFrameid(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID`` command. + + Description: + - This command sets or queries the frame id portion of the binary header string when + searching on a FlexRay bus header. The search number is specified by x. The search + condition must be set to HEADer or IDANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID?`` 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:BUS:FLEXRAY:HEADER:FRAMEID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID? + ``` + + Info: + - ```` specifies the frame ID. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayHeaderCyclecount(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount`` command. + + Description: + - This command sets or queries the cycle count portion of the binary header string when + searching on a FlexRay bus header. The search number is specified by x. The search + condition must be set to HEADer. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount?`` 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:BUS:FLEXRAY:HEADER:CYCLECount value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount? + ``` + + Info: + - ```` specifies the header cycle count. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayHeaderCrc(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC`` command. + + Description: + - This command sets or queries the CRC portion of the binary header string whensearching on + a FlexRay bus header. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC?`` 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:BUS:FLEXRAY:HEADER:CRC value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC? + ``` + + Info: + - ```` specifies the CRC. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayHeader(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.crc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC`` command. + - ``.cyclecount``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount`` command. + - ``.frameid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID`` command. + - ``.indbits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits`` command. + - ``.paylength``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._crc = SearchSearchItemTriggerABusFlexrayHeaderCrc(device, f"{self._cmd_syntax}:CRC") + self._cyclecount = SearchSearchItemTriggerABusFlexrayHeaderCyclecount( + device, f"{self._cmd_syntax}:CYCLECount" + ) + self._frameid = SearchSearchItemTriggerABusFlexrayHeaderFrameid( + device, f"{self._cmd_syntax}:FRAMEID" + ) + self._indbits = SearchSearchItemTriggerABusFlexrayHeaderIndbits( + device, f"{self._cmd_syntax}:INDBits" + ) + self._paylength = SearchSearchItemTriggerABusFlexrayHeaderPaylength( + device, f"{self._cmd_syntax}:PAYLENgth" + ) + + @property + def crc(self) -> SearchSearchItemTriggerABusFlexrayHeaderCrc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC`` command. + + Description: + - This command sets or queries the CRC portion of the binary header string whensearching + on a FlexRay bus header. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC?`` 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:BUS:FLEXRAY:HEADER:CRC value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC? + ``` + + Info: + - ```` specifies the CRC. + """ + return self._crc + + @property + def cyclecount(self) -> SearchSearchItemTriggerABusFlexrayHeaderCyclecount: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount`` command. + + Description: + - This command sets or queries the cycle count portion of the binary header string when + searching on a FlexRay bus header. The search number is specified by x. The search + condition must be set to HEADer. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount?`` 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:BUS:FLEXRAY:HEADER:CYCLECount value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount? + ``` + + Info: + - ```` specifies the header cycle count. + """ + return self._cyclecount + + @property + def frameid(self) -> SearchSearchItemTriggerABusFlexrayHeaderFrameid: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID`` command. + + Description: + - This command sets or queries the frame id portion of the binary header string when + searching on a FlexRay bus header. The search number is specified by x. The search + condition must be set to HEADer or IDANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID?`` 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:BUS:FLEXRAY:HEADER:FRAMEID value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID? + ``` + + Info: + - ```` specifies the frame ID. + """ + return self._frameid + + @property + def indbits(self) -> SearchSearchItemTriggerABusFlexrayHeaderIndbits: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits`` command. + + Description: + - This command sets or queries the Indicator bits portion of the binary header string + when searching on a FlexRay bus header. The search number is specified by x. The + search condition must be set to HEADer. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits?`` 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:BUS:FLEXRAY:HEADER:INDBits value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits? + ``` + + Info: + - ```` specifies the header Indicator Bits. + """ + return self._indbits + + @property + def paylength(self) -> SearchSearchItemTriggerABusFlexrayHeaderPaylength: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth`` command. + + Description: + - This command sets or queries the payload length portion of the binary header string + when searching on a FlexRay bus search trigger header. The search number is specified + by x. The search condition must be set to HEADer. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth?`` 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:BUS:FLEXRAY:HEADER:PAYLENgth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth? + ``` + + Info: + - ```` specifies the header Payload Length. + """ + return self._paylength + + +class SearchSearchItemTriggerABusFlexrayFrametype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType`` command. + + Description: + - This command sets or queries the FlexRay bus search frame type. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType?`` 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:BUS:FLEXRAY:FRAMEType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType {NORMal|PAYload|NULL|SYNC|STARTup} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType? + ``` + + Info: + - ``NORMal`` sets the frame type to normal. + - ``PAYload`` sets the frame type to payload. + - ``NULL`` sets the frame type to null. + - ``SYNC`` sets the frame type to sync. + - ``STARTup`` sets the frame type to startup. + """ + + +class SearchSearchItemTriggerABusFlexrayFrameidValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue`` command. + + Description: + - This command sets the low value when searching on a FlexRay bus id field. The search + condition must be set to IDentifier. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue?`` 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:BUS:FLEXRAY:FRAMEID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue? + ``` + + Info: + - ```` is the frame id value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayFrameidQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier`` command. + + Description: + - This command sets the qualifier to be used when searching on a FlexRay bus signal. The + search condition must be set to Identifier. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier?`` 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:BUS:FLEXRAY:FRAMEID:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier? + ``` + + Info: + - ``EQual`` sets the qualifier to equal. + - ``UNEQual`` sets the qualifier to unequal. + - ``LESSthan`` sets the qualifier to less than. + - ``MOREthan`` sets the qualifier to more than. + - ``LESSEQual`` sets the qualifier to less equal. + - ``MOREEQual`` sets the qualifier to more equal. + - ``INrange`` sets the qualifier to in range. + - ``OUTrange`` sets the qualifier to out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusFlexrayFrameidHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on a FlexRay bus frame id + field. The search condition must be set to IDentifier. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue?`` 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:BUS:FLEXRAY:FRAMEID:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue? + ``` + + Info: + - ```` is the frame id high value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayFrameid(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusFlexrayFrameidHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusFlexrayFrameidQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusFlexrayFrameidValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusFlexrayFrameidHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on a FlexRay bus frame id + field. The search condition must be set to IDentifier. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue?`` 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:BUS:FLEXRAY:FRAMEID:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue? + ``` + + Info: + - ```` is the frame id high value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusFlexrayFrameidQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier`` command. + + Description: + - This command sets the qualifier to be used when searching on a FlexRay bus signal. The + search condition must be set to Identifier. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier?`` 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:BUS:FLEXRAY:FRAMEID:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier? + ``` + + Info: + - ``EQual`` sets the qualifier to equal. + - ``UNEQual`` sets the qualifier to unequal. + - ``LESSthan`` sets the qualifier to less than. + - ``MOREthan`` sets the qualifier to more than. + - ``LESSEQual`` sets the qualifier to less equal. + - ``MOREEQual`` sets the qualifier to more equal. + - ``INrange`` sets the qualifier to in range. + - ``OUTrange`` sets the qualifier to out of range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusFlexrayFrameidValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue`` command. + + Description: + - This command sets the low value when searching on a FlexRay bus id field. The search + condition must be set to IDentifier. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue?`` 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:BUS:FLEXRAY:FRAMEID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue? + ``` + + Info: + - ```` is the frame id value. + """ + return self._value + + +class SearchSearchItemTriggerABusFlexrayErrtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE`` command. + + Description: + - This command sets or queries the error type when searching on a FlexRay bus signal. The + search number is specified by x. The search condition must be set to ERROR. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE?`` 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:BUS:FLEXRAY:ERRTYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE {CRCHeader|CRCTrailer|NULLFRStatic|NULLFRDynamic|SYNCFrame|STARTupnosync} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE? + ``` + + Info: + - ``CRCHeader`` sets the error type to CRCHeader. + - ``CRCTrailer`` sets the error type to CRCTrailer. + - ``NULLFRStatic`` sets the error type to NULLFRStatic. + - ``NULLFRDynamic`` sets the error type to NULLFRDynamic. + - ``SYNCFrame`` sets the error type to SYNCFrame. + - ``STARTupnosync`` sets the error type to STARTupnosync. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusFlexrayEoftype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE`` command. + + Description: + - This command sets or queries the end of frame type when searching on a FlexRay bus signal. + The search number is specified by x. The search condition must be set to EOF. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE?`` 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:BUS:FLEXRAY:EOFTYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE {ANY|STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE? + ``` + + Info: + - ``ANY`` specifies either end of file type. + - ``STATIC`` specifies the static end of file type. + - ``DYNAMIC`` specifies the static end of file type. + """ + + +class SearchSearchItemTriggerABusFlexrayDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue`` command. + + Description: + - This command sets or queries the low value to be used when searching on a FlexRay bus data + field. The search number is specified by x. The search condition must be set to IDANDDATA + or DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue?`` 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:BUS:FLEXRAY:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue? + ``` + + Info: + - ```` specifies the data value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to be used when + searching on a FlexRay bus data field. The search number is specified by x. The search + condition must be set to IDANDDATA OR DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe?`` 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:BUS:FLEXRAY:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size in bytes. A data size of -1 is don't care. + """ + + +class SearchSearchItemTriggerABusFlexrayDataQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on a FlexRay bus + signal. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier?`` 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:BUS:FLEXRAY:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier {EQUal|LESSEQual|MOREEQual|UNEQual|LESSthan|MOREthan|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier? + ``` + + Info: + - ``EQUal`` specifies the qualifier as equal. + - ``LESSEQual`` specifies the qualifier as less equal. + - ``MOREEQual`` specifies the qualifier as more equal. + - ``UNEQual`` specifies the qualifier as unequal. + - ``LESSthan`` specifies the qualifier as less than. + - ``MOREthan`` specifies the qualifier as more than. + - ``INrange`` specifies the qualifier as in range. + - ``OUTrange`` specifies the qualifier as out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusFlexrayDataOffset(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet`` command. + + Description: + - This command sets or queries the offset of the data string, in bytes, when searching on a + FlexRay bus data field. The search number is specified by x. The search condition must be + set to IDANDDATA OR DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet?`` 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:BUS:FLEXRAY:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet? + ``` + + Info: + - ```` specifies the data offset in bytes. A setting of X/Don't care is accomplished by + setting the offset to -1. + """ + + +class SearchSearchItemTriggerABusFlexrayDataHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on a FlexRay bus data field. + The search number is specified by x. The search condition must be set to IDANDDATA OR + DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue?`` 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:BUS:FLEXRAY:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue? + ``` + + Info: + - ```` specifies the data value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusFlexrayDataHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._offset = SearchSearchItemTriggerABusFlexrayDataOffset( + device, f"{self._cmd_syntax}:OFFSet" + ) + self._qualifier = SearchSearchItemTriggerABusFlexrayDataQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._size = SearchSearchItemTriggerABusFlexrayDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusFlexrayDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusFlexrayDataHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on a FlexRay bus data + field. The search number is specified by x. The search condition must be set to + IDANDDATA OR DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue?`` 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:BUS:FLEXRAY:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue? + ``` + + Info: + - ```` specifies the data value. + """ + return self._hivalue + + @property + def offset(self) -> SearchSearchItemTriggerABusFlexrayDataOffset: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet`` command. + + Description: + - This command sets or queries the offset of the data string, in bytes, when searching + on a FlexRay bus data field. The search number is specified by x. The search condition + must be set to IDANDDATA OR DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet?`` 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:BUS:FLEXRAY:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet? + ``` + + Info: + - ```` specifies the data offset in bytes. A setting of X/Don't care is + accomplished by setting the offset to -1. + """ + return self._offset + + @property + def qualifier(self) -> SearchSearchItemTriggerABusFlexrayDataQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on a FlexRay bus + signal. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier?`` 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:BUS:FLEXRAY:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier {EQUal|LESSEQual|MOREEQual|UNEQual|LESSthan|MOREthan|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier? + ``` + + Info: + - ``EQUal`` specifies the qualifier as equal. + - ``LESSEQual`` specifies the qualifier as less equal. + - ``MOREEQual`` specifies the qualifier as more equal. + - ``UNEQual`` specifies the qualifier as unequal. + - ``LESSthan`` specifies the qualifier as less than. + - ``MOREthan`` specifies the qualifier as more than. + - ``INrange`` specifies the qualifier as in range. + - ``OUTrange`` specifies the qualifier as out of range. + """ # noqa: E501 + return self._qualifier + + @property + def size(self) -> SearchSearchItemTriggerABusFlexrayDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to be used when + searching on a FlexRay bus data field. The search number is specified by x. The search + condition must be set to IDANDDATA OR DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe?`` 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:BUS:FLEXRAY:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size in bytes. A data size of -1 is don't care. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusFlexrayDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue`` command. + + Description: + - This command sets or queries the low value to be used when searching on a FlexRay bus + data field. The search number is specified by x. The search condition must be set to + IDANDDATA or DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue?`` 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:BUS:FLEXRAY:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue? + ``` + + Info: + - ```` specifies the data value. + """ + return self._value + + +class SearchSearchItemTriggerABusFlexrayCyclecountValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue`` command. + + Description: + - This command sets or queries the low value when searching on a FlexRay bus cycle count + field. The search number is specified by x. The search condition must be set to + CYCLEcount. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue?`` 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:BUS:FLEXRAY:CYCLEcount:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue? + ``` + + Info: + - ```` specifies the cycle count value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayCyclecountQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on a FlexRay bus + search cycle count field. The search number is specified by x. The search condition must + be set to CYCLEcount. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier?`` 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:BUS:FLEXRAY:CYCLEcount:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier {EQUal|LESSEQual|MOREEQual|UNEQual|LESSthan|MOREthan|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier? + ``` + + Info: + - ``EQUal`` specifies the qualifier as equal. + - ``LESSEQual`` specifies the qualifier as less equal. + - ``MOREEQual`` specifies the qualifier as more equal. + - ``UNEQual`` specifies the qualifier as unequal. + - ``LESSthan`` specifies the qualifier as less than. + - ``MOREthan`` specifies the qualifier as more than. + - ``INrange`` specifies the qualifier as in range. + - ``OUTrange`` specifies the qualifier as out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusFlexrayCyclecountHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue`` command. + + Description: + - This command sets or queries the heigh value when searching on a FlexRay bus cycle count + field. The search number is specified by x. The search condition must be set to + CYCLEcount. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue?`` 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:BUS:FLEXRAY:CYCLEcount:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue? + ``` + + Info: + - ```` specifies the cycle count value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusFlexrayCyclecount(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusFlexrayCyclecountHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusFlexrayCyclecountQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusFlexrayCyclecountValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusFlexrayCyclecountHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue`` command. + + Description: + - This command sets or queries the heigh value when searching on a FlexRay bus cycle + count field. The search number is specified by x. The search condition must be set to + CYCLEcount. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue?`` 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:BUS:FLEXRAY:CYCLEcount:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue? + ``` + + Info: + - ```` specifies the cycle count value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusFlexrayCyclecountQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on a FlexRay bus + search cycle count field. The search number is specified by x. The search condition + must be set to CYCLEcount. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier?`` 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:BUS:FLEXRAY:CYCLEcount:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier {EQUal|LESSEQual|MOREEQual|UNEQual|LESSthan|MOREthan|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier? + ``` + + Info: + - ``EQUal`` specifies the qualifier as equal. + - ``LESSEQual`` specifies the qualifier as less equal. + - ``MOREEQual`` specifies the qualifier as more equal. + - ``UNEQual`` specifies the qualifier as unequal. + - ``LESSthan`` specifies the qualifier as less than. + - ``MOREthan`` specifies the qualifier as more than. + - ``INrange`` specifies the qualifier as in range. + - ``OUTrange`` specifies the qualifier as out of range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusFlexrayCyclecountValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue`` command. + + Description: + - This command sets or queries the low value when searching on a FlexRay bus cycle count + field. The search number is specified by x. The search condition must be set to + CYCLEcount. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue?`` 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:BUS:FLEXRAY:CYCLEcount:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue? + ``` + + Info: + - ```` specifies the cycle count value. + """ + return self._value + + +class SearchSearchItemTriggerABusFlexrayCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition`` command. + + Description: + - This command sets or queries the FlexRay bus search condition. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition?`` 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:BUS:FLEXRAY:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition {SOF|FRAMEType|IDentifier|CYCLEcount|HEADer|DATA|IDANDDATA|EOF|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition? + ``` + + Info: + - ``SOF`` sets the trigger condition to start of frame. + - ``FRAMEType`` sets the trigger condition to frame type. + - ``IDentifier`` sets the trigger condition to identifier. + - ``CYCLEcount`` sets the trigger condition to cycle count. + - ``HEADer`` sets the trigger condition to header. + - ``DATA`` sets the trigger condition to data. + - ``IDANDDATA`` sets the trigger condition to ID and data. + - ``EOF`` sets the trigger condition to end of frame. + - ``ERRor`` sets the trigger condition to error. + """ # noqa: E501 + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusFlexray(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition`` command. + - ``.cyclecount``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount`` command tree. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa`` command tree. + - ``.eoftype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE`` command. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE`` command. + - ``.frameid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID`` command tree. + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType`` command. + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusFlexrayCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._cyclecount = SearchSearchItemTriggerABusFlexrayCyclecount( + device, f"{self._cmd_syntax}:CYCLEcount" + ) + self._data = SearchSearchItemTriggerABusFlexrayData(device, f"{self._cmd_syntax}:DATa") + self._eoftype = SearchSearchItemTriggerABusFlexrayEoftype( + device, f"{self._cmd_syntax}:EOFTYPE" + ) + self._errtype = SearchSearchItemTriggerABusFlexrayErrtype( + device, f"{self._cmd_syntax}:ERRTYPE" + ) + self._frameid = SearchSearchItemTriggerABusFlexrayFrameid( + device, f"{self._cmd_syntax}:FRAMEID" + ) + self._frametype = SearchSearchItemTriggerABusFlexrayFrametype( + device, f"{self._cmd_syntax}:FRAMEType" + ) + self._header = SearchSearchItemTriggerABusFlexrayHeader( + device, f"{self._cmd_syntax}:HEADER" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusFlexrayCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition`` command. + + Description: + - This command sets or queries the FlexRay bus search condition. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition?`` 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:BUS:FLEXRAY:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition {SOF|FRAMEType|IDentifier|CYCLEcount|HEADer|DATA|IDANDDATA|EOF|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition? + ``` + + Info: + - ``SOF`` sets the trigger condition to start of frame. + - ``FRAMEType`` sets the trigger condition to frame type. + - ``IDentifier`` sets the trigger condition to identifier. + - ``CYCLEcount`` sets the trigger condition to cycle count. + - ``HEADer`` sets the trigger condition to header. + - ``DATA`` sets the trigger condition to data. + - ``IDANDDATA`` sets the trigger condition to ID and data. + - ``EOF`` sets the trigger condition to end of frame. + - ``ERRor`` sets the trigger condition to error. + """ # noqa: E501 + return self._condition + + @property + def cyclecount(self) -> SearchSearchItemTriggerABusFlexrayCyclecount: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:HIVALue`` + command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount:VALue`` command. + """ + return self._cyclecount + + @property + def data(self) -> SearchSearchItemTriggerABusFlexrayData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:QUALifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa:VALue`` command. + """ + return self._data + + @property + def eoftype(self) -> SearchSearchItemTriggerABusFlexrayEoftype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE`` command. + + Description: + - This command sets or queries the end of frame type when searching on a FlexRay bus + signal. The search number is specified by x. The search condition must be set to EOF. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE?`` 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:BUS:FLEXRAY:EOFTYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE {ANY|STATIC|DYNAMIC} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE? + ``` + + Info: + - ``ANY`` specifies either end of file type. + - ``STATIC`` specifies the static end of file type. + - ``DYNAMIC`` specifies the static end of file type. + """ + return self._eoftype + + @property + def errtype(self) -> SearchSearchItemTriggerABusFlexrayErrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE`` command. + + Description: + - This command sets or queries the error type when searching on a FlexRay bus signal. + The search number is specified by x. The search condition must be set to ERROR. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE?`` 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:BUS:FLEXRAY:ERRTYPE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE {CRCHeader|CRCTrailer|NULLFRStatic|NULLFRDynamic|SYNCFrame|STARTupnosync} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE? + ``` + + Info: + - ``CRCHeader`` sets the error type to CRCHeader. + - ``CRCTrailer`` sets the error type to CRCTrailer. + - ``NULLFRStatic`` sets the error type to NULLFRStatic. + - ``NULLFRDynamic`` sets the error type to NULLFRDynamic. + - ``SYNCFrame`` sets the error type to SYNCFrame. + - ``STARTupnosync`` sets the error type to STARTupnosync. + """ # noqa: E501 + return self._errtype + + @property + def frameid(self) -> SearchSearchItemTriggerABusFlexrayFrameid: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID:VALue`` command. + """ + return self._frameid + + @property + def frametype(self) -> SearchSearchItemTriggerABusFlexrayFrametype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType`` command. + + Description: + - This command sets or queries the FlexRay bus search frame type. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType?`` 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:BUS:FLEXRAY:FRAMEType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType {NORMal|PAYload|NULL|SYNC|STARTup} + - SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType? + ``` + + Info: + - ``NORMal`` sets the frame type to normal. + - ``PAYload`` sets the frame type to payload. + - ``NULL`` sets the frame type to null. + - ``SYNC`` sets the frame type to sync. + - ``STARTup`` sets the frame type to startup. + """ + return self._frametype + + @property + def header(self) -> SearchSearchItemTriggerABusFlexrayHeader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.crc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CRC`` command. + - ``.cyclecount``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:CYCLECount`` + command. + - ``.frameid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:FRAMEID`` command. + - ``.indbits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:INDBits`` command. + - ``.paylength``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER:PAYLENgth`` + command. + """ + return self._header + + +class SearchSearchItemTriggerABusEusbTokentype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on any, sof, out, in, or setup + condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType?`` 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:BUS:EUSB:TOKENType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType {ANY|SOF|OUT|IN|SETUP} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType? + ``` + + Info: + - ``ANY`` specifies the token type as Any (XX01). + - ``SOF`` specifies the token type as Start Of Frame (0101). + - ``OUT`` specifies the token type as OUT (0001). + - ``IN`` specifies the token type as IN (1001). + - ``SETUP`` specifies the token type as SETUP (1101). + """ + + +class SearchSearchItemTriggerABusEusbSyncsearch(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch`` command. + + Description: + - This command specifies eUSB Search Sync Bits to be On and Off. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch?`` 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:BUS:EUSB:SYNCSEARch value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch {OFF|ON} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch? + ``` + + Info: + - ``OFF`` specifies the Sync bits as OFF (for Low Speed and Full Speed). + - ``ON`` specifies the Sync bits as ON (for High Speed). + """ + + +class SearchSearchItemTriggerABusEusbSyncbitsMinSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe`` command. + + Description: + - This command sets the number of sync bits, in bits, to be used when triggering on a eUSB + bus signal. The trigger condition must be set to SYNC. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe?`` 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:BUS:EUSB:SYNCBITS:MIN:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe? + ``` + + Info: + - ```` specifies the number of sync bits. The default minimum Sync bits is 12. The + argument range is 12 to 31 bits. + """ + + +class SearchSearchItemTriggerABusEusbSyncbitsMin(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusEusbSyncbitsMinSize( + device, f"{self._cmd_syntax}:SIZe" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusEusbSyncbitsMinSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe`` command. + + Description: + - This command sets the number of sync bits, in bits, to be used when triggering on a + eUSB bus signal. The trigger condition must be set to SYNC. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe?`` 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:BUS:EUSB:SYNCBITS:MIN:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe? + ``` + + Info: + - ```` specifies the number of sync bits. The default minimum Sync bits is 12. The + argument range is 12 to 31 bits. + """ + return self._size + + +class SearchSearchItemTriggerABusEusbSyncbitsMaxSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe`` command. + + Description: + - This command sets the number of sync bits, to be used when triggering on a eUSB bus + signal. The trigger condition must be set to SYNC. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe?`` 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:BUS:EUSB:SYNCBITS:MAX:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe? + ``` + + Info: + - ```` specifies the number of sync bits. The default maximum Sync bits is 32. The + argument range is 13 to 32 bits. + """ + + +class SearchSearchItemTriggerABusEusbSyncbitsMax(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusEusbSyncbitsMaxSize( + device, f"{self._cmd_syntax}:SIZe" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusEusbSyncbitsMaxSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe`` command. + + Description: + - This command sets the number of sync bits, to be used when triggering on a eUSB bus + signal. The trigger condition must be set to SYNC. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe?`` 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:BUS:EUSB:SYNCBITS:MAX:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe? + ``` + + Info: + - ```` specifies the number of sync bits. The default maximum Sync bits is 32. The + argument range is 13 to 32 bits. + """ + return self._size + + +class SearchSearchItemTriggerABusEusbSyncbits(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.max``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX`` command tree. + - ``.min``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._max = SearchSearchItemTriggerABusEusbSyncbitsMax(device, f"{self._cmd_syntax}:MAX") + self._min = SearchSearchItemTriggerABusEusbSyncbitsMin(device, f"{self._cmd_syntax}:MIN") + + @property + def max(self) -> SearchSearchItemTriggerABusEusbSyncbitsMax: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX:SIZe`` command. + """ + return self._max + + @property + def min(self) -> SearchSearchItemTriggerABusEusbSyncbitsMin: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN:SIZe`` command. + """ + return self._min + + +class SearchSearchItemTriggerABusEusbSyncQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier`` command. + + Description: + - This command sets the qualifier to be used when triggering on a eUSB bus signal. The + trigger condition must be set to Sync Bits. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier?`` 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:BUS:EUSB:SYNC:QUAlifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier? + ``` + + Info: + - ``EQual`` specifies the qualifier as Equal. + - ``UNEQual`` specifies the qualifier as Not Equal to. + - ``LESSthan`` specifies the qualifier as Less Than. + - ``MOREthan`` specifies the qualifier as More Than. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``INrange`` specifies the qualifier as Inside Range. + - ``OUTrange`` specifies the qualifier as Out of Range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEusbSync(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._qualifier = SearchSearchItemTriggerABusEusbSyncQualifier( + device, f"{self._cmd_syntax}:QUAlifier" + ) + + @property + def qualifier(self) -> SearchSearchItemTriggerABusEusbSyncQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier`` command. + + Description: + - This command sets the qualifier to be used when triggering on a eUSB bus signal. The + trigger condition must be set to Sync Bits. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier?`` 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:BUS:EUSB:SYNC:QUAlifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier? + ``` + + Info: + - ``EQual`` specifies the qualifier as Equal. + - ``UNEQual`` specifies the qualifier as Not Equal to. + - ``LESSthan`` specifies the qualifier as Less Than. + - ``MOREthan`` specifies the qualifier as More Than. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``INrange`` specifies the qualifier as Inside Range. + - ``OUTrange`` specifies the qualifier as Out of Range. + """ # noqa: E501 + return self._qualifier + + +class SearchSearchItemTriggerABusEusbSplitSeValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue`` command. + + Description: + - This command specifies the eUSB trigger type start/complete condition. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue?`` 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:BUS:EUSB:SPLit:SE:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue {NOCARE|FULLSPEED|LOWSPEED|ISOSTART|ISOMID|ISOEND|ISOALL} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue? + ``` + + Info: + - ``NOCARE`` sets the trigger on any combination of S and E bits. + - ``FULLSPEED`` sets the trigger on S bit = 0 and E bit = 0. + - ``LOWSPEED`` sets the trigger on S bit = 1 and E bit = 0. + - ``ISOSTART`` sets the trigger on S bit = 1, E bit = 0. + - ``ISOMID`` specifies Isochronous Data is Middle (00) Start/End bit value. + - ``ISOEND`` specifies Isochronous Data is End (01) Start/End bit value. + - ``ISOALL`` specifies Isochronous Data is All (11) Start/End bit value. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEusbSplitSe(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEusbSplitSeValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEusbSplitSeValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue`` command. + + Description: + - This command specifies the eUSB trigger type start/complete condition. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue?`` 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:BUS:EUSB:SPLit:SE:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue {NOCARE|FULLSPEED|LOWSPEED|ISOSTART|ISOMID|ISOEND|ISOALL} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue? + ``` + + Info: + - ``NOCARE`` sets the trigger on any combination of S and E bits. + - ``FULLSPEED`` sets the trigger on S bit = 0 and E bit = 0. + - ``LOWSPEED`` sets the trigger on S bit = 1 and E bit = 0. + - ``ISOSTART`` sets the trigger on S bit = 1, E bit = 0. + - ``ISOMID`` specifies Isochronous Data is Middle (00) Start/End bit value. + - ``ISOEND`` specifies Isochronous Data is End (01) Start/End bit value. + - ``ISOALL`` specifies Isochronous Data is All (11) Start/End bit value. + """ # noqa: E501 + return self._value + + +class SearchSearchItemTriggerABusEusbSplitScValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue`` command. + + Description: + - This command specifies the eUSB trigger type start/complete condition. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue?`` 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:BUS:EUSB:SPLit:SC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue {NOCARE|SSPLIT|CSPLIT} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue? + ``` + + Info: + - ``NOCARE`` sets the trigger on either the start or complete phase of the split + transaction. + - ``SSPLIT`` sets the trigger on the start phase of the split transaction. + - ``CSPLIT`` sets the trigger on the complete phase of the split transaction. + """ + + +class SearchSearchItemTriggerABusEusbSplitSc(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEusbSplitScValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEusbSplitScValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue`` command. + + Description: + - This command specifies the eUSB trigger type start/complete condition. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue?`` 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:BUS:EUSB:SPLit:SC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue {NOCARE|SSPLIT|CSPLIT} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue? + ``` + + Info: + - ``NOCARE`` sets the trigger on either the start or complete phase of the split + transaction. + - ``SSPLIT`` sets the trigger on the start phase of the split transaction. + - ``CSPLIT`` sets the trigger on the complete phase of the split transaction. + """ + return self._value + + +class SearchSearchItemTriggerABusEusbSplitPortValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue`` command. + + Description: + - This command sets the binary port address value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to Special with a packet type SPLIT. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue?`` 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:BUS:EUSB:SPLit:PORT:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters are + 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbSplitPort(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEusbSplitPortValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEusbSplitPortValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue`` command. + + Description: + - This command sets the binary port address value to be used when triggering on a eUSB + bus signal. The trigger condition must be set to Special with a packet type SPLIT. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue?`` 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:BUS:EUSB:SPLit:PORT:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters + are 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + return self._value + + +class SearchSearchItemTriggerABusEusbSplitHubValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue`` command. + + Description: + - This command sets the binary hub address value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to Special with packet type SPLIT. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue?`` 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:BUS:EUSB:SPLit:HUB:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters are + 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbSplitHub(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEusbSplitHubValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEusbSplitHubValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue`` command. + + Description: + - This command sets the binary hub address value to be used when triggering on a eUSB + bus signal. The trigger condition must be set to Special with packet type SPLIT. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue?`` 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:BUS:EUSB:SPLit:HUB:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters + are 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + return self._value + + +class SearchSearchItemTriggerABusEusbSplitEtValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue`` command. + + Description: + - This command specifies the eUSB trigger type endpoint condition. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue?`` 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:BUS:EUSB:SPLit:ET:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue {NOCARE|CONTRol|ISOchronous|BULK|INTERRUPT} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue? + ``` + + Info: + - ``NOCARE`` specifies the Endpoint Type value as Don't Care. + - ``CONTRol`` specifies the Endpoint Type value as Control (00). + - ``ISOchronous`` specifies the Endpoint Type value as Isochronous (01). + - ``BULK`` specifies the Endpoint Type value as Bulk (10). + - ``INTERRUPT`` specifies the Endpoint Type value as Interrupt (11). + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEusbSplitEt(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEusbSplitEtValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEusbSplitEtValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue`` command. + + Description: + - This command specifies the eUSB trigger type endpoint condition. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue?`` 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:BUS:EUSB:SPLit:ET:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue {NOCARE|CONTRol|ISOchronous|BULK|INTERRUPT} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue? + ``` + + Info: + - ``NOCARE`` specifies the Endpoint Type value as Don't Care. + - ``CONTRol`` specifies the Endpoint Type value as Control (00). + - ``ISOchronous`` specifies the Endpoint Type value as Isochronous (01). + - ``BULK`` specifies the Endpoint Type value as Bulk (10). + - ``INTERRUPT`` specifies the Endpoint Type value as Interrupt (11). + """ # noqa: E501 + return self._value + + +class SearchSearchItemTriggerABusEusbSplit(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.et``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET`` command tree. + - ``.hub``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB`` command tree. + - ``.port``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT`` command tree. + - ``.sc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC`` command tree. + - ``.se``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._et = SearchSearchItemTriggerABusEusbSplitEt(device, f"{self._cmd_syntax}:ET") + self._hub = SearchSearchItemTriggerABusEusbSplitHub(device, f"{self._cmd_syntax}:HUB") + self._port = SearchSearchItemTriggerABusEusbSplitPort(device, f"{self._cmd_syntax}:PORT") + self._sc = SearchSearchItemTriggerABusEusbSplitSc(device, f"{self._cmd_syntax}:SC") + self._se = SearchSearchItemTriggerABusEusbSplitSe(device, f"{self._cmd_syntax}:SE") + + @property + def et(self) -> SearchSearchItemTriggerABusEusbSplitEt: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET:VALue`` command. + """ + return self._et + + @property + def hub(self) -> SearchSearchItemTriggerABusEusbSplitHub: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB:VALue`` command. + """ + return self._hub + + @property + def port(self) -> SearchSearchItemTriggerABusEusbSplitPort: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT:VALue`` command. + """ + return self._port + + @property + def sc(self) -> SearchSearchItemTriggerABusEusbSplitSc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC:VALue`` command. + """ + return self._sc + + @property + def se(self) -> SearchSearchItemTriggerABusEusbSplitSe: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE:VALue`` command. + """ + return self._se + + +class SearchSearchItemTriggerABusEusbSpecialtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on any, err, split, ping, or + reserved condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType?`` 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:BUS:EUSB:SPECIALType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType {ANY|PREamble|ERROr|SPLit|PING|RESERVed} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType? + ``` + + Info: + - ``ANY`` specifies the PID value as Any (XX00). + - ``PREamble`` specifies the PID value as PRE (1100). + - ``ERROr`` specifies the PID value as ERR (1100). + - ``SPLit`` specifies the PID value as Split (1000). + - ``PING`` specifies the PID value as PING (0100). + - ``RESERVed`` specifies the PID value as Reserved (0000). + """ + + +class SearchSearchItemTriggerABusEusbSofframenumber(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber`` command. + + Description: + - This command sets the binary frame number to be used when triggering on a eUSB bus signal. + The trigger condition must be set to TOKEN. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber?`` 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:BUS:EUSB:SOFFRAMENUMber value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber? + ``` + + Info: + - ```` specifies the binary frame number within the range 000 0000 0000 to 111 1111 + 1111 (000 hex to 7FF hex). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbRapOption(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion`` command. + + Description: + - This command specifies the eUSB Register Access Protocol search option. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion?`` 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:BUS:EUSB:RAP:OPTion value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion {COMMand|ADDRess|RAPDATa} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion? + ``` + + Info: + - ``COMMand`` specifies the RAP option as Command. + - ``ADDRess`` specifies the RAP option as Address. + - ``RAPDATa`` specifies the RAP option as RapData. + """ + + +class SearchSearchItemTriggerABusEusbRapDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue`` command. + + Description: + - This command sets the binary Register Access Protocol data value to be used when + triggering on a eUSB bus signal. The trigger condition must be set to TOKEN. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue?`` 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:BUS:EUSB:RAP:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters are + 0, 1, and X for binary; for hexadecimal; and symbolic. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbRapData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEusbRapDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEusbRapDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue`` command. + + Description: + - This command sets the binary Register Access Protocol data value to be used when + triggering on a eUSB bus signal. The trigger condition must be set to TOKEN. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue?`` 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:BUS:EUSB:RAP:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters + are 0, 1, and X for binary; for hexadecimal; and symbolic. + """ + return self._value + + +class SearchSearchItemTriggerABusEusbRapCommand(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand`` command. + + Description: + - This command specifies the eUSB Register Access Protocol search option. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand?`` 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:BUS:EUSB:RAP:COMMand value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand {ALL|WRITe|READ|CLEar|SET} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand? + ``` + + Info: + - ``ALL`` specifies the RAP command as All. + - ``WRITe`` specifies the RAP command as Write. + - ``READ`` specifies the RAP command as Read. + - ``CLEar`` specifies the RAP command as Clear. + - ``SET`` specifies the RAP command as Set. + """ + + +class SearchSearchItemTriggerABusEusbRapAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue`` command. + + Description: + - This command sets the binary Register Access Protocol address value to be used when + triggering on a eUSB bus signal. The trigger condition must be set to TOKEN. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue?`` 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:BUS:EUSB:RAP:ADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters are + 0, 1, and X for binary; for hexadecimal; and symbolic. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbRapAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEusbRapAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEusbRapAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue`` command. + + Description: + - This command sets the binary Register Access Protocol address value to be used when + triggering on a eUSB bus signal. The trigger condition must be set to TOKEN. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue?`` 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:BUS:EUSB:RAP:ADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters + are 0, 1, and X for binary; for hexadecimal; and symbolic. + """ + return self._value + + +class SearchSearchItemTriggerABusEusbRap(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress`` command tree. + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa`` command tree. + - ``.option``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusEusbRapAddress( + device, f"{self._cmd_syntax}:ADDress" + ) + self._command = SearchSearchItemTriggerABusEusbRapCommand( + device, f"{self._cmd_syntax}:COMMand" + ) + self._data = SearchSearchItemTriggerABusEusbRapData(device, f"{self._cmd_syntax}:DATa") + self._option = SearchSearchItemTriggerABusEusbRapOption( + device, f"{self._cmd_syntax}:OPTion" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusEusbRapAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress:VALue`` command. + """ + return self._address + + @property + def command(self) -> SearchSearchItemTriggerABusEusbRapCommand: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand`` command. + + Description: + - This command specifies the eUSB Register Access Protocol search option. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand?`` 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:BUS:EUSB:RAP:COMMand value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand {ALL|WRITe|READ|CLEar|SET} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand? + ``` + + Info: + - ``ALL`` specifies the RAP command as All. + - ``WRITe`` specifies the RAP command as Write. + - ``READ`` specifies the RAP command as Read. + - ``CLEar`` specifies the RAP command as Clear. + - ``SET`` specifies the RAP command as Set. + """ + return self._command + + @property + def data(self) -> SearchSearchItemTriggerABusEusbRapData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa:VALue`` command. + """ + return self._data + + @property + def option(self) -> SearchSearchItemTriggerABusEusbRapOption: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion`` command. + + Description: + - This command specifies the eUSB Register Access Protocol search option. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion?`` 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:BUS:EUSB:RAP:OPTion value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion {COMMand|ADDRess|RAPDATa} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion? + ``` + + Info: + - ``COMMand`` specifies the RAP option as Command. + - ``ADDRess`` specifies the RAP option as Address. + - ``RAPDATa`` specifies the RAP option as RapData. + """ + return self._option + + +class SearchSearchItemTriggerABusEusbHandshaketype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on any, ack, nak, stall, or nyet + condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType?`` 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:BUS:EUSB:HANDSHAKEType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType {ANY|ACK|NAK|STALL|NYET} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType? + ``` + + Info: + - ``ANY`` specifies the handshake type as Any (0010). + - ``ACK`` specifies the handshake type as Acknowledgement (positive) (XX10). + - ``NAK`` specifies the handshake type as Negative Acknowledgment (1010). + - ``STALL`` specifies the error type as PID Check Bits. + - ``NYET`` specifies the handshake type as Stall (endpoint is halted or control pipe request + not supported) (1110). + """ + + +class SearchSearchItemTriggerABusEusbErrtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on a PID, Token CRC5, Data CRC16, + or Bit stuffing condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType?`` 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:BUS:EUSB:ERRType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType {BITSTUFFing|CRC5|CRC16|PID} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType? + ``` + + Info: + - ``BITSTUFFing`` specifies the error type as Bit Stuffing. + - ``CRC5`` specifies the error type as Token CRC5 (Cyclic Redundancy Check 5). + - ``CRC16`` specifies the error type as Data CRC16 (Cyclic Redundancy Check 16). + - ``PID`` specifies the error type as PID Check Bits. + """ + + +class SearchSearchItemTriggerABusEusbEopbitsMinSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe`` command. + + Description: + - This command sets the number of EOP bits to be used when triggering on a eUSB bus signal. + The trigger condition must be set to EOP. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe?`` 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:BUS:EUSB:EOPBITS:MIN:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe? + ``` + + Info: + - ```` specifies the number of EOP bits. The default minimum EOP bits is 8. The + argument range is 8 to 99 bits. + """ + + +class SearchSearchItemTriggerABusEusbEopbitsMin(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusEusbEopbitsMinSize( + device, f"{self._cmd_syntax}:SIZe" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusEusbEopbitsMinSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe`` command. + + Description: + - This command sets the number of EOP bits to be used when triggering on a eUSB bus + signal. The trigger condition must be set to EOP. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe?`` 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:BUS:EUSB:EOPBITS:MIN:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe? + ``` + + Info: + - ```` specifies the number of EOP bits. The default minimum EOP bits is 8. The + argument range is 8 to 99 bits. + """ + return self._size + + +class SearchSearchItemTriggerABusEusbEopbitsMaxSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe`` command. + + Description: + - This command sets the number of EOP bits to be used when triggering on a eUSB bus signal. + The trigger condition must be set to EOP. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe?`` 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:BUS:EUSB:EOPBITS:MAX:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe? + ``` + + Info: + - ```` specifies the number of EOP bits. The default maximum EOP bits is 100. The + argument range is 9 to 100 bits. + """ + + +class SearchSearchItemTriggerABusEusbEopbitsMax(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusEusbEopbitsMaxSize( + device, f"{self._cmd_syntax}:SIZe" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusEusbEopbitsMaxSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe`` command. + + Description: + - This command sets the number of EOP bits to be used when triggering on a eUSB bus + signal. The trigger condition must be set to EOP. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe?`` 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:BUS:EUSB:EOPBITS:MAX:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe? + ``` + + Info: + - ```` specifies the number of EOP bits. The default maximum EOP bits is 100. The + argument range is 9 to 100 bits. + """ + return self._size + + +class SearchSearchItemTriggerABusEusbEopbits(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.max``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX`` command tree. + - ``.min``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._max = SearchSearchItemTriggerABusEusbEopbitsMax(device, f"{self._cmd_syntax}:MAX") + self._min = SearchSearchItemTriggerABusEusbEopbitsMin(device, f"{self._cmd_syntax}:MIN") + + @property + def max(self) -> SearchSearchItemTriggerABusEusbEopbitsMax: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX:SIZe`` command. + """ + return self._max + + @property + def min(self) -> SearchSearchItemTriggerABusEusbEopbitsMin: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN:SIZe`` command. + """ + return self._min + + +class SearchSearchItemTriggerABusEusbEopQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier`` command. + + Description: + - This command sets the qualifier to be used when triggering on a eUSB bus signal. The + trigger condition must be set to EOP Bits. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier?`` 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:BUS:EUSB:EOP:QUAlifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier? + ``` + + Info: + - ``EQual`` specifies the qualifier as Equal. + - ``UNEQual`` specifies the qualifier as Not Equal to. + - ``LESSthan`` specifies the qualifier as Less Than. + - ``MOREthan`` specifies the qualifier as More Than. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``INrange`` specifies the qualifier as Inside Range. + - ``OUTrange`` specifies the qualifier as Out of Range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEusbEopDatabitsSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe`` command. + + Description: + - This command sets the number of EOP bits, in bytes, to be used when triggering on a eUSB + bus signal. The trigger condition must be set to EOP. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe?`` 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:BUS:EUSB:EOP:DATABITS:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe? + ``` + + Info: + - ```` specifies the number of EOP bits. The default EOP bits is 8. The argument range + is 8 to 100 bits. + """ + + +class SearchSearchItemTriggerABusEusbEopDatabits(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusEusbEopDatabitsSize( + device, f"{self._cmd_syntax}:SIZe" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusEusbEopDatabitsSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe`` command. + + Description: + - This command sets the number of EOP bits, in bytes, to be used when triggering on a + eUSB bus signal. The trigger condition must be set to EOP. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe?`` 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:BUS:EUSB:EOP:DATABITS:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe? + ``` + + Info: + - ```` specifies the number of EOP bits. The default EOP bits is 8. The argument + range is 8 to 100 bits. + """ + return self._size + + +class SearchSearchItemTriggerABusEusbEop(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.databits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS`` command tree. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._databits = SearchSearchItemTriggerABusEusbEopDatabits( + device, f"{self._cmd_syntax}:DATABITS" + ) + self._qualifier = SearchSearchItemTriggerABusEusbEopQualifier( + device, f"{self._cmd_syntax}:QUAlifier" + ) + + @property + def databits(self) -> SearchSearchItemTriggerABusEusbEopDatabits: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS:SIZe`` command. + """ + return self._databits + + @property + def qualifier(self) -> SearchSearchItemTriggerABusEusbEopQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier`` command. + + Description: + - This command sets the qualifier to be used when triggering on a eUSB bus signal. The + trigger condition must be set to EOP Bits. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier?`` 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:BUS:EUSB:EOP:QUAlifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier? + ``` + + Info: + - ``EQual`` specifies the qualifier as Equal. + - ``UNEQual`` specifies the qualifier as Not Equal to. + - ``LESSthan`` specifies the qualifier as Less Than. + - ``MOREthan`` specifies the qualifier as More Than. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``INrange`` specifies the qualifier as Inside Range. + - ``OUTrange`` specifies the qualifier as Out of Range. + """ # noqa: E501 + return self._qualifier + + +class SearchSearchItemTriggerABusEusbEndsearch(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch`` command. + + Description: + - This command specifies eUSB Search EOP Bits to be On and Off. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch?`` 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:BUS:EUSB:ENDSEARch value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch {OFF|ON} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch? + ``` + + Info: + - ``OFF`` specifies the EOP bits as OFF (for Low Speed and Full Speed). + - ``ON`` specifies the EOP bits as ON (for High Speed). + """ + + +class SearchSearchItemTriggerABusEusbEndpointValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue`` command. + + Description: + - This command sets the endpoint binary value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to TOKEN. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue?`` 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:BUS:EUSB:ENDPoint:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. The valid characters + are 0, 1, and X for binary format; A-F, 0-9 and X for hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbEndpoint(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEusbEndpointValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEusbEndpointValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue`` command. + + Description: + - This command sets the endpoint binary value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to TOKEN. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue?`` 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:BUS:EUSB:ENDPoint:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue? + ``` + + Info: + - ```` specifies the data value in the specified valid format. The valid + characters are 0, 1, and X for binary format; A-F, 0-9 and X for hexadecimal format. + """ + return self._value + + +class SearchSearchItemTriggerABusEusbDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue`` command. + + Description: + - This command sets the binary data value to be used when triggering on a eUSB bus signal. + The trigger condition must be set to DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue?`` 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:BUS:EUSB:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters are + 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbDataType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on any, data0, data1, data2, or + mdata condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe?`` 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:BUS:EUSB:DATa:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe {ANY|DATA0|DATA1|DATA2|MDATA} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe? + ``` + + Info: + - ``ANY`` specifies either a DATA0 or DATA1 data packet type. + - ``DATA0`` specifies a DATA0 data packet type. + - ``DATA1`` specifies a DATA1 data packet type. + - ``DATA2`` specifies a DATA2 data packet type when on HIGH speed. + - ``MDATA`` specifies a MDATA data packet type when on HIGH speed. + """ + + +class SearchSearchItemTriggerABusEusbDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe`` command. + + Description: + - This command sets the length of the data string, in bytes, to be used when triggering on a + eUSB bus signal. The trigger condition must be set to DATA. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe?`` 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:BUS:EUSB:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe? + ``` + + Info: + - ```` specifies the length of the data string. Default data size value is 1. The + argument range is 1 to 16 bytes. + """ + + +class SearchSearchItemTriggerABusEusbDataQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier`` command. + + Description: + - This command sets the qualifier to be used when triggering on a eUSB bus signal. The + trigger condition must be set to IDANDDATA OR DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier?`` 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:BUS:EUSB:DATa:QUAlifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|Inrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier? + ``` + + Info: + - ``EQual`` specifies the qualifier as Equal. + - ``UNEQual`` specifies the qualifier as Not Equal to. + - ``LESSthan`` specifies the qualifier as Less Than. + - ``MOREthan`` specifies the qualifier as More Than. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``Inrange`` specifies the qualifier as Inside Range. + - ``OUTrange`` specifies the qualifier as Out of Range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEusbDataOffset(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet`` command. + + Description: + - This command sets the byte offset to look for a data pattern at, in bytes, to be used when + triggering on a eUSB bus signal. The trigger condition must be set to DATA. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet?`` 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:BUS:EUSB:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet? + ``` + + Info: + - ```` specifies the byte offset. Default offset value is -1. The argument range is -1 + to 1024. + """ + + +class SearchSearchItemTriggerABusEusbDataHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue`` command. + + Description: + - This command sets the high binary data value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue?`` 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:BUS:EUSB:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters are + 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusEusbDataHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._offset = SearchSearchItemTriggerABusEusbDataOffset( + device, f"{self._cmd_syntax}:OFFSet" + ) + self._qualifier = SearchSearchItemTriggerABusEusbDataQualifier( + device, f"{self._cmd_syntax}:QUAlifier" + ) + self._size = SearchSearchItemTriggerABusEusbDataSize(device, f"{self._cmd_syntax}:SIZe") + self._type = SearchSearchItemTriggerABusEusbDataType(device, f"{self._cmd_syntax}:TYPe") + self._value = SearchSearchItemTriggerABusEusbDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def hivalue(self) -> SearchSearchItemTriggerABusEusbDataHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue`` command. + + Description: + - This command sets the high binary data value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to DATA. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue?`` 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:BUS:EUSB:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters + are 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + return self._hivalue + + @property + def offset(self) -> SearchSearchItemTriggerABusEusbDataOffset: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet`` command. + + Description: + - This command sets the byte offset to look for a data pattern at, in bytes, to be used + when triggering on a eUSB bus signal. The trigger condition must be set to DATA. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet?`` 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:BUS:EUSB:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet? + ``` + + Info: + - ```` specifies the byte offset. Default offset value is -1. The argument range is + -1 to 1024. + """ + return self._offset + + @property + def qualifier(self) -> SearchSearchItemTriggerABusEusbDataQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier`` command. + + Description: + - This command sets the qualifier to be used when triggering on a eUSB bus signal. The + trigger condition must be set to IDANDDATA OR DATA. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier?`` 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:BUS:EUSB:DATa:QUAlifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|Inrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier? + ``` + + Info: + - ``EQual`` specifies the qualifier as Equal. + - ``UNEQual`` specifies the qualifier as Not Equal to. + - ``LESSthan`` specifies the qualifier as Less Than. + - ``MOREthan`` specifies the qualifier as More Than. + - ``LESSEQual`` specifies the qualifier as Less Than or Equal to. + - ``MOREEQual`` specifies the qualifier as More Than or Equal to. + - ``Inrange`` specifies the qualifier as Inside Range. + - ``OUTrange`` specifies the qualifier as Out of Range. + """ # noqa: E501 + return self._qualifier + + @property + def size(self) -> SearchSearchItemTriggerABusEusbDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe`` command. + + Description: + - This command sets the length of the data string, in bytes, to be used when triggering + on a eUSB bus signal. The trigger condition must be set to DATA. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe?`` 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:BUS:EUSB:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe? + ``` + + Info: + - ```` specifies the length of the data string. Default data size value is 1. The + argument range is 1 to 16 bytes. + """ + return self._size + + @property + def type(self) -> SearchSearchItemTriggerABusEusbDataType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on any, data0, data1, data2, + or mdata condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe?`` 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:BUS:EUSB:DATa:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe {ANY|DATA0|DATA1|DATA2|MDATA} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe? + ``` + + Info: + - ``ANY`` specifies either a DATA0 or DATA1 data packet type. + - ``DATA0`` specifies a DATA0 data packet type. + - ``DATA1`` specifies a DATA1 data packet type. + - ``DATA2`` specifies a DATA2 data packet type when on HIGH speed. + - ``MDATA`` specifies a MDATA data packet type when on HIGH speed. + """ + return self._type + + @property + def value(self) -> SearchSearchItemTriggerABusEusbDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue`` command. + + Description: + - This command sets the binary data value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to DATA. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue?`` 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:BUS:EUSB:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters + are 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + return self._value + + +class SearchSearchItemTriggerABusEusbDatabitsSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe`` command. + + Description: + - This command sets the number of Sync bits, in bytes, to be used when triggering on a eUSB + bus signal. The trigger condition must be set to SYNC. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe?`` 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:BUS:EUSB:DATABITS:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe? + ``` + + Info: + - ```` specifies the number of the Sync bits. The default Sync bits is 12. The argument + range is 12 to 32 bits. + """ + + +class SearchSearchItemTriggerABusEusbDatabits(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusEusbDatabitsSize(device, f"{self._cmd_syntax}:SIZe") + + @property + def size(self) -> SearchSearchItemTriggerABusEusbDatabitsSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe`` command. + + Description: + - This command sets the number of Sync bits, in bytes, to be used when triggering on a + eUSB bus signal. The trigger condition must be set to SYNC. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe?`` 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:BUS:EUSB:DATABITS:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe? + ``` + + Info: + - ```` specifies the number of the Sync bits. The default Sync bits is 12. The + argument range is 12 to 32 bits. + """ + return self._size + + +class SearchSearchItemTriggerABusEusbCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition`` command. + + Description: + - This command sets or queries the search type for the specified search. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition?`` 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:BUS:EUSB:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition {SYNC|HANDSHAKEPacket|SPECIALPacket|ERRor|TOKENPacket|DATAPacket|RESET|CONNect|CONTROLMESSage|SUSPEND|DEVICEChirp|HOSTChirp|PORTReset|PORTConfiguration|RESUME|EOP} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition? + ``` + + Info: + - ``SYNC`` specifies the search condition as Sync. + - ``HANDSHAKEPacket`` specifies the search condition as Handshake Packet. + - ``SPECIALPacket`` specifies the search condition as Special Packet. + - ``ERRor`` specifies the search condition as Error. + - ``TOKENPacket`` specifies the search condition as Token (Address) Packet. + - ``DATAPacket`` specifies the search condition as Data Packet. + - ``RESET`` specifies the search condition as Reset. + - ``CONNect`` specifies the search condition as connect. + - ``CONTROLMESSage`` specifies the search condition as Control Message. + - ``SUSPEND`` specifies the search condition as Suspend. + - ``DEVICEChirp`` specifies the search condition as Device chirp. + - ``HOSTChirp`` specifies the search condition as Host Chirp. + - ``PORTReset`` specifies the search condition as Port Reset. + - ``PORTConfiguration`` specifies the search condition as Port Configuration. + - ``RESUME`` specifies the search condition as Resume. + - ``RAP`` specifies the search condition as Register Access Protocol. + - ``EOP`` specifies the search condition as End of Packet. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEusbAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue`` command. + + Description: + - This command sets the binary address value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to TOKEN. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue?`` 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:BUS:EUSB:ADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters are + 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbAddressHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue`` command. + + Description: + - This command sets the high binary address value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to TOKEN. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue?`` 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:BUS:EUSB:ADDress:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters are + 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEusbAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusEusbAddressHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._value = SearchSearchItemTriggerABusEusbAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusEusbAddressHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue`` command. + + Description: + - This command sets the high binary address value to be used when triggering on a eUSB + bus signal. The trigger condition must be set to TOKEN. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue?`` 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:BUS:EUSB:ADDress:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters + are 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + return self._hivalue + + @property + def value(self) -> SearchSearchItemTriggerABusEusbAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue`` command. + + Description: + - This command sets the binary address value to be used when triggering on a eUSB bus + signal. The trigger condition must be set to TOKEN. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue?`` 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:BUS:EUSB:ADDress:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue? + ``` + + Info: + - ```` specifies the value in the specified valid format. The valid characters + are 0, 1, and X (for binary, for hexadecimal, and symbolic). + """ + return self._value + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusEusb(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition`` command. + - ``.databits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS`` command tree. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa`` command tree. + - ``.endpoint``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint`` command tree. + - ``.endsearch``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch`` command. + - ``.eop``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP`` command tree. + - ``.eopbits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType`` command. + - ``.handshaketype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType`` command. + - ``.rap``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP`` command tree. + - ``.sofframenumber``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber`` command. + - ``.specialtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType`` command. + - ``.split``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit`` command tree. + - ``.sync``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC`` command tree. + - ``.syncbits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS`` command tree. + - ``.syncsearch``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch`` command. + - ``.tokentype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusEusbAddress( + device, f"{self._cmd_syntax}:ADDress" + ) + self._condition = SearchSearchItemTriggerABusEusbCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._databits = SearchSearchItemTriggerABusEusbDatabits( + device, f"{self._cmd_syntax}:DATABITS" + ) + self._data = SearchSearchItemTriggerABusEusbData(device, f"{self._cmd_syntax}:DATa") + self._endpoint = SearchSearchItemTriggerABusEusbEndpoint( + device, f"{self._cmd_syntax}:ENDPoint" + ) + self._endsearch = SearchSearchItemTriggerABusEusbEndsearch( + device, f"{self._cmd_syntax}:ENDSEARch" + ) + self._eop = SearchSearchItemTriggerABusEusbEop(device, f"{self._cmd_syntax}:EOP") + self._eopbits = SearchSearchItemTriggerABusEusbEopbits( + device, f"{self._cmd_syntax}:EOPBITS" + ) + self._errtype = SearchSearchItemTriggerABusEusbErrtype( + device, f"{self._cmd_syntax}:ERRType" + ) + self._handshaketype = SearchSearchItemTriggerABusEusbHandshaketype( + device, f"{self._cmd_syntax}:HANDSHAKEType" + ) + self._rap = SearchSearchItemTriggerABusEusbRap(device, f"{self._cmd_syntax}:RAP") + self._sofframenumber = SearchSearchItemTriggerABusEusbSofframenumber( + device, f"{self._cmd_syntax}:SOFFRAMENUMber" + ) + self._specialtype = SearchSearchItemTriggerABusEusbSpecialtype( + device, f"{self._cmd_syntax}:SPECIALType" + ) + self._split = SearchSearchItemTriggerABusEusbSplit(device, f"{self._cmd_syntax}:SPLit") + self._sync = SearchSearchItemTriggerABusEusbSync(device, f"{self._cmd_syntax}:SYNC") + self._syncbits = SearchSearchItemTriggerABusEusbSyncbits( + device, f"{self._cmd_syntax}:SYNCBITS" + ) + self._syncsearch = SearchSearchItemTriggerABusEusbSyncsearch( + device, f"{self._cmd_syntax}:SYNCSEARch" + ) + self._tokentype = SearchSearchItemTriggerABusEusbTokentype( + device, f"{self._cmd_syntax}:TOKENType" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusEusbAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:HIVALue`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress:VALue`` command. + """ + return self._address + + @property + def condition(self) -> SearchSearchItemTriggerABusEusbCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition`` command. + + Description: + - This command sets or queries the search type for the specified search. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition?`` 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:BUS:EUSB:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition {SYNC|HANDSHAKEPacket|SPECIALPacket|ERRor|TOKENPacket|DATAPacket|RESET|CONNect|CONTROLMESSage|SUSPEND|DEVICEChirp|HOSTChirp|PORTReset|PORTConfiguration|RESUME|EOP} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition? + ``` + + Info: + - ``SYNC`` specifies the search condition as Sync. + - ``HANDSHAKEPacket`` specifies the search condition as Handshake Packet. + - ``SPECIALPacket`` specifies the search condition as Special Packet. + - ``ERRor`` specifies the search condition as Error. + - ``TOKENPacket`` specifies the search condition as Token (Address) Packet. + - ``DATAPacket`` specifies the search condition as Data Packet. + - ``RESET`` specifies the search condition as Reset. + - ``CONNect`` specifies the search condition as connect. + - ``CONTROLMESSage`` specifies the search condition as Control Message. + - ``SUSPEND`` specifies the search condition as Suspend. + - ``DEVICEChirp`` specifies the search condition as Device chirp. + - ``HOSTChirp`` specifies the search condition as Host Chirp. + - ``PORTReset`` specifies the search condition as Port Reset. + - ``PORTConfiguration`` specifies the search condition as Port Configuration. + - ``RESUME`` specifies the search condition as Resume. + - ``RAP`` specifies the search condition as Register Access Protocol. + - ``EOP`` specifies the search condition as End of Packet. + """ # noqa: E501 + return self._condition + + @property + def databits(self) -> SearchSearchItemTriggerABusEusbDatabits: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS:SIZe`` command. + """ + return self._databits + + @property + def data(self) -> SearchSearchItemTriggerABusEusbData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:QUAlifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:SIZe`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:TYPe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa:VALue`` command. + """ + return self._data + + @property + def endpoint(self) -> SearchSearchItemTriggerABusEusbEndpoint: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint:VALue`` command. + """ + return self._endpoint + + @property + def endsearch(self) -> SearchSearchItemTriggerABusEusbEndsearch: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch`` command. + + Description: + - This command specifies eUSB Search EOP Bits to be On and Off. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch?`` 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:BUS:EUSB:ENDSEARch value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch {OFF|ON} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch? + ``` + + Info: + - ``OFF`` specifies the EOP bits as OFF (for Low Speed and Full Speed). + - ``ON`` specifies the EOP bits as ON (for High Speed). + """ + return self._endsearch + + @property + def eop(self) -> SearchSearchItemTriggerABusEusbEop: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.databits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:DATABITS`` command tree. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP:QUAlifier`` command. + """ + return self._eop + + @property + def eopbits(self) -> SearchSearchItemTriggerABusEusbEopbits: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.max``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MAX`` command tree. + - ``.min``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS:MIN`` command tree. + """ + return self._eopbits + + @property + def errtype(self) -> SearchSearchItemTriggerABusEusbErrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on a PID, Token CRC5, Data + CRC16, or Bit stuffing condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType?`` 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:BUS:EUSB:ERRType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType {BITSTUFFing|CRC5|CRC16|PID} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType? + ``` + + Info: + - ``BITSTUFFing`` specifies the error type as Bit Stuffing. + - ``CRC5`` specifies the error type as Token CRC5 (Cyclic Redundancy Check 5). + - ``CRC16`` specifies the error type as Data CRC16 (Cyclic Redundancy Check 16). + - ``PID`` specifies the error type as PID Check Bits. + """ + return self._errtype + + @property + def handshaketype(self) -> SearchSearchItemTriggerABusEusbHandshaketype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on any, ack, nak, stall, or + nyet condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType?`` 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:BUS:EUSB:HANDSHAKEType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType {ANY|ACK|NAK|STALL|NYET} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType? + ``` + + Info: + - ``ANY`` specifies the handshake type as Any (0010). + - ``ACK`` specifies the handshake type as Acknowledgement (positive) (XX10). + - ``NAK`` specifies the handshake type as Negative Acknowledgment (1010). + - ``STALL`` specifies the error type as PID Check Bits. + - ``NYET`` specifies the handshake type as Stall (endpoint is halted or control pipe + request not supported) (1110). + """ + return self._handshaketype + + @property + def rap(self) -> SearchSearchItemTriggerABusEusbRap: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:ADDress`` command tree. + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:COMMand`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:DATa`` command tree. + - ``.option``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP:OPTion`` command. + """ + return self._rap + + @property + def sofframenumber(self) -> SearchSearchItemTriggerABusEusbSofframenumber: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber`` command. + + Description: + - This command sets the binary frame number to be used when triggering on a eUSB bus + signal. The trigger condition must be set to TOKEN. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber?`` 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:BUS:EUSB:SOFFRAMENUMber value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber? + ``` + + Info: + - ```` specifies the binary frame number within the range 000 0000 0000 to 111 + 1111 1111 (000 hex to 7FF hex). + """ + return self._sofframenumber + + @property + def specialtype(self) -> SearchSearchItemTriggerABusEusbSpecialtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on any, err, split, ping, or + reserved condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType?`` 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:BUS:EUSB:SPECIALType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType {ANY|PREamble|ERROr|SPLit|PING|RESERVed} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType? + ``` + + Info: + - ``ANY`` specifies the PID value as Any (XX00). + - ``PREamble`` specifies the PID value as PRE (1100). + - ``ERROr`` specifies the PID value as ERR (1100). + - ``SPLit`` specifies the PID value as Split (1000). + - ``PING`` specifies the PID value as PING (0100). + - ``RESERVed`` specifies the PID value as Reserved (0000). + """ # noqa: E501 + return self._specialtype + + @property + def split(self) -> SearchSearchItemTriggerABusEusbSplit: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.et``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:ET`` command tree. + - ``.hub``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:HUB`` command tree. + - ``.port``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:PORT`` command tree. + - ``.sc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SC`` command tree. + - ``.se``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit:SE`` command tree. + """ + return self._split + + @property + def sync(self) -> SearchSearchItemTriggerABusEusbSync: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC:QUAlifier`` command. + """ + return self._sync + + @property + def syncbits(self) -> SearchSearchItemTriggerABusEusbSyncbits: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.max``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MAX`` command tree. + - ``.min``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS:MIN`` command tree. + """ + return self._syncbits + + @property + def syncsearch(self) -> SearchSearchItemTriggerABusEusbSyncsearch: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch`` command. + + Description: + - This command specifies eUSB Search Sync Bits to be On and Off. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch?`` 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:BUS:EUSB:SYNCSEARch value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch {OFF|ON} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch? + ``` + + Info: + - ``OFF`` specifies the Sync bits as OFF (for Low Speed and Full Speed). + - ``ON`` specifies the Sync bits as ON (for High Speed). + """ + return self._syncsearch + + @property + def tokentype(self) -> SearchSearchItemTriggerABusEusbTokentype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType`` command. + + Description: + - This command specifies the eUSB trigger type to be valid on any, sof, out, in, or + setup condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType?`` 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:BUS:EUSB:TOKENType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType {ANY|SOF|OUT|IN|SETUP} + - SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType? + ``` + + Info: + - ``ANY`` specifies the token type as Any (XX01). + - ``SOF`` specifies the token type as Start Of Frame (0101). + - ``OUT`` specifies the token type as OUT (0001). + - ``IN`` specifies the token type as IN (1001). + - ``SETUP`` specifies the token type as SETUP (1101). + """ + return self._tokentype + + +class SearchSearchItemTriggerABusEthernetTcpheaderSourceportValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue`` command. + + Description: + - This command specifies the binary source port value to use when searching on an Ethernet + bus signal. The search condition needs to be set to TCPHeader. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue?`` 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:BUS:ETHERnet:TCPHeader:SOUrceport:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue? + ``` + + Info: + - ```` is a quoted string of up to 16 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetTcpheaderSourceport(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetTcpheaderSourceportValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetTcpheaderSourceportValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue`` command. + + Description: + - This command specifies the binary source port value to use when searching on an + Ethernet bus signal. The search condition needs to be set to TCPHeader. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue?`` 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:BUS:ETHERnet:TCPHeader:SOUrceport:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue? + ``` + + Info: + - ```` is a quoted string of up to 16 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetTcpheaderSeqnumValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue`` command. + + Description: + - This command specifies the binary sequence number value to use when searching on an + Ethernet bus signal. The default is all X's (don't care). The search condition needs to be + set to TCPHeader. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue?`` 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:BUS:ETHERnet:TCPHeader:SEQnum:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetTcpheaderSeqnum(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetTcpheaderSeqnumValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetTcpheaderSeqnumValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue`` command. + + Description: + - This command specifies the binary sequence number value to use when searching on an + Ethernet bus signal. The default is all X's (don't care). The search condition needs + to be set to TCPHeader. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue?`` 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:BUS:ETHERnet:TCPHeader:SEQnum:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetTcpheaderDestinationportValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue`` command. + + Description: + - This command specifies the binary destination port value to use when searching on the + Ethernet TCP header destination port number. The search condition needs to be set to + TCPHeader. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue?`` 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:BUS:ETHERnet:TCPHeader:DESTinationport:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue? + ``` + + Info: + - ```` is a quoted string of up to 16 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetTcpheaderDestinationport(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetTcpheaderDestinationportValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetTcpheaderDestinationportValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue`` command. + + Description: + - This command specifies the binary destination port value to use when searching on the + Ethernet TCP header destination port number. The search condition needs to be set to + TCPHeader. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue?`` 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:BUS:ETHERnet:TCPHeader:DESTinationport:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue? + ``` + + Info: + - ```` is a quoted string of up to 16 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetTcpheaderAcknumValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue`` command. + + Description: + - This command specifies the binary ack number value to use when searching on an Ethernet + bus signal. The default is all X's (don't care). The search condition needs to be set to + TCPHeader. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue?`` 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:BUS:ETHERnet:TCPHeader:ACKnum:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetTcpheaderAcknum(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetTcpheaderAcknumValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetTcpheaderAcknumValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue`` command. + + Description: + - This command specifies the binary ack number value to use when searching on an + Ethernet bus signal. The default is all X's (don't care). The search condition needs + to be set to TCPHeader. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue?`` 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:BUS:ETHERnet:TCPHeader:ACKnum:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetTcpheader(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.acknum``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum`` command + tree. + - ``.destinationport``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport`` command tree. + - ``.seqnum``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum`` command + tree. + - ``.sourceport``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport`` + command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._acknum = SearchSearchItemTriggerABusEthernetTcpheaderAcknum( + device, f"{self._cmd_syntax}:ACKnum" + ) + self._destinationport = SearchSearchItemTriggerABusEthernetTcpheaderDestinationport( + device, f"{self._cmd_syntax}:DESTinationport" + ) + self._seqnum = SearchSearchItemTriggerABusEthernetTcpheaderSeqnum( + device, f"{self._cmd_syntax}:SEQnum" + ) + self._sourceport = SearchSearchItemTriggerABusEthernetTcpheaderSourceport( + device, f"{self._cmd_syntax}:SOUrceport" + ) + + @property + def acknum(self) -> SearchSearchItemTriggerABusEthernetTcpheaderAcknum: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum:VALue`` + command. + """ + return self._acknum + + @property + def destinationport(self) -> SearchSearchItemTriggerABusEthernetTcpheaderDestinationport: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport:VALue`` command. + """ + return self._destinationport + + @property + def seqnum(self) -> SearchSearchItemTriggerABusEthernetTcpheaderSeqnum: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum:VALue`` + command. + """ + return self._seqnum + + @property + def sourceport(self) -> SearchSearchItemTriggerABusEthernetTcpheaderSourceport: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport:VALue`` + command. + """ + return self._sourceport + + +class SearchSearchItemTriggerABusEthernetQtagValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue`` command. + + Description: + - This command specifies the binary Q-tag information to use when searching on an Ethernet + bus signal. The search condition needs to be set to QTAG. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue?`` 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:BUS:ETHERnet:QTAG:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetQtag(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetQtagValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetQtagValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue`` command. + + Description: + - This command specifies the binary Q-tag information to use when searching on an + Ethernet bus signal. The search condition needs to be set to QTAG. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue?`` 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:BUS:ETHERnet:QTAG:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetMacLengthValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue`` command. + + Description: + - This command specifies the MAC length value to use when searching on an Ethernet bus + signal. The search condition needs to be set to MACADDRess. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue?`` 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:BUS:ETHERnet:MAC:LENgth:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue? + ``` + + Info: + - ```` is a quoted string of up to 16 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetMacLengthHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue`` command. + + Description: + - This command specifies the binary MAC length high value to use when searching on an + Ethernet bus signal. The search condition needs to be set to MACADDRess. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue?`` 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:BUS:ETHERnet:MAC:LENgth:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue? + ``` + + Info: + - ```` is a quoted string of up to 16 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetMacLength(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusEthernetMacLengthHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._value = SearchSearchItemTriggerABusEthernetMacLengthValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusEthernetMacLengthHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue`` command. + + Description: + - This command specifies the binary MAC length high value to use when searching on an + Ethernet bus signal. The search condition needs to be set to MACADDRess. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue?`` 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:BUS:ETHERnet:MAC:LENgth:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue? + ``` + + Info: + - ```` is a quoted string of up to 16 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._hivalue + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetMacLengthValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue`` command. + + Description: + - This command specifies the MAC length value to use when searching on an Ethernet bus + signal. The search condition needs to be set to MACADDRess. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue?`` 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:BUS:ETHERnet:MAC:LENgth:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue? + ``` + + Info: + - ```` is a quoted string of up to 16 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetMacAddressSourceValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue`` command. + + Description: + - This command specifies the binary MAC address source value to use when searching on an + Ethernet bus signal. The search condition needs to be set to MACADDRess. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue?`` 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:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue? + ``` + + Info: + - ```` is a quoted string of up to 48 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetMacAddressSource(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetMacAddressSourceValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetMacAddressSourceValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue`` command. + + Description: + - This command specifies the binary MAC address source value to use when searching on an + Ethernet bus signal. The search condition needs to be set to MACADDRess. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue?`` 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:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue? + ``` + + Info: + - ```` is a quoted string of up to 48 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetMacAddressDestinationValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue`` command. + + Description: + - This command specifies the binary MAC address destination value to use when searching on + an Ethernet bus signal. The search condition needs to be set to MACADDRess. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue?`` 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:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue? + ``` + + Info: + - ```` is a quoted string of up to 48 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetMacAddressDestination(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetMacAddressDestinationValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetMacAddressDestinationValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue`` command. + + Description: + - This command specifies the binary MAC address destination value to use when searching + on an Ethernet bus signal. The search condition needs to be set to MACADDRess. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue?`` 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:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue? + ``` + + Info: + - ```` is a quoted string of up to 48 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetMacAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.destination``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination`` + command tree. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce`` command + tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._destination = SearchSearchItemTriggerABusEthernetMacAddressDestination( + device, f"{self._cmd_syntax}:DESTination" + ) + self._source = SearchSearchItemTriggerABusEthernetMacAddressSource( + device, f"{self._cmd_syntax}:SOUrce" + ) + + @property + def destination(self) -> SearchSearchItemTriggerABusEthernetMacAddressDestination: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination:VALue`` command. + """ + return self._destination + + @property + def source(self) -> SearchSearchItemTriggerABusEthernetMacAddressSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce:VALue`` + command. + """ + return self._source + + +class SearchSearchItemTriggerABusEthernetMac(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess`` command tree. + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusEthernetMacAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + self._length = SearchSearchItemTriggerABusEthernetMacLength( + device, f"{self._cmd_syntax}:LENgth" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusEthernetMacAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.destination``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:DESTination`` command tree. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess:SOUrce`` + command tree. + """ + return self._address + + @property + def length(self) -> SearchSearchItemTriggerABusEthernetMacLength: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:HIVALue`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth:VALue`` command. + """ + return self._length + + +class SearchSearchItemTriggerABusEthernetIpheaderSourceaddrValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue`` command. + + Description: + - This command specifies the binary source address value to use when searching on an + Ethernet bus signal. The search condition needs to be set to IPHeader. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue?`` 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:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetIpheaderSourceaddr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetIpheaderSourceaddrValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetIpheaderSourceaddrValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue`` command. + + Description: + - This command specifies the binary source address value to use when searching on an + Ethernet bus signal. The search condition needs to be set to IPHeader. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue?`` 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:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetIpheaderProtocolValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue`` command. + + Description: + - This command specifies the binary protocol value to use when searching on the Ethernet bus + signal. The search condition needs to be set to IPHeader. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue?`` 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:BUS:ETHERnet:IPHeader:PROTOcol:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue? + ``` + + Info: + - ```` is a quoted string of up to 8 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetIpheaderProtocol(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetIpheaderProtocolValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetIpheaderProtocolValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue`` command. + + Description: + - This command specifies the binary protocol value to use when searching on the Ethernet + bus signal. The search condition needs to be set to IPHeader. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue?`` 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:BUS:ETHERnet:IPHeader:PROTOcol:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue? + ``` + + Info: + - ```` is a quoted string of up to 8 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetIpheaderDestinationaddrValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue`` command. + + Description: + - This command specifies the binary destination address value to use when searching on an + Ethernet bus signal. The search condition needs to be set to IPHeader. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue?`` 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:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits, + leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetIpheaderDestinationaddr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthernetIpheaderDestinationaddrValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetIpheaderDestinationaddrValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue`` command. + + Description: + - This command specifies the binary destination address value to use when searching on + an Ethernet bus signal. The search condition needs to be set to IPHeader. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue?`` 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:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue? + ``` + + Info: + - ```` is a quoted string of up to 32 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits, leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetIpheader(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.destinationaddr``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr`` command tree. + - ``.protocol``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol`` command + tree. + - ``.sourceaddr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr`` + command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._destinationaddr = SearchSearchItemTriggerABusEthernetIpheaderDestinationaddr( + device, f"{self._cmd_syntax}:DESTinationaddr" + ) + self._protocol = SearchSearchItemTriggerABusEthernetIpheaderProtocol( + device, f"{self._cmd_syntax}:PROTOcol" + ) + self._sourceaddr = SearchSearchItemTriggerABusEthernetIpheaderSourceaddr( + device, f"{self._cmd_syntax}:SOUrceaddr" + ) + + @property + def destinationaddr(self) -> SearchSearchItemTriggerABusEthernetIpheaderDestinationaddr: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr:VALue`` command. + """ + return self._destinationaddr + + @property + def protocol(self) -> SearchSearchItemTriggerABusEthernetIpheaderProtocol: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol:VALue`` + command. + """ + return self._protocol + + @property + def sourceaddr(self) -> SearchSearchItemTriggerABusEthernetIpheaderSourceaddr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr:VALue`` + command. + """ + return self._sourceaddr + + +class SearchSearchItemTriggerABusEthernetDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue`` command. + + Description: + - This command specifies the binary value to use when searching on the Ethernet bus signal. + The search condition needs to be set to DATa. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue?`` 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:BUS:ETHERnet:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue? + ``` + + Info: + - ```` is a quoted string where the allowable characters are 0, 1, and X. The + allowable number of characters depends on the setting for size (using + ``SEARCH:SEARCHX:TRIGGER:A:BUS:ETHERNET:DATA:SIZE``). The bits specified in the quoted + string replace the least significant bits, leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string, in bytes, to use when searching on + the Ethernet bus signal. The search condition needs to be set to DATa. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe?`` 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:BUS:ETHERnet:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe? + ``` + + Info: + - ```` specifies the length of the data string, in bytes. The minimum and default + values are 1, and the maximum value is 16. + """ + + +class SearchSearchItemTriggerABusEthernetDataQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier`` command. + + Description: + - This command specifies the qualifier to be used when searching on an Ethernet bus signal. + The search condition must be set to DATa. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier?`` 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:BUS:ETHERnet:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier? + ``` + + Info: + - ``LESSthan`` sets the qualifier to less than. + - ``MOREthan`` sets the qualifier to greater than. + - ``EQual`` sets the qualifier to equal. + - ``UNEQual`` sets the qualifier to not equal. + - ``LESSEQual`` sets the qualifier to less than or equal. + - ``MOREEQual`` sets the qualifier to greater than or equal. + - ``INrange`` sets the qualifier to in range. + - ``OUTrange`` sets the qualifier to out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEthernetDataOffset(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet`` command. + + Description: + - This command specifies the data offset value, in bytes, to use when searching on the + Ethernet data field. The search condition needs to be set to DATa. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet?`` 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:BUS:ETHERnet:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet? + ``` + + Info: + - ```` is an integer whose minimum and default values are -1 (don't care) and maximum + is 1,499. + """ + + +class SearchSearchItemTriggerABusEthernetDataHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on an + Ethernet bus signal. The search condition must be set to DATA and the data qualifier to + inside or outside range. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue?`` 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:BUS:ETHERnet:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue? + ``` + + Info: + - ```` is the binary data value to be used when searching on an Ethernet bus + signal. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthernetData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusEthernetDataHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._offset = SearchSearchItemTriggerABusEthernetDataOffset( + device, f"{self._cmd_syntax}:OFFSet" + ) + self._qualifier = SearchSearchItemTriggerABusEthernetDataQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._size = SearchSearchItemTriggerABusEthernetDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusEthernetDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusEthernetDataHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on an + Ethernet bus signal. The search condition must be set to DATA and the data qualifier + to inside or outside range. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue?`` 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:BUS:ETHERnet:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue? + ``` + + Info: + - ```` is the binary data value to be used when searching on an Ethernet bus + signal. + """ + return self._hivalue + + @property + def offset(self) -> SearchSearchItemTriggerABusEthernetDataOffset: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet`` command. + + Description: + - This command specifies the data offset value, in bytes, to use when searching on the + Ethernet data field. The search condition needs to be set to DATa. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet?`` 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:BUS:ETHERnet:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet? + ``` + + Info: + - ```` is an integer whose minimum and default values are -1 (don't care) and + maximum is 1,499. + """ + return self._offset + + @property + def qualifier(self) -> SearchSearchItemTriggerABusEthernetDataQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier`` command. + + Description: + - This command specifies the qualifier to be used when searching on an Ethernet bus + signal. The search condition must be set to DATa. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier?`` 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:BUS:ETHERnet:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier? + ``` + + Info: + - ``LESSthan`` sets the qualifier to less than. + - ``MOREthan`` sets the qualifier to greater than. + - ``EQual`` sets the qualifier to equal. + - ``UNEQual`` sets the qualifier to not equal. + - ``LESSEQual`` sets the qualifier to less than or equal. + - ``MOREEQual`` sets the qualifier to greater than or equal. + - ``INrange`` sets the qualifier to in range. + - ``OUTrange`` sets the qualifier to out of range. + """ # noqa: E501 + return self._qualifier + + @property + def size(self) -> SearchSearchItemTriggerABusEthernetDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string, in bytes, to use when searching + on the Ethernet bus signal. The search condition needs to be set to DATa. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe?`` 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:BUS:ETHERnet:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe? + ``` + + Info: + - ```` specifies the length of the data string, in bytes. The minimum and default + values are 1, and the maximum value is 16. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusEthernetDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue`` command. + + Description: + - This command specifies the binary value to use when searching on the Ethernet bus + signal. The search condition needs to be set to DATa. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue?`` 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:BUS:ETHERnet:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue? + ``` + + Info: + - ```` is a quoted string where the allowable characters are 0, 1, and X. The + allowable number of characters depends on the setting for size (using + ``SEARCH:SEARCHX:TRIGGER:A:BUS:ETHERNET:DATA:SIZE``). The bits specified in the quoted + string replace the least significant bits, leaving any unspecified upper bits + unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusEthernetCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition`` command. + + Description: + - This command specifies a field or condition for an Ethernet bus to search on. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition?`` 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:BUS:ETHERnet:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition {SFD|MACADDRess|MACLENgth|IPHeader|TCPHeader|DATa|EOP|IDLe|FCSError|QTAG} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition? + ``` + + Info: + - ``SFD`` - Start of frame delimiter. + - ``MACADDRess`` - MAC addresses field. + - ``MACLENgth`` - MAC length/type field. + - ``IPHeader`` - IP header field. + - ``TCPHeader`` - TCP header field. + - ``DATa`` - TCP/IPv4 or MAC protocol client data field. + - ``EOP`` - End of Packet field. + - ``IDLe`` - Idle field. + - ``FCSError`` - Frame Check Sequence Error (CRC) field. + - ``QTAG`` - IEEE 802.1Q (VLAN) control information field. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEthernet(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa`` command tree. + - ``.ipheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader`` command tree. + - ``.mac``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC`` command tree. + - ``.qtag``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG`` command tree. + - ``.tcpheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusEthernetCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusEthernetData(device, f"{self._cmd_syntax}:DATa") + self._ipheader = SearchSearchItemTriggerABusEthernetIpheader( + device, f"{self._cmd_syntax}:IPHeader" + ) + self._mac = SearchSearchItemTriggerABusEthernetMac(device, f"{self._cmd_syntax}:MAC") + self._qtag = SearchSearchItemTriggerABusEthernetQtag(device, f"{self._cmd_syntax}:QTAG") + self._tcpheader = SearchSearchItemTriggerABusEthernetTcpheader( + device, f"{self._cmd_syntax}:TCPHeader" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusEthernetCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition`` command. + + Description: + - This command specifies a field or condition for an Ethernet bus to search on. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition?`` 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:BUS:ETHERnet:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition {SFD|MACADDRess|MACLENgth|IPHeader|TCPHeader|DATa|EOP|IDLe|FCSError|QTAG} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition? + ``` + + Info: + - ``SFD`` - Start of frame delimiter. + - ``MACADDRess`` - MAC addresses field. + - ``MACLENgth`` - MAC length/type field. + - ``IPHeader`` - IP header field. + - ``TCPHeader`` - TCP header field. + - ``DATa`` - TCP/IPv4 or MAC protocol client data field. + - ``EOP`` - End of Packet field. + - ``IDLe`` - Idle field. + - ``FCSError`` - Frame Check Sequence Error (CRC) field. + - ``QTAG`` - IEEE 802.1Q (VLAN) control information field. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusEthernetData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:QUALifier`` + command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa:VALue`` command. + """ + return self._data + + @property + def ipheader(self) -> SearchSearchItemTriggerABusEthernetIpheader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.destinationaddr``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:DESTinationaddr`` command tree. + - ``.protocol``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:PROTOcol`` + command tree. + - ``.sourceaddr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader:SOUrceaddr`` + command tree. + """ + return self._ipheader + + @property + def mac(self) -> SearchSearchItemTriggerABusEthernetMac: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:ADDRess`` command + tree. + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC:LENgth`` command tree. + """ + return self._mac + + @property + def qtag(self) -> SearchSearchItemTriggerABusEthernetQtag: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG:VALue`` command. + """ + return self._qtag + + @property + def tcpheader(self) -> SearchSearchItemTriggerABusEthernetTcpheader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.acknum``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:ACKnum`` command + tree. + - ``.destinationport``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:DESTinationport`` command tree. + - ``.seqnum``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SEQnum`` command + tree. + - ``.sourceport``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader:SOUrceport`` + command tree. + """ + return self._tcpheader + + +class SearchSearchItemTriggerABusEthercatWkcValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue`` command. + + Description: + - This command sets the binary Working Counter information to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue?`` 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:BUS:ETHERCAT:WKC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue? + ``` + + Info: + - ```` is the binary Working Counter information value to be used when searching on + an EtherCAT bus signal. The default size and value of Working Counter information is 16 + bits and 'XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatWkc(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatWkcValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatWkcValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue`` command. + + Description: + - This command sets the binary Working Counter information to be used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue?`` 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:BUS:ETHERCAT:WKC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue? + ``` + + Info: + - ```` is the binary Working Counter information value to be used when + searching on an EtherCAT bus signal. The default size and value of Working Counter + information is 16 bits and 'XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatTciValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue`` command. + + Description: + - This command sets the binary Tag control Information to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue?`` 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:BUS:ETHERCAT:TCI:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue? + ``` + + Info: + - ```` is the binary TCI value to be used when searching on an EtherCAT bus signal. + The default size and value of TCI is 16 bits and 'XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatTci(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatTciValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatTciValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue`` command. + + Description: + - This command sets the binary Tag control Information to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue?`` 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:BUS:ETHERCAT:TCI:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue? + ``` + + Info: + - ```` is the binary TCI value to be used when searching on an EtherCAT bus + signal. The default size and value of TCI is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatSrcPortValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue`` command. + + Description: + - This command sets the UDP Source port to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue?`` 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:BUS:ETHERCAT:SRC:PORT:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue? + ``` + + Info: + - ```` is the binary Source Port value to be used when searching on an EtherCAT bus + signal. The default size and value of Source Port is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatSrcPort(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatSrcPortValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatSrcPortValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue`` command. + + Description: + - This command sets the UDP Source port to be used for EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue?`` 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:BUS:ETHERCAT:SRC:PORT:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue? + ``` + + Info: + - ```` is the binary Source Port value to be used when searching on an EtherCAT + bus signal. The default size and value of Source Port is 16 bits and 'XXXXXXXX + XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatSrc(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.port``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._port = SearchSearchItemTriggerABusEthercatSrcPort(device, f"{self._cmd_syntax}:PORT") + + @property + def port(self) -> SearchSearchItemTriggerABusEthercatSrcPort: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT:VALue`` command. + """ + return self._port + + +class SearchSearchItemTriggerABusEthercatSourceaddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue`` command. + + Description: + - This command sets the binary MAC source address value to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue?`` 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:BUS:ETHERCAT:SOURCEADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue? + ``` + + Info: + - ```` is the binary MAC source address value to be used when searching on an + EtherCAT bus signal. The default size and value of MAC Source Address is 48 bits and + 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatSourceaddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatSourceaddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatSourceaddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue`` command. + + Description: + - This command sets the binary MAC source address value to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue?`` 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:BUS:ETHERCAT:SOURCEADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue? + ``` + + Info: + - ```` is the binary MAC source address value to be used when searching on an + EtherCAT bus signal. The default size and value of MAC Source Address is 48 bits and + 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatServiceDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue`` command. + + Description: + - This command specifies the length of the service data string in bytes to be used for + EtherCAT bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue?`` 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:BUS:ETHERCAT:SERVice:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue? + ``` + + Info: + - ```` is the binary Service Data value to be used when searching on an EtherCAT + bus signal. The default size and value of Service Data is 8 bits and 'XXXXXXXX' + respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatServiceDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe`` command. + + Description: + - This command specifies the length of the service data string in bytes to be used for + EtherCAT bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe?`` 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:BUS:ETHERCAT:SERVice:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe? + ``` + + Info: + - ```` is the Service Data size. The default value is 1. The valid range is 1 to 5. + """ + + +class SearchSearchItemTriggerABusEthercatServiceDataLength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth`` command. + + Description: + - This command sets the binary Service Data Length to be used for EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth?`` 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:BUS:ETHERCAT:SERVice:DATa:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth? + ``` + + Info: + - ```` is the binary Service Data Length to be used when searching on an EtherCAT + bus signal. The default size and value of Service Data Length is 16 bits and 'XXXXXXXX + XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatServiceData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._length = SearchSearchItemTriggerABusEthercatServiceDataLength( + device, f"{self._cmd_syntax}:LENGth" + ) + self._size = SearchSearchItemTriggerABusEthercatServiceDataSize( + device, f"{self._cmd_syntax}:SIZe" + ) + self._value = SearchSearchItemTriggerABusEthercatServiceDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def length(self) -> SearchSearchItemTriggerABusEthercatServiceDataLength: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth`` command. + + Description: + - This command sets the binary Service Data Length to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth?`` 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:BUS:ETHERCAT:SERVice:DATa:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth? + ``` + + Info: + - ```` is the binary Service Data Length to be used when searching on an + EtherCAT bus signal. The default size and value of Service Data Length is 16 bits and + 'XXXXXXXX XXXXXXXX' respectively. + """ + return self._length + + @property + def size(self) -> SearchSearchItemTriggerABusEthercatServiceDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe`` command. + + Description: + - This command specifies the length of the service data string in bytes to be used for + EtherCAT bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe?`` 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:BUS:ETHERCAT:SERVice:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe? + ``` + + Info: + - ```` is the Service Data size. The default value is 1. The valid range is 1 to 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatServiceDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue`` command. + + Description: + - This command specifies the length of the service data string in bytes to be used for + EtherCAT bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue?`` 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:BUS:ETHERCAT:SERVice:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue? + ``` + + Info: + - ```` is the binary Service Data value to be used when searching on an + EtherCAT bus signal. The default size and value of Service Data is 8 bits and + 'XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatService(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = SearchSearchItemTriggerABusEthercatServiceData( + device, f"{self._cmd_syntax}:DATa" + ) + + @property + def data(self) -> SearchSearchItemTriggerABusEthercatServiceData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:LENGth`` + command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa:VALue`` + command. + """ + return self._data + + +class SearchSearchItemTriggerABusEthercatQualityValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue`` command. + + Description: + - This command sets the binary quality to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue?`` 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:BUS:ETHERCAT:QUALity:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue? + ``` + + Info: + - ```` is the binary Quality value to be used when searching on an EtherCAT bus + signal. The default size and value of Quality is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatQuality(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatQualityValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatQualityValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue`` command. + + Description: + - This command sets the binary quality to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue?`` 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:BUS:ETHERCAT:QUALity:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue? + ``` + + Info: + - ```` is the binary Quality value to be used when searching on an EtherCAT bus + signal. The default size and value of Quality is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatPubidValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue`` command. + + Description: + - This command sets the binary Publisher ID to be used for EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue?`` 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:BUS:ETHERCAT:PUBID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue? + ``` + + Info: + - ```` is the binary Publisher ID value to be used when searching on an EtherCAT + bus signal. The default size and value of Publisher ID is 48 bits and 'XXXXXXXX XXXXXXXX + XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatPubid(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatPubidValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatPubidValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue`` command. + + Description: + - This command sets the binary Publisher ID to be used for EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue?`` 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:BUS:ETHERCAT:PUBID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue? + ``` + + Info: + - ```` is the binary Publisher ID value to be used when searching on an + EtherCAT bus signal. The default size and value of Publisher ID is 48 bits and + 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatProtocoltype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe`` command. + + Description: + - This command sets or queries the EtherCAT Protocol Type in EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe?`` 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:BUS:ETHERCAT:PROTOCOLTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe {PDU|NETWORKVARiables|MAILbox} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe? + ``` + + Info: + - ``PDU`` specifies the Protocol Type as PDU. This is the default value. + - ``NETWORKVARiables`` specifies the Protocol Type as NETWORKVARiables. + - ``MAILbox`` specifies the Protocol Type as MAILbox. + """ + + +class SearchSearchItemTriggerABusEthercatPositionValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue`` command. + + Description: + - This command sets the binary address position information to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue?`` 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:BUS:ETHERCAT:POSition:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue? + ``` + + Info: + - ```` is the binary Address Position value to be used when searching on an + EtherCAT bus signal. The default size and value Address Position is 16 bits and 'XXXXXXXX + XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatPosition(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatPositionValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatPositionValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue`` command. + + Description: + - This command sets the binary address position information to be used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue?`` 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:BUS:ETHERCAT:POSition:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue? + ``` + + Info: + - ```` is the binary Address Position value to be used when searching on an + EtherCAT bus signal. The default size and value Address Position is 16 bits and + 'XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatOffsetValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue`` command. + + Description: + - This command sets the binary address offset information to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue?`` 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:BUS:ETHERCAT:OFFSet:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue? + ``` + + Info: + - ```` is the binary Address Offset data value to be used when searching on an + EtherCAT bus signal. The default size and value Address Offset is 16 bits and 'XXXXXXXX + XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatOffset(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatOffsetValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatOffsetValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue`` command. + + Description: + - This command sets the binary address offset information to be used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue?`` 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:BUS:ETHERCAT:OFFSet:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue? + ``` + + Info: + - ```` is the binary Address Offset data value to be used when searching on an + EtherCAT bus signal. The default size and value Address Offset is 16 bits and + 'XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatNetworkVariableHeader(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer`` command. + + Description: + - This command sets or queries the Network Variable Header fields in EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer?`` 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:BUS:ETHERCAT:NETWork:VARiable:HEADer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer {INDex|HASH|NVLEN|Q} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer? + ``` + + Info: + - ``INDex`` specifies the Network Variable Header field as INDex. This is the default value. + - ``HASH`` specifies the Network Variable Header field as HASH. + - ``NVLEN`` specifies the Network Variable Header field as NVLEN. + - ``Q`` specifies the Network Variable Header field as Q. + """ + + +class SearchSearchItemTriggerABusEthercatNetworkVariable(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable`` command. + + Description: + - This command sets or queries the Network Variable fields in EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable?`` 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:BUS:ETHERCAT:NETWork:VARiable value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable {PUBHEADer|NVHEADer|NVDATa} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable? + ``` + + Info: + - ``PUBHEADer`` specifies the Network Variable as PUBHEADer. This is the default value. + - ``NVHEADer`` specifies the Network Variable as NVHEADer. + - ``NVDATa`` specifies the Network Variable as NVDATa. + + Properties: + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._header = SearchSearchItemTriggerABusEthercatNetworkVariableHeader( + device, f"{self._cmd_syntax}:HEADer" + ) + + @property + def header(self) -> SearchSearchItemTriggerABusEthercatNetworkVariableHeader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer`` command. + + Description: + - This command sets or queries the Network Variable Header fields in EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer?`` 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:BUS:ETHERCAT:NETWork:VARiable:HEADer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer {INDex|HASH|NVLEN|Q} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer? + ``` + + Info: + - ``INDex`` specifies the Network Variable Header field as INDex. This is the default + value. + - ``HASH`` specifies the Network Variable Header field as HASH. + - ``NVLEN`` specifies the Network Variable Header field as NVLEN. + - ``Q`` specifies the Network Variable Header field as Q. + """ + return self._header + + +class SearchSearchItemTriggerABusEthercatNetwork(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.variable``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._variable = SearchSearchItemTriggerABusEthercatNetworkVariable( + device, f"{self._cmd_syntax}:VARiable" + ) + + @property + def variable(self) -> SearchSearchItemTriggerABusEthercatNetworkVariable: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable`` command. + + Description: + - This command sets or queries the Network Variable fields in EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable?`` 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:BUS:ETHERCAT:NETWork:VARiable value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable {PUBHEADer|NVHEADer|NVDATa} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable? + ``` + + Info: + - ``PUBHEADer`` specifies the Network Variable as PUBHEADer. This is the default value. + - ``NVHEADer`` specifies the Network Variable as NVHEADer. + - ``NVDATa`` specifies the Network Variable as NVDATa. + + Sub-properties: + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable:HEADer`` + command. + """ + return self._variable + + +class SearchSearchItemTriggerABusEthercatNetworkvariableDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue`` command. + + Description: + - This command specifies the binary network variable data string used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue?`` 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:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue? + ``` + + Info: + - ```` is the binary network variable data value to be used when searching on an + EtherCAT bus signal. The default Network Variable Data value is 'XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatNetworkvariableDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe`` command. + + Description: + - This command specifies the length of the network variable data string in bytes to be used + for EtherCAT bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe?`` 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:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe? + ``` + + Info: + - ```` is the Network Variable Data size. The default value is 1. The valid range is 1 + to 5. + """ + + +class SearchSearchItemTriggerABusEthercatNetworkvariableData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusEthercatNetworkvariableDataSize( + device, f"{self._cmd_syntax}:SIZe" + ) + self._value = SearchSearchItemTriggerABusEthercatNetworkvariableDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusEthercatNetworkvariableDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe`` command. + + Description: + - This command specifies the length of the network variable data string in bytes to be + used for EtherCAT bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe?`` 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:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe? + ``` + + Info: + - ```` is the Network Variable Data size. The default value is 1. The valid range + is 1 to 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatNetworkvariableDataValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue`` command. + + Description: + - This command specifies the binary network variable data string used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue?`` 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:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue? + ``` + + Info: + - ```` is the binary network variable data value to be used when searching on + an EtherCAT bus signal. The default Network Variable Data value is 'XXXXXXXX'. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatNetworkvariable(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa`` command + tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = SearchSearchItemTriggerABusEthercatNetworkvariableData( + device, f"{self._cmd_syntax}:DATa" + ) + + @property + def data(self) -> SearchSearchItemTriggerABusEthercatNetworkvariableData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:SIZe`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa:VALue`` + command. + """ + return self._data + + +class SearchSearchItemTriggerABusEthercatMailboxHeader(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer`` command. + + Description: + - This command sets or queries the Mailbox Header fields in EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer?`` 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:BUS:ETHERCAT:MAILbox:HEADer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer {LENGth|ADDRess|CHANnel|PRIority|TYPe|CNT} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer? + ``` + + Info: + - ``LENGth`` specifies the Mailbox Header as Length. This is the default value. + - ``ADDRess`` specifies the Mailbox Header as Address. + - ``CHANnel`` specifies the Mailbox Header as Channel. + - ``PRIority`` specifies the Mailbox Header as Priority. + - ``TYPe`` specifies the Mailbox Header as Type. + - ``CNT`` specifies the Mailbox Header as Count. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEthercatMailboxDetail(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail`` command. + + Description: + - This command sets or queries the Error Reply Service Data Details in EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail?`` 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:BUS:ETHERCAT:MAILbox:DETail value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail {ONE|TWO|THRee|FOUR|FIVe|SIX|SEVEn|EIGHt|NINe} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail? + ``` + + Info: + - ``ONE`` specifies the Detail field as ONE. This is the default value. + - ``TWO`` specifies the Detail field as TWO. + - ``THRee`` specifies the Detail field as THRee. + - ``FOUR`` specifies the Detail field as FOUR. + - ``FIVe`` specifies the Detail field as FIVe. + - ``SIX`` specifies the Detail field as SIX. + - ``SEVEn`` specifies the Detail field as SEVEn. + - ``EIGHt`` specifies the Detail field as EIGHt. + - ``NINe`` specifies the Detail field as NINe. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEthercatMailboxCntValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue`` command. + + Description: + - This command sets the binary counter of the mailbox services to be used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue?`` 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:BUS:ETHERCAT:MAILbox:CNT:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue? + ``` + + Info: + - ```` is the binary Counter value to be used when searching on an EtherCAT bus + signal. The default size and value of Counter is 3 bits and 'XXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatMailboxCnt(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatMailboxCntValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatMailboxCntValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue`` command. + + Description: + - This command sets the binary counter of the mailbox services to be used for EtherCAT + bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue?`` 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:BUS:ETHERCAT:MAILbox:CNT:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue? + ``` + + Info: + - ```` is the binary Counter value to be used when searching on an EtherCAT bus + signal. The default size and value of Counter is 3 bits and 'XXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatMailboxAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue`` command. + + Description: + - This command sets the binary Mailbox Address to be used for EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue?`` 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:BUS:ETHERCAT:MAILbox:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue? + ``` + + Info: + - ```` is the binary Mailbox Address to be used when searching on an EtherCAT bus + signal. The default size and value of Address is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatMailboxAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatMailboxAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatMailboxAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue`` command. + + Description: + - This command sets the binary Mailbox Address to be used for EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue?`` 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:BUS:ETHERCAT:MAILbox:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue? + ``` + + Info: + - ```` is the binary Mailbox Address to be used when searching on an EtherCAT + bus signal. The default size and value of Address is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatMailbox(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox`` command. + + Description: + - This command sets or queries the Mailbox fields in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox?`` 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:BUS:ETHERCAT:MAILbox value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox {MAILBOXHEADer|SERVICEDATa|ERRSERVICEDATa} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox? + ``` + + Info: + - ``MAILBOXHEADer`` specifies the Mailbox fields as mailbox header. This is the default + value. + - ``SERVICEDATa`` specifies the Mailbox fields as service data. + - ``ERRSERVICEDATa`` specifies the Mailbox fields as error reply service data. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess`` command + tree. + - ``.cnt``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT`` command tree. + - ``.detail``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail`` command. + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusEthercatMailboxAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + self._cnt = SearchSearchItemTriggerABusEthercatMailboxCnt(device, f"{self._cmd_syntax}:CNT") + self._detail = SearchSearchItemTriggerABusEthercatMailboxDetail( + device, f"{self._cmd_syntax}:DETail" + ) + self._header = SearchSearchItemTriggerABusEthercatMailboxHeader( + device, f"{self._cmd_syntax}:HEADer" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusEthercatMailboxAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess:VALue`` + command. + """ + return self._address + + @property + def cnt(self) -> SearchSearchItemTriggerABusEthercatMailboxCnt: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT:VALue`` command. + """ + return self._cnt + + @property + def detail(self) -> SearchSearchItemTriggerABusEthercatMailboxDetail: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail`` command. + + Description: + - This command sets or queries the Error Reply Service Data Details in EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail?`` 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:BUS:ETHERCAT:MAILbox:DETail value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail {ONE|TWO|THRee|FOUR|FIVe|SIX|SEVEn|EIGHt|NINe} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail? + ``` + + Info: + - ``ONE`` specifies the Detail field as ONE. This is the default value. + - ``TWO`` specifies the Detail field as TWO. + - ``THRee`` specifies the Detail field as THRee. + - ``FOUR`` specifies the Detail field as FOUR. + - ``FIVe`` specifies the Detail field as FIVe. + - ``SIX`` specifies the Detail field as SIX. + - ``SEVEn`` specifies the Detail field as SEVEn. + - ``EIGHt`` specifies the Detail field as EIGHt. + - ``NINe`` specifies the Detail field as NINe. + """ # noqa: E501 + return self._detail + + @property + def header(self) -> SearchSearchItemTriggerABusEthercatMailboxHeader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer`` command. + + Description: + - This command sets or queries the Mailbox Header fields in EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer?`` 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:BUS:ETHERCAT:MAILbox:HEADer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer {LENGth|ADDRess|CHANnel|PRIority|TYPe|CNT} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer? + ``` + + Info: + - ``LENGth`` specifies the Mailbox Header as Length. This is the default value. + - ``ADDRess`` specifies the Mailbox Header as Address. + - ``CHANnel`` specifies the Mailbox Header as Channel. + - ``PRIority`` specifies the Mailbox Header as Priority. + - ``TYPe`` specifies the Mailbox Header as Type. + - ``CNT`` specifies the Mailbox Header as Count. + """ # noqa: E501 + return self._header + + +class SearchSearchItemTriggerABusEthercatMailboxtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe`` command. + + Description: + - This command sets or queries the Mailbox Type fields in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe?`` 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:BUS:ETHERCAT:MAILBOXTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe {ZERo|ONE|TWO|THRee|FOUR|FIVe|RESERved|FIFTeen} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe? + ``` + + Info: + - ``ZERo`` specifies the Mailbox Type as ZERo. This is the default value. + - ``ONE`` specifies the Mailbox Type as ONE. + - ``TWO`` specifies the Mailbox Type as TWO. + - ``THRee`` specifies the Mailbox Type as THRee. + - ``FOUR`` specifies the Mailbox Type as FOUR. + - ``FIVe`` specifies the Mailbox Type as FIVe. + - ``RESERved`` specifies the Mailbox Type as RESERved. + - ``FIFTeen`` specifies the Mailbox Type as FIFTeen. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEthercatLogicaladdressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue`` command. + + Description: + - This command sets the binary logical address information to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue?`` 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:BUS:ETHERCAT:LOGICALADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue? + ``` + + Info: + - ```` is the binary Logical Address to be used when searching on an EtherCAT bus + signal. The default size and value Logical Address is 32 bits and 'XXXXXXXX XXXXXXXX + XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatLogicaladdress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatLogicaladdressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatLogicaladdressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue`` command. + + Description: + - This command sets the binary logical address information to be used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue?`` 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:BUS:ETHERCAT:LOGICALADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue? + ``` + + Info: + - ```` is the binary Logical Address to be used when searching on an EtherCAT + bus signal. The default size and value Logical Address is 32 bits and 'XXXXXXXX + XXXXXXXX XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatLenValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue`` command. + + Description: + - This command sets the binary Length to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue?`` 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:BUS:ETHERCAT:LEN:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue? + ``` + + Info: + - ```` is the binary Length to be used when searching on an EtherCAT bus signal. + The default size and value of Length is 16 bits and 'XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatLen(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatLenValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatLenValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue`` command. + + Description: + - This command sets the binary Length to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue?`` 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:BUS:ETHERCAT:LEN:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue? + ``` + + Info: + - ```` is the binary Length to be used when searching on an EtherCAT bus + signal. The default size and value of Length is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatIrqValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue`` command. + + Description: + - This command sets the binary interrupt request information to be used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue?`` 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:BUS:ETHERCAT:IRQ:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue? + ``` + + Info: + - ```` is the binary interrupt request information to be used when searching on an + EtherCAT bus signal. The default size and value interrupt request information is 16 bits + and 'XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatIrq(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatIrqValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatIrqValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue`` command. + + Description: + - This command sets the binary interrupt request information to be used for EtherCAT + bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue?`` 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:BUS:ETHERCAT:IRQ:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue? + ``` + + Info: + - ```` is the binary interrupt request information to be used when searching on + an EtherCAT bus signal. The default size and value interrupt request information is 16 + bits and 'XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatIpsourceAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue`` command. + + Description: + - This command sets the Source IP Address to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue?`` 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:BUS:ETHERCAT:IPSOURce:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue? + ``` + + Info: + - ```` is the binary Source IP Address to be used when searching on an EtherCAT bus + signal. The default size and value of Source Address is 32 bits and 'XXXXXXXX XXXXXXXX + XXXXXXXX XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatIpsourceAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatIpsourceAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatIpsourceAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue`` command. + + Description: + - This command sets the Source IP Address to be used for EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue?`` 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:BUS:ETHERCAT:IPSOURce:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue? + ``` + + Info: + - ```` is the binary Source IP Address to be used when searching on an EtherCAT + bus signal. The default size and value of Source Address is 32 bits and 'XXXXXXXX + XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatIpsource(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess`` command + tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusEthercatIpsourceAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusEthercatIpsourceAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess:VALue`` + command. + """ + return self._address + + +class SearchSearchItemTriggerABusEthercatIpdestinationAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue`` command. + + Description: + - This command sets the Destination IP Address to be used for EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue?`` 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:BUS:ETHERCAT:IPDESTination:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue? + ``` + + Info: + - ```` is the binary Destination IP Address to be used when searching on an + EtherCAT bus signal. The default size and value of Destination Address is 32 bits and + 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatIpdestinationAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatIpdestinationAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatIpdestinationAddressValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue`` command. + + Description: + - This command sets the Destination IP Address to be used for EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue?`` 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:BUS:ETHERCAT:IPDESTination:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue? + ``` + + Info: + - ```` is the binary Destination IP Address to be used when searching on an + EtherCAT bus signal. The default size and value of Destination Address is 32 bits and + 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX'. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatIpdestination(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess`` + command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusEthercatIpdestinationAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusEthercatIpdestinationAddress: + """``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess:VALue`` command. + """ + return self._address + + +class SearchSearchItemTriggerABusEthercatIndexValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue`` command. + + Description: + - This command sets the binary Index to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue?`` 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:BUS:ETHERCAT:INDex:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue? + ``` + + Info: + - ```` is the binary Index to be used when searching on an EtherCAT bus signal. The + default size and value of Index is 16 bits and 'XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatIndex(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatIndexValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatIndexValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue`` command. + + Description: + - This command sets the binary Index to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue?`` 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:BUS:ETHERCAT:INDex:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue? + ``` + + Info: + - ```` is the binary Index to be used when searching on an EtherCAT bus signal. + The default size and value of Index is 16 bits and 'XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatIdxValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue`` command. + + Description: + - This command sets the binary Indexing information to be used for EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue?`` 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:BUS:ETHERCAT:IDX:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue? + ``` + + Info: + - ```` is the binary Index value to be used when searching on an EtherCAT bus + signal. The default size and value of Index is 8 bits and 'XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatIdx(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatIdxValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatIdxValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue`` command. + + Description: + - This command sets the binary Indexing information to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue?`` 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:BUS:ETHERCAT:IDX:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue? + ``` + + Info: + - ```` is the binary Index value to be used when searching on an EtherCAT bus + signal. The default size and value of Index is 8 bits and 'XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatIdentificationValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue`` command. + + Description: + - This command sets the IP Identification to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue?`` 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:BUS:ETHERCAT:IDENtification:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue? + ``` + + Info: + - ```` is the binary IP Identification to be used when searching on an EtherCAT bus + signal. The default size and value of Identification is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatIdentification(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatIdentificationValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatIdentificationValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue`` command. + + Description: + - This command sets the IP Identification to be used for EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue?`` 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:BUS:ETHERCAT:IDENtification:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue? + ``` + + Info: + - ```` is the binary IP Identification to be used when searching on an EtherCAT + bus signal. The default size and value of Identification is 16 bits and 'XXXXXXXX + XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatHeaderLength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth`` command. + + Description: + - This command sets or queries the binary header length to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth?`` 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:BUS:ETHERCAT:HEADer:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth? + ``` + + Info: + - ```` is the binary header length to be used when searching on an EtherCAT bus + signal. The default size and value of Length is 11 bits and 'XXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatHeader(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._length = SearchSearchItemTriggerABusEthercatHeaderLength( + device, f"{self._cmd_syntax}:LENGth" + ) + + @property + def length(self) -> SearchSearchItemTriggerABusEthercatHeaderLength: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth`` command. + + Description: + - This command sets or queries the binary header length to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth?`` 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:BUS:ETHERCAT:HEADer:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth? + ``` + + Info: + - ```` is the binary header length to be used when searching on an EtherCAT bus + signal. The default size and value of Length is 11 bits and 'XXX XXXXXXXX' + respectively. + """ + return self._length + + +class SearchSearchItemTriggerABusEthercatHashValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue`` command. + + Description: + - This command sets the binary HASH to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue?`` 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:BUS:ETHERCAT:HASH:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue? + ``` + + Info: + - ```` is the binary Hash value to be used when searching on an EtherCAT bus + signal. The default size and value of Hash is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatHash(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatHashValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatHashValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue`` command. + + Description: + - This command sets the binary HASH to be used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue?`` 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:BUS:ETHERCAT:HASH:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue? + ``` + + Info: + - ```` is the binary Hash value to be used when searching on an EtherCAT bus + signal. The default size and value of Hash is 16 bits and 'XXXXXXXX XXXXXXXX' + respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatFrametype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe`` command. + + Description: + - This command sets or queries the Frame Type in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe?`` 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:BUS:ETHERCAT:FRAMETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe {BASic|UDPIP} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe? + ``` + + Info: + - ``BASic`` specifies the Frame Type as BASic. This is the default value. + - ``UDPIP`` specifies the Frame Type as UDPIP. + """ + + +class SearchSearchItemTriggerABusEthercatErrorReplyServiceData(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa`` command. + + Description: + - This command sets or queries the error reply service data fields in EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa?`` 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:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa {TYPe|DETail} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa? + ``` + + Info: + - ``TYPe`` specifies the Error Reply Service Data to type. This is the default value. + - ``DETail`` specifies the Error Reply Service Data to detail. + """ + + +class SearchSearchItemTriggerABusEthercatErrorReplyService(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._data = SearchSearchItemTriggerABusEthercatErrorReplyServiceData( + device, f"{self._cmd_syntax}:DATa" + ) + + @property + def data(self) -> SearchSearchItemTriggerABusEthercatErrorReplyServiceData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa`` command. + + Description: + - This command sets or queries the error reply service data fields in EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa?`` 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:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa {TYPe|DETail} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa? + ``` + + Info: + - ``TYPe`` specifies the Error Reply Service Data to type. This is the default value. + - ``DETail`` specifies the Error Reply Service Data to detail. + """ + return self._data + + +class SearchSearchItemTriggerABusEthercatErrorReply(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.service``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice`` command + tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._service = SearchSearchItemTriggerABusEthercatErrorReplyService( + device, f"{self._cmd_syntax}:SERVice" + ) + + @property + def service(self) -> SearchSearchItemTriggerABusEthercatErrorReplyService: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice:DATa`` + command. + """ + return self._service + + +class SearchSearchItemTriggerABusEthercatError(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.reply``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._reply = SearchSearchItemTriggerABusEthercatErrorReply( + device, f"{self._cmd_syntax}:REPLy" + ) + + @property + def reply(self) -> SearchSearchItemTriggerABusEthercatErrorReply: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.service``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy:SERVice`` + command tree. + """ + return self._reply + + +class SearchSearchItemTriggerABusEthercatDeviceaddress(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess`` command. + + Description: + - This command sets or queries the Device Address in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess?`` 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:BUS:ETHERCAT:DEVICEADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess {POSition|OFFSet} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess? + ``` + + Info: + - ``POSition`` specifies the Device Address to position. This is the default value. + - ``OFFSet`` specifies the Device Address to offset. + """ + + +class SearchSearchItemTriggerABusEthercatDestinationaddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue`` command. + + Description: + - This command sets the binary MAC destination address value to be used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue?`` 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:BUS:ETHERCAT:DESTINATIONADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue? + ``` + + Info: + - ```` is the binary MAC destination address value to be used when searching on an + EtherCAT bus signal. The default size and value of MAC Destination Address is 48 bits and + 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatDestinationaddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatDestinationaddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatDestinationaddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue`` command. + + Description: + - This command sets the binary MAC destination address value to be used for EtherCAT + bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue?`` 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:BUS:ETHERCAT:DESTINATIONADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue? + ``` + + Info: + - ```` is the binary MAC destination address value to be used when searching on + an EtherCAT bus signal. The default size and value of MAC Destination Address is 48 + bits and 'XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue?`` 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:BUS:ETHERCAT:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue? + ``` + + Info: + - ```` is the binary Cycle Number to be used when searching on an EtherCAT bus + signal. The default data size and value is 8 bits and 'XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe?`` 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:BUS:ETHERCAT:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe? + ``` + + Info: + - ```` is the binary data value to be used when searching on an Ethernet bus signal. + The default size is 1. The valid range is 1 to 5. + """ + + +class SearchSearchItemTriggerABusEthercatData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusEthercatDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusEthercatDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusEthercatDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for EtherCAT + bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe?`` 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:BUS:ETHERCAT:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe? + ``` + + Info: + - ```` is the binary data value to be used when searching on an Ethernet bus + signal. The default size is 1. The valid range is 1 to 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue?`` 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:BUS:ETHERCAT:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue? + ``` + + Info: + - ```` is the binary Cycle Number to be used when searching on an EtherCAT bus + signal. The default data size and value is 8 bits and 'XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatDatagramheaderLength(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth`` command. + + Description: + - This command sets the binary Datagram length information to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth?`` 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:BUS:ETHERCAT:DATAGRAMHEADer:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth? + ``` + + Info: + - ```` is the binary Datagram length information to be used when searching on an + EtherCAT bus signal. The default size and value Datagram length information is 11 bits and + 'XXXXXXXX XXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatDatagramheader(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer`` command. + + Description: + - This command sets or queries the Datagram Header fields in EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer?`` 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:BUS:ETHERCAT:DATAGRAMHEADer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer {CMD|IDX|ADDRess|LEN|CIRCulating|IRQ} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer? + ``` + + Info: + - ``CMD`` specifies the Datagram Header field as CMD. This is the default value. + - ``IDX`` specifies the Datagram Header field as IDX. + - ``ADDRess`` specifies the Datagram Header field as ADDRess. + - ``LEN`` specifies the Datagram Header field as LEN. + - ``CIRCulating`` specifies the Datagram Header field as CIRCulating. + - ``IRQ`` specifies the Datagram Header field as IRQ. + + Properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth`` + command. + """ # noqa: E501 + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._length = SearchSearchItemTriggerABusEthercatDatagramheaderLength( + device, f"{self._cmd_syntax}:LENGth" + ) + + @property + def length(self) -> SearchSearchItemTriggerABusEthercatDatagramheaderLength: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth`` command. + + Description: + - This command sets the binary Datagram length information to be used for EtherCAT bus. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth?`` 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:BUS:ETHERCAT:DATAGRAMHEADer:LENGth value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth? + ``` + + Info: + - ```` is the binary Datagram length information to be used when searching on + an EtherCAT bus signal. The default size and value Datagram length information is 11 + bits and 'XXXXXXXX XXX' respectively. + """ + return self._length + + +class SearchSearchItemTriggerABusEthercatDatagram(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM`` command. + + Description: + - This command sets or queries the Datagram fields in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM?`` 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:BUS:ETHERCAT:DATAGRAM value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM {HEADer|DATa|WKC} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM? + ``` + + Info: + - ``HEADer`` specifies the Datagram field and sets it to Header. This is the default value. + - ``DATa`` specifies the Datagram field and sets it to Data. + - ``WKC`` specifies the Datagram field and sets it to WKC. + """ + + +class SearchSearchItemTriggerABusEthercatCycValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue`` command. + + Description: + - This command sets the binary Cycle Number to be used for EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue?`` 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:BUS:ETHERCAT:CYC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue? + ``` + + Info: + - ```` is the binary Cycle Number to be used when searching on an EtherCAT bus + signal. The default size and value of Network Variable Count is 16 bits and 'XXXXXXXX + XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatCyc(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatCycValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatCycValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue`` command. + + Description: + - This command sets the binary Cycle Number to be used for EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue?`` 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:BUS:ETHERCAT:CYC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue? + ``` + + Info: + - ```` is the binary Cycle Number to be used when searching on an EtherCAT bus + signal. The default size and value of Network Variable Count is 16 bits and 'XXXXXXXX + XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a EtherCAT bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition?`` 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:BUS:ETHERCAT:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition {SOF|PROTocol|IPHEADer|UDPIPHEADer|MACADDRess|TCI|ECATHEADERLENGth|DATagram|NETWORKVARiable|MAILBOX|FCSERRor|EOF} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition? + ``` + + Info: + - ``SOF`` specifies the field within a EtherCAT frame to search on as SOF. This is the + default value. + - ``PROTocol`` specifies the field within a EtherCAT frame to search on as PROTocol. + - ``IPHEADer`` specifies the field within a EtherCAT frame to search on as IPHEADer. + - ``UDPIPHEADer`` specifies the field within a EtherCAT frame to search on as UDPIPHEADer. + - ``MACADDRess`` specifies the field within a EtherCAT frame to search on as MACADDRess. + - ``TCI`` specifies the field within a EtherCAT frame to search on as TCI. + - ``ECATHEADERLENGth`` specifies the field within a EtherCAT frame to search on as + ECATHEADERLENGth. + - ``DATagram`` specifies the field within a EtherCAT frame to search on as DATagram. + - ``NETWORKVARiable`` specifies the field within a EtherCAT frame to search on as + NETWORKVARiable. + - ``MAILBOX`` specifies the field within a EtherCAT frame to search on as MAILBOX. + - ``FCSERRor`` specifies the field within a EtherCAT frame to search on as FCSERRor. + - ``EOF`` specifies the field within a EtherCAT frame to search on as EOF. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEthercatCommandtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe`` command. + + Description: + - This command sets or queries the Command Type in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe?`` 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:BUS:ETHERCAT:COMMANDTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe {NOP|APRD|APWR|APRW|FPRD|FPWR|FPRW|BRD|BWR|BRW|LRD|LWR|LRW|ARMW|FRMW|REServed} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe? + ``` + + Info: + - ``NOP`` specifies the Command Type and sets it to NOP. This is the default value. + - ``APRD`` specifies the Command Type and sets it to APRD. + - ``APWR`` specifies the Command Type and sets it to APWR. + - ``APRW`` specifies the Command Type and sets it to APRW. + - ``FPRD`` specifies the Command Type and sets it to FPRD. + - ``FPWR`` specifies the Command Type and sets it to FPWR. + - ``FPRW`` specifies the Command Type and sets it to FPRW. + - ``BRD`` specifies the Command Type and sets it to BRD. + - ``BWR`` specifies the Command Type and sets it to BWR. + - ``BRW`` specifies the Command Type and sets it to BRW. + - ``LRD`` specifies the Command Type and sets it to LRD. + - ``LWR`` specifies the Command Type and sets it to LWR. + - ``LRW`` specifies the Command Type and sets it to LRW. + - ``ARMW`` specifies the Command Type and sets it to ARMW. + - ``FRMW`` specifies the Command Type and sets it to FRMW. + - ``REServed`` specifies the Command Type and sets it to REServed. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEthercatCntnvValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue`` command. + + Description: + - This command sets the binary Network Variable Count to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue?`` 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:BUS:ETHERCAT:CNTNV:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue? + ``` + + Info: + - ```` is the binary Network Variable Count to be used when searching on an + EtherCAT bus signal. The default size and value of Network Variable Count is 16 bits and + 'XXXXXXXX XXXXXXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEthercatCntnv(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEthercatCntnvValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEthercatCntnvValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue`` command. + + Description: + - This command sets the binary Network Variable Count to be used for EtherCAT bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue?`` 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:BUS:ETHERCAT:CNTNV:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue? + ``` + + Info: + - ```` is the binary Network Variable Count to be used when searching on an + EtherCAT bus signal. The default size and value of Network Variable Count is 16 bits + and 'XXXXXXXX XXXXXXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusEthercatAddressmode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe`` command. + + Description: + - This command sets or queries the Address Mode in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe?`` 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:BUS:ETHERCAT:ADDRESSMODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe {DEVice|LOGical} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe? + ``` + + Info: + - ``DEVice`` sets the Address Mode to Device. This is the default value. + - ``LOGical`` sets the Address Mode to Logical. + """ + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class SearchSearchItemTriggerABusEthercat(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.addressmode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe`` command. + - ``.cntnv``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV`` command tree. + - ``.commandtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe`` command. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition`` command. + - ``.cyc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC`` command tree. + - ``.datagram``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM`` command. + - ``.datagramheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer`` + command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa`` command tree. + - ``.destinationaddress``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess`` command tree. + - ``.deviceaddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess`` command. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor`` command tree. + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe`` command. + - ``.hash``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH`` command tree. + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer`` command tree. + - ``.identification``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification`` + command tree. + - ``.idx``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX`` command tree. + - ``.index``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex`` command tree. + - ``.ipdestination``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination`` command + tree. + - ``.ipsource``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce`` command tree. + - ``.irq``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ`` command tree. + - ``.len``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN`` command tree. + - ``.logicaladdress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess`` + command tree. + - ``.mailboxtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe`` command. + - ``.mailbox``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox`` command. + - ``.networkvariable``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable`` + command tree. + - ``.network``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork`` command tree. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet`` command tree. + - ``.position``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition`` command tree. + - ``.protocoltype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe`` command. + - ``.pubid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID`` command tree. + - ``.quality``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity`` command tree. + - ``.service``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice`` command tree. + - ``.sourceaddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess`` command + tree. + - ``.src``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC`` command tree. + - ``.tci``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI`` command tree. + - ``.wkc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._addressmode = SearchSearchItemTriggerABusEthercatAddressmode( + device, f"{self._cmd_syntax}:ADDRESSMODe" + ) + self._cntnv = SearchSearchItemTriggerABusEthercatCntnv(device, f"{self._cmd_syntax}:CNTNV") + self._commandtype = SearchSearchItemTriggerABusEthercatCommandtype( + device, f"{self._cmd_syntax}:COMMANDTYPe" + ) + self._condition = SearchSearchItemTriggerABusEthercatCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._cyc = SearchSearchItemTriggerABusEthercatCyc(device, f"{self._cmd_syntax}:CYC") + self._datagram = SearchSearchItemTriggerABusEthercatDatagram( + device, f"{self._cmd_syntax}:DATAGRAM" + ) + self._datagramheader = SearchSearchItemTriggerABusEthercatDatagramheader( + device, f"{self._cmd_syntax}:DATAGRAMHEADer" + ) + self._data = SearchSearchItemTriggerABusEthercatData(device, f"{self._cmd_syntax}:DATa") + self._destinationaddress = SearchSearchItemTriggerABusEthercatDestinationaddress( + device, f"{self._cmd_syntax}:DESTINATIONADDRess" + ) + self._deviceaddress = SearchSearchItemTriggerABusEthercatDeviceaddress( + device, f"{self._cmd_syntax}:DEVICEADDRess" + ) + self._error = SearchSearchItemTriggerABusEthercatError(device, f"{self._cmd_syntax}:ERRor") + self._frametype = SearchSearchItemTriggerABusEthercatFrametype( + device, f"{self._cmd_syntax}:FRAMETYPe" + ) + self._hash = SearchSearchItemTriggerABusEthercatHash(device, f"{self._cmd_syntax}:HASH") + self._header = SearchSearchItemTriggerABusEthercatHeader( + device, f"{self._cmd_syntax}:HEADer" + ) + self._identification = SearchSearchItemTriggerABusEthercatIdentification( + device, f"{self._cmd_syntax}:IDENtification" + ) + self._idx = SearchSearchItemTriggerABusEthercatIdx(device, f"{self._cmd_syntax}:IDX") + self._index = SearchSearchItemTriggerABusEthercatIndex(device, f"{self._cmd_syntax}:INDex") + self._ipdestination = SearchSearchItemTriggerABusEthercatIpdestination( + device, f"{self._cmd_syntax}:IPDESTination" + ) + self._ipsource = SearchSearchItemTriggerABusEthercatIpsource( + device, f"{self._cmd_syntax}:IPSOURce" + ) + self._irq = SearchSearchItemTriggerABusEthercatIrq(device, f"{self._cmd_syntax}:IRQ") + self._len = SearchSearchItemTriggerABusEthercatLen(device, f"{self._cmd_syntax}:LEN") + self._logicaladdress = SearchSearchItemTriggerABusEthercatLogicaladdress( + device, f"{self._cmd_syntax}:LOGICALADDRess" + ) + self._mailboxtype = SearchSearchItemTriggerABusEthercatMailboxtype( + device, f"{self._cmd_syntax}:MAILBOXTYPe" + ) + self._mailbox = SearchSearchItemTriggerABusEthercatMailbox( + device, f"{self._cmd_syntax}:MAILbox" + ) + self._networkvariable = SearchSearchItemTriggerABusEthercatNetworkvariable( + device, f"{self._cmd_syntax}:NETWORKVARiable" + ) + self._network = SearchSearchItemTriggerABusEthercatNetwork( + device, f"{self._cmd_syntax}:NETWork" + ) + self._offset = SearchSearchItemTriggerABusEthercatOffset( + device, f"{self._cmd_syntax}:OFFSet" + ) + self._position = SearchSearchItemTriggerABusEthercatPosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._protocoltype = SearchSearchItemTriggerABusEthercatProtocoltype( + device, f"{self._cmd_syntax}:PROTOCOLTYPe" + ) + self._pubid = SearchSearchItemTriggerABusEthercatPubid(device, f"{self._cmd_syntax}:PUBID") + self._quality = SearchSearchItemTriggerABusEthercatQuality( + device, f"{self._cmd_syntax}:QUALity" + ) + self._service = SearchSearchItemTriggerABusEthercatService( + device, f"{self._cmd_syntax}:SERVice" + ) + self._sourceaddress = SearchSearchItemTriggerABusEthercatSourceaddress( + device, f"{self._cmd_syntax}:SOURCEADDRess" + ) + self._src = SearchSearchItemTriggerABusEthercatSrc(device, f"{self._cmd_syntax}:SRC") + self._tci = SearchSearchItemTriggerABusEthercatTci(device, f"{self._cmd_syntax}:TCI") + self._wkc = SearchSearchItemTriggerABusEthercatWkc(device, f"{self._cmd_syntax}:WKC") + + @property + def addressmode(self) -> SearchSearchItemTriggerABusEthercatAddressmode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe`` command. + + Description: + - This command sets or queries the Address Mode in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe?`` 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:BUS:ETHERCAT:ADDRESSMODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe {DEVice|LOGical} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe? + ``` + + Info: + - ``DEVice`` sets the Address Mode to Device. This is the default value. + - ``LOGical`` sets the Address Mode to Logical. + """ + return self._addressmode + + @property + def cntnv(self) -> SearchSearchItemTriggerABusEthercatCntnv: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV:VALue`` command. + """ + return self._cntnv + + @property + def commandtype(self) -> SearchSearchItemTriggerABusEthercatCommandtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe`` command. + + Description: + - This command sets or queries the Command Type in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe?`` 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:BUS:ETHERCAT:COMMANDTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe {NOP|APRD|APWR|APRW|FPRD|FPWR|FPRW|BRD|BWR|BRW|LRD|LWR|LRW|ARMW|FRMW|REServed} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe? + ``` + + Info: + - ``NOP`` specifies the Command Type and sets it to NOP. This is the default value. + - ``APRD`` specifies the Command Type and sets it to APRD. + - ``APWR`` specifies the Command Type and sets it to APWR. + - ``APRW`` specifies the Command Type and sets it to APRW. + - ``FPRD`` specifies the Command Type and sets it to FPRD. + - ``FPWR`` specifies the Command Type and sets it to FPWR. + - ``FPRW`` specifies the Command Type and sets it to FPRW. + - ``BRD`` specifies the Command Type and sets it to BRD. + - ``BWR`` specifies the Command Type and sets it to BWR. + - ``BRW`` specifies the Command Type and sets it to BRW. + - ``LRD`` specifies the Command Type and sets it to LRD. + - ``LWR`` specifies the Command Type and sets it to LWR. + - ``LRW`` specifies the Command Type and sets it to LRW. + - ``ARMW`` specifies the Command Type and sets it to ARMW. + - ``FRMW`` specifies the Command Type and sets it to FRMW. + - ``REServed`` specifies the Command Type and sets it to REServed. + """ # noqa: E501 + return self._commandtype + + @property + def condition(self) -> SearchSearchItemTriggerABusEthercatCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition?`` 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:BUS:ETHERCAT:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition {SOF|PROTocol|IPHEADer|UDPIPHEADer|MACADDRess|TCI|ECATHEADERLENGth|DATagram|NETWORKVARiable|MAILBOX|FCSERRor|EOF} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition? + ``` + + Info: + - ``SOF`` specifies the field within a EtherCAT frame to search on as SOF. This is the + default value. + - ``PROTocol`` specifies the field within a EtherCAT frame to search on as PROTocol. + - ``IPHEADer`` specifies the field within a EtherCAT frame to search on as IPHEADer. + - ``UDPIPHEADer`` specifies the field within a EtherCAT frame to search on as + UDPIPHEADer. + - ``MACADDRess`` specifies the field within a EtherCAT frame to search on as MACADDRess. + - ``TCI`` specifies the field within a EtherCAT frame to search on as TCI. + - ``ECATHEADERLENGth`` specifies the field within a EtherCAT frame to search on as + ECATHEADERLENGth. + - ``DATagram`` specifies the field within a EtherCAT frame to search on as DATagram. + - ``NETWORKVARiable`` specifies the field within a EtherCAT frame to search on as + NETWORKVARiable. + - ``MAILBOX`` specifies the field within a EtherCAT frame to search on as MAILBOX. + - ``FCSERRor`` specifies the field within a EtherCAT frame to search on as FCSERRor. + - ``EOF`` specifies the field within a EtherCAT frame to search on as EOF. + """ # noqa: E501 + return self._condition + + @property + def cyc(self) -> SearchSearchItemTriggerABusEthercatCyc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC:VALue`` command. + """ + return self._cyc + + @property + def datagram(self) -> SearchSearchItemTriggerABusEthercatDatagram: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM`` command. + + Description: + - This command sets or queries the Datagram fields in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM?`` 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:BUS:ETHERCAT:DATAGRAM value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM {HEADer|DATa|WKC} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM? + ``` + + Info: + - ``HEADer`` specifies the Datagram field and sets it to Header. This is the default + value. + - ``DATa`` specifies the Datagram field and sets it to Data. + - ``WKC`` specifies the Datagram field and sets it to WKC. + """ + return self._datagram + + @property + def datagramheader(self) -> SearchSearchItemTriggerABusEthercatDatagramheader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer`` command. + + Description: + - This command sets or queries the Datagram Header fields in EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer?`` 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:BUS:ETHERCAT:DATAGRAMHEADer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer {CMD|IDX|ADDRess|LEN|CIRCulating|IRQ} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer? + ``` + + Info: + - ``CMD`` specifies the Datagram Header field as CMD. This is the default value. + - ``IDX`` specifies the Datagram Header field as IDX. + - ``ADDRess`` specifies the Datagram Header field as ADDRess. + - ``LEN`` specifies the Datagram Header field as LEN. + - ``CIRCulating`` specifies the Datagram Header field as CIRCulating. + - ``IRQ`` specifies the Datagram Header field as IRQ. + + Sub-properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer:LENGth`` + command. + """ # noqa: E501 + return self._datagramheader + + @property + def data(self) -> SearchSearchItemTriggerABusEthercatData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa:VALue`` command. + """ + return self._data + + @property + def destinationaddress(self) -> SearchSearchItemTriggerABusEthercatDestinationaddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess:VALue`` + command. + """ + return self._destinationaddress + + @property + def deviceaddress(self) -> SearchSearchItemTriggerABusEthercatDeviceaddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess`` command. + + Description: + - This command sets or queries the Device Address in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess?`` 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:BUS:ETHERCAT:DEVICEADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess {POSition|OFFSet} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess? + ``` + + Info: + - ``POSition`` specifies the Device Address to position. This is the default value. + - ``OFFSet`` specifies the Device Address to offset. + """ + return self._deviceaddress + + @property + def error(self) -> SearchSearchItemTriggerABusEthercatError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.reply``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor:REPLy`` command tree. + """ + return self._error + + @property + def frametype(self) -> SearchSearchItemTriggerABusEthercatFrametype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe`` command. + + Description: + - This command sets or queries the Frame Type in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe?`` 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:BUS:ETHERCAT:FRAMETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe {BASic|UDPIP} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe? + ``` + + Info: + - ``BASic`` specifies the Frame Type as BASic. This is the default value. + - ``UDPIP`` specifies the Frame Type as UDPIP. + """ + return self._frametype + + @property + def hash(self) -> SearchSearchItemTriggerABusEthercatHash: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH:VALue`` command. + """ + return self._hash + + @property + def header(self) -> SearchSearchItemTriggerABusEthercatHeader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer:LENGth`` command. + """ + return self._header + + @property + def identification(self) -> SearchSearchItemTriggerABusEthercatIdentification: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification:VALue`` + command. + """ + return self._identification + + @property + def idx(self) -> SearchSearchItemTriggerABusEthercatIdx: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX:VALue`` command. + """ + return self._idx + + @property + def index(self) -> SearchSearchItemTriggerABusEthercatIndex: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex:VALue`` command. + """ + return self._index + + @property + def ipdestination(self) -> SearchSearchItemTriggerABusEthercatIpdestination: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination:ADDRess`` + command tree. + """ + return self._ipdestination + + @property + def ipsource(self) -> SearchSearchItemTriggerABusEthercatIpsource: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce:ADDRess`` command + tree. + """ + return self._ipsource + + @property + def irq(self) -> SearchSearchItemTriggerABusEthercatIrq: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ:VALue`` command. + """ + return self._irq + + @property + def len(self) -> SearchSearchItemTriggerABusEthercatLen: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN:VALue`` command. + """ + return self._len + + @property + def logicaladdress(self) -> SearchSearchItemTriggerABusEthercatLogicaladdress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess:VALue`` + command. + """ + return self._logicaladdress + + @property + def mailboxtype(self) -> SearchSearchItemTriggerABusEthercatMailboxtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe`` command. + + Description: + - This command sets or queries the Mailbox Type fields in EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe?`` 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:BUS:ETHERCAT:MAILBOXTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe {ZERo|ONE|TWO|THRee|FOUR|FIVe|RESERved|FIFTeen} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe? + ``` + + Info: + - ``ZERo`` specifies the Mailbox Type as ZERo. This is the default value. + - ``ONE`` specifies the Mailbox Type as ONE. + - ``TWO`` specifies the Mailbox Type as TWO. + - ``THRee`` specifies the Mailbox Type as THRee. + - ``FOUR`` specifies the Mailbox Type as FOUR. + - ``FIVe`` specifies the Mailbox Type as FIVe. + - ``RESERved`` specifies the Mailbox Type as RESERved. + - ``FIFTeen`` specifies the Mailbox Type as FIFTeen. + """ # noqa: E501 + return self._mailboxtype + + @property + def mailbox(self) -> SearchSearchItemTriggerABusEthercatMailbox: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox`` command. + + Description: + - This command sets or queries the Mailbox fields in EtherCAT bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox?`` 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:BUS:ETHERCAT:MAILbox value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox {MAILBOXHEADer|SERVICEDATa|ERRSERVICEDATa} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox? + ``` + + Info: + - ``MAILBOXHEADer`` specifies the Mailbox fields as mailbox header. This is the default + value. + - ``SERVICEDATa`` specifies the Mailbox fields as service data. + - ``ERRSERVICEDATa`` specifies the Mailbox fields as error reply service data. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:ADDRess`` command + tree. + - ``.cnt``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:CNT`` command tree. + - ``.detail``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:DETail`` command. + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox:HEADer`` command. + """ # noqa: E501 + return self._mailbox + + @property + def networkvariable(self) -> SearchSearchItemTriggerABusEthercatNetworkvariable: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable:DATa`` + command tree. + """ + return self._networkvariable + + @property + def network(self) -> SearchSearchItemTriggerABusEthercatNetwork: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.variable``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork:VARiable`` + command. + """ + return self._network + + @property + def offset(self) -> SearchSearchItemTriggerABusEthercatOffset: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet:VALue`` command. + """ + return self._offset + + @property + def position(self) -> SearchSearchItemTriggerABusEthercatPosition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition:VALue`` command. + """ + return self._position + + @property + def protocoltype(self) -> SearchSearchItemTriggerABusEthercatProtocoltype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe`` command. + + Description: + - This command sets or queries the EtherCAT Protocol Type in EtherCAT bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe?`` 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:BUS:ETHERCAT:PROTOCOLTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe {PDU|NETWORKVARiables|MAILbox} + - SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe? + ``` + + Info: + - ``PDU`` specifies the Protocol Type as PDU. This is the default value. + - ``NETWORKVARiables`` specifies the Protocol Type as NETWORKVARiables. + - ``MAILbox`` specifies the Protocol Type as MAILbox. + """ + return self._protocoltype + + @property + def pubid(self) -> SearchSearchItemTriggerABusEthercatPubid: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID:VALue`` command. + """ + return self._pubid + + @property + def quality(self) -> SearchSearchItemTriggerABusEthercatQuality: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity:VALue`` command. + """ + return self._quality + + @property + def service(self) -> SearchSearchItemTriggerABusEthercatService: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice:DATa`` command tree. + """ + return self._service + + @property + def sourceaddress(self) -> SearchSearchItemTriggerABusEthercatSourceaddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess:VALue`` + command. + """ + return self._sourceaddress + + @property + def src(self) -> SearchSearchItemTriggerABusEthercatSrc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.port``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC:PORT`` command tree. + """ + return self._src + + @property + def tci(self) -> SearchSearchItemTriggerABusEthercatTci: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI:VALue`` command. + """ + return self._tci + + @property + def wkc(self) -> SearchSearchItemTriggerABusEthercatWkc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC:VALue`` command. + """ + return self._wkc + + +class SearchSearchItemTriggerABusEspiVirtualwireStatusValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire Status. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:STATus:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiVirtualwireStatus(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEspiVirtualwireStatusValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEspiVirtualwireStatusValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire Status. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:STATus:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusEspiVirtualwireResponseValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire Response. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiVirtualwireResponse(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEspiVirtualwireResponseValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEspiVirtualwireResponseValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire Response. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusEspiVirtualwireIndexValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire Index. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:INDex:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiVirtualwireIndex(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEspiVirtualwireIndexValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEspiVirtualwireIndexValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire Index. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:INDex:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusEspiVirtualwireDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire Data. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiVirtualwireData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEspiVirtualwireDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEspiVirtualwireDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire Data. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusEspiVirtualwireCountValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire count. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:COUNt:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiVirtualwireCount(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEspiVirtualwireCountValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEspiVirtualwireCountValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Virtual wire count. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue?`` 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:BUS:ESPI:VIRTUALWIRe:COUNt:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusEspiVirtualwire(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.count``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt`` command tree. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa`` command tree. + - ``.index``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex`` command tree. + - ``.response``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse`` command + tree. + - ``.status``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._count = SearchSearchItemTriggerABusEspiVirtualwireCount( + device, f"{self._cmd_syntax}:COUNt" + ) + self._data = SearchSearchItemTriggerABusEspiVirtualwireData( + device, f"{self._cmd_syntax}:DATa" + ) + self._index = SearchSearchItemTriggerABusEspiVirtualwireIndex( + device, f"{self._cmd_syntax}:INDex" + ) + self._response = SearchSearchItemTriggerABusEspiVirtualwireResponse( + device, f"{self._cmd_syntax}:RESPonse" + ) + self._status = SearchSearchItemTriggerABusEspiVirtualwireStatus( + device, f"{self._cmd_syntax}:STATus" + ) + + @property + def count(self) -> SearchSearchItemTriggerABusEspiVirtualwireCount: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt:VALue`` + command. + """ + return self._count + + @property + def data(self) -> SearchSearchItemTriggerABusEspiVirtualwireData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa:VALue`` + command. + """ + return self._data + + @property + def index(self) -> SearchSearchItemTriggerABusEspiVirtualwireIndex: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex:VALue`` + command. + """ + return self._index + + @property + def response(self) -> SearchSearchItemTriggerABusEspiVirtualwireResponse: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse:VALue`` + command. + """ + return self._response + + @property + def status(self) -> SearchSearchItemTriggerABusEspiVirtualwireStatus: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus:VALue`` + command. + """ + return self._status + + +class SearchSearchItemTriggerABusEspiTagValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Tag. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue?`` 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:BUS:ESPI:TAG:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiTag(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEspiTagValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusEspiTagValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Tag. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue?`` 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:BUS:ESPI:TAG:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusEspiSmbusSlaveAddress(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is SMBus Slave Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess?`` 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:BUS:ESPI:SMBUS:SLAVe:ADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiSmbusSlave(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusEspiSmbusSlaveAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusEspiSmbusSlaveAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is SMBus Slave Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess?`` 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:BUS:ESPI:SMBUS:SLAVe:ADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._address + + +class SearchSearchItemTriggerABusEspiSmbusDestinationAddress(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is SMBus Source/Destination Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess?`` 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:BUS:ESPI:SMBUS:DESTination:ADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiSmbusDestination(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusEspiSmbusDestinationAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusEspiSmbusDestinationAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is SMBus Source/Destination Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess?`` 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:BUS:ESPI:SMBUS:DESTination:ADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._address + + +class SearchSearchItemTriggerABusEspiSmbus(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.destination``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination`` command + tree. + - ``.slave``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._destination = SearchSearchItemTriggerABusEspiSmbusDestination( + device, f"{self._cmd_syntax}:DESTination" + ) + self._slave = SearchSearchItemTriggerABusEspiSmbusSlave(device, f"{self._cmd_syntax}:SLAVe") + + @property + def destination(self) -> SearchSearchItemTriggerABusEspiSmbusDestination: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination:ADDRess`` + command. + """ + return self._destination + + @property + def slave(self) -> SearchSearchItemTriggerABusEspiSmbusSlave: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe:ADDRess`` command. + """ + return self._slave + + +class SearchSearchItemTriggerABusEspiRespcycleType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe`` command. + + Description: + - This command sets or queries the response cycle type on command in ESPI bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe?`` 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:BUS:ESPI:RESPCYCLE:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe {MEMRDWR32|MEMRDWR64|MESSage|MSGWITHDATa|SUCCESSNODATa|SUCCESSDATa|UNSUCCESSNODATa|LTR|FLASHREAD|FLASHWRITe|FLASHERASe} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe? + ``` + + Info: + - ``MEMRDWR32`` specifies Memory Read/Write 32 as the cycle type to search on. + - ``MEMRDWR64`` specifies Memory Read/Write 64 as the cycle type to search on. + - ``MESSage`` specifies message as the cycle type to search on. + - ``MSGWITHDATa`` specifies message with Data as the cycle type to search on. + - ``SUCCESSNODATa`` specifies success without data as the cycle type to search on. + - ``SUCCESSDATa`` specifies success with data as the cycle type to search on. + - ``UNSUCCESSNODATa`` specifies unsuccess without data as the cycle type to search on. + - ``LTR`` specifies LTR as the cycle type to search on. + - ``FLASHREAD`` specifies flash read as the cycle type to search on. + - ``FLASHWRITe`` specifies flash write as the cycle type to search on. + - ``FLASHERASe`` specifies flash erase as the cycle type to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEspiRespcycle(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusEspiRespcycleType( + device, f"{self._cmd_syntax}:TYPe" + ) + + @property + def type(self) -> SearchSearchItemTriggerABusEspiRespcycleType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe`` command. + + Description: + - This command sets or queries the response cycle type on command in ESPI bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe?`` 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:BUS:ESPI:RESPCYCLE:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe {MEMRDWR32|MEMRDWR64|MESSage|MSGWITHDATa|SUCCESSNODATa|SUCCESSDATa|UNSUCCESSNODATa|LTR|FLASHREAD|FLASHWRITe|FLASHERASe} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe? + ``` + + Info: + - ``MEMRDWR32`` specifies Memory Read/Write 32 as the cycle type to search on. + - ``MEMRDWR64`` specifies Memory Read/Write 64 as the cycle type to search on. + - ``MESSage`` specifies message as the cycle type to search on. + - ``MSGWITHDATa`` specifies message with Data as the cycle type to search on. + - ``SUCCESSNODATa`` specifies success without data as the cycle type to search on. + - ``SUCCESSDATa`` specifies success with data as the cycle type to search on. + - ``UNSUCCESSNODATa`` specifies unsuccess without data as the cycle type to search on. + - ``LTR`` specifies LTR as the cycle type to search on. + - ``FLASHREAD`` specifies flash read as the cycle type to search on. + - ``FLASHWRITe`` specifies flash write as the cycle type to search on. + - ``FLASHERASe`` specifies flash erase as the cycle type to search on. + """ # noqa: E501 + return self._type + + +class SearchSearchItemTriggerABusEspiPhase(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe`` command. + + Description: + - This command sets or queries the phase in ESPI bus. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe?`` 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:BUS:ESPI:PHASe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe {COMMand|RESPONSE|RESPONSEHEADer|RESPONSENOHEADer} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe? + ``` + + Info: + - ``COMMand`` specifies command as the field/packet to search on. + - ``RESPONSE`` specifies response as the field/packet to search on. + - ``RESPONSEHEADer`` specifies the response header as the field/packet to search on. + - ``RESPONSENOHEADer`` specifies the response without header as the field/packet to search + on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEspiLengthValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Length. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue?`` 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:BUS:ESPI:LENGth:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiLength(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEspiLengthValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEspiLengthValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Length. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue?`` 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:BUS:ESPI:LENGth:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusEspiErrorType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error type on command or response in ESPI bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe?`` 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:BUS:ESPI:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe {CRC|DEFer|FATal|NONFATal|NORESPonse|CMDOPCODe|CYCLETYPe} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe? + ``` + + Info: + - ``CRC`` specifies CRC as the error type to search on. + - ``DEFer`` specifies DEFer as the error type to search on. + - ``FATal`` specifies FATal as the error type to search on. + - ``NONFATal`` specifies NONFATal as the error type to search on. + - ``NORESPonse`` specifies NORESPonse as the error type to search on. + - ``CMDOPCODe`` specifies CMDOPCODe as the error type to search on. + - ``CYCLETYPe`` specifies CYCLETYPe as the error type to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEspiError(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusEspiErrorType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusEspiErrorType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error type on command or response in ESPI bus. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe?`` 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:BUS:ESPI:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe {CRC|DEFer|FATal|NONFATal|NORESPonse|CMDOPCODe|CYCLETYPe} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe? + ``` + + Info: + - ``CRC`` specifies CRC as the error type to search on. + - ``DEFer`` specifies DEFer as the error type to search on. + - ``FATal`` specifies FATal as the error type to search on. + - ``NONFATal`` specifies NONFATal as the error type to search on. + - ``NORESPonse`` specifies NORESPonse as the error type to search on. + - ``CMDOPCODe`` specifies CMDOPCODe as the error type to search on. + - ``CYCLETYPe`` specifies CYCLETYPe as the error type to search on. + """ # noqa: E501 + return self._type + + +class SearchSearchItemTriggerABusEspiDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue?`` 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:BUS:ESPI:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for ESPI + triggering if the trigger condition is DATA. The default data size is 1 byte and ranges + between 1 and 5. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe?`` 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:BUS:ESPI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. The default data size is 1 and the valid range is 1 to + 5. + """ + + +class SearchSearchItemTriggerABusEspiData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusEspiDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusEspiDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusEspiDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for ESPI + triggering if the trigger condition is DATA. The default data size is 1 byte and + ranges between 1 and 5. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe?`` 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:BUS:ESPI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. The default data size is 1 and the valid range is 1 + to 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusEspiDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue?`` 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:BUS:ESPI:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusEspiCycletype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe`` command. + + Description: + - This command sets or queries the cycle type on command in ESPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe?`` 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:BUS:ESPI:CYCLETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe {MEMRD32|MEMRD64|MEMWR32|MEMWR64|MESSage|MSGWITHDATa|SUCCESSNODATa|SUCCESSDATa|UNSUCCESSNODATa|OOBSMBUS|MCTP|FLASHREAD|FLASHWRITe|FLASHERASe|FLSUCCESSNODATa|FLSUCCESSDATa|FLUNSUCCESSNODATa} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe? + ``` + + Info: + - ``MEMRD32`` specifies Memory Read 32 as the cycle type to search on. + - ``MEMRD64`` specifies Memory Read 64 as the cycle type to search on. + - ``MEMWR32`` specifies Memory Read Write 32 as the cycle type to search on. + - ``MEMWR64`` specifies Memory Read Write 64 as the cycle type to search on. + - ``MESSage`` specifies MESSage as the cycle type to search on. + - ``MSGWITHDATa`` specifies message with Data as the cycle type to search on. + - ``SUCCESSNODATa`` specifies success without data as the cycle type to search on. + - ``SUCCESSDATa`` specifies success with data as the cycle type to search on. + - ``UNSUCCESSNODATa`` specifies unsuccess without data as the cycle type to search on. + - ``OOBSMBUS`` specifies OOB SMBus as the cycle type to search on. + - ``MCTP`` specifies MCTP as the cycle type to search on. + - ``FLASHREAD`` specifies FLASHREAD as the cycle type to search on. + - ``FLASHWRITe`` specifies FLASHWRITe as the cycle type to search on. + - ``FLASHERASe`` specifies FLASHERASe as the cycle type to search on. + - ``FLSUCCESSNODATa`` specifies flash success without data as the cycle type to search on. + - ``FLSUCCESSDATa`` specifies flash Success with data as the cycle type to search on. + - ``FLUNSUCCESSNODATa`` specifies flash unsuccess without data as the cycle type to search + on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEspiCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a ESPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition?`` 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:BUS:ESPI:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition {STARt|CHINDependent|PERICHANnel|OOBCHANnel|VWCHANnel|FACHANnel|DATa|STATus|ERRors|WAIT|END} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition? + ``` + + Info: + - ``STARt`` specifies STARt as the event for ESPI frame to search on. + - ``CHINDependent`` specifies CHINDependent channel for ESPI protocol to search on. + - ``PERICHANnel`` specifies peripheral channel for ESPI protocol to search on. + - ``OOBCHANnel`` specifies OOBCHANnel channel for ESPI protocol to search on. + - ``VWCHANnel`` specifies virtual wire channel for ESPI protocol to search on. + - ``FACHANnel`` specifies flash channel for ESPI protocol to search on. + - ``DATa`` specifies DATa as the field within a ESPI frame to search on. + - ``STATus`` specifies STATus as the field within a ESPI frame to search on. + - ``ERRors`` specifies ERRors as the type of error ESPI frame to search on. + - ``WAIT`` specifies WAIT as the field within a ESPI frame to search on. + - ``END`` specifies END as the event for a ESPI frame to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEspiCommandOpcode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode`` command. + + Description: + - This command sets or queries the command opcode in ESPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode?`` 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:BUS:ESPI:COMMAND:OPCode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode {GETSTATus|GETCONFig|SETCONFig|GETNP|GETPC|PUTNP|PUTPC|PUTIORDSHORt|PUTIOWRSHORt|PUTMEMRD32SHORt|PUTMEMWR32SHORt|PUTOOB|GETOOB|PUTFLASHC|GETFLASHNP|PUTVWIRe|GETVWIRe} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode? + ``` + + Info: + - ``GETSTATus`` specifies get status as the command opcode in ESPI bus to search on. + - ``GETCONFig`` specifies get configuration as the command opcode in ESPI bus to search on. + - ``SETCONFig`` specifies set configuration as the command opcode in ESPI bus to search on. + - ``GETNP`` specifies GETNP as the command opcode in ESPI bus to search on. + - ``GETPC`` specifies GETPC as the command opcode in ESPI bus to search on. + - ``PUTNP`` specifies PUTNP as the command opcode in ESPI bus to search on. + - ``PUTPC`` specifies PUTPC as the command opcode in ESPI bus to search on. + - ``PUTIORDSHORt`` specifies put IO read short as the command opcode in ESPI bus to search + on. + - ``PUTIOWRSHORt`` specifies put IO write short as the command opcode in ESPI bus to search + on. + - ``PUTMEMRD32SHORt`` specifies put memory read 32 short as the command opcode in ESPI bus + to search on. + - ``PUTMEMWR32SHORt`` specifies put memory write 32 short as the command opcode in ESPI bus + to search on. + - ``PUTOOB`` specifies PUTOOB as the command opcode in ESPI bus to search on. + - ``GETOOB`` specifies GETOOB as the command opcode in ESPI bus to search on. + - ``PUTFLASHC`` specifies PUTFLASHC as the command opcode in ESPI bus to search on. + - ``GETFLASHNP`` specifies GETFLASHNP as the command opcode in ESPI bus to search on. + - ``PUTVWIRe`` specifies put virtual wire as the command opcode in ESPI bus to search on. + - ``GETVWIRe`` specifies get virtual wire as the command opcode in ESPI bus to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusEspiCommand(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.opcode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._opcode = SearchSearchItemTriggerABusEspiCommandOpcode( + device, f"{self._cmd_syntax}:OPCode" + ) + + @property + def opcode(self) -> SearchSearchItemTriggerABusEspiCommandOpcode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode`` command. + + Description: + - This command sets or queries the command opcode in ESPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode?`` 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:BUS:ESPI:COMMAND:OPCode value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode {GETSTATus|GETCONFig|SETCONFig|GETNP|GETPC|PUTNP|PUTPC|PUTIORDSHORt|PUTIOWRSHORt|PUTMEMRD32SHORt|PUTMEMWR32SHORt|PUTOOB|GETOOB|PUTFLASHC|GETFLASHNP|PUTVWIRe|GETVWIRe} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode? + ``` + + Info: + - ``GETSTATus`` specifies get status as the command opcode in ESPI bus to search on. + - ``GETCONFig`` specifies get configuration as the command opcode in ESPI bus to search + on. + - ``SETCONFig`` specifies set configuration as the command opcode in ESPI bus to search + on. + - ``GETNP`` specifies GETNP as the command opcode in ESPI bus to search on. + - ``GETPC`` specifies GETPC as the command opcode in ESPI bus to search on. + - ``PUTNP`` specifies PUTNP as the command opcode in ESPI bus to search on. + - ``PUTPC`` specifies PUTPC as the command opcode in ESPI bus to search on. + - ``PUTIORDSHORt`` specifies put IO read short as the command opcode in ESPI bus to + search on. + - ``PUTIOWRSHORt`` specifies put IO write short as the command opcode in ESPI bus to + search on. + - ``PUTMEMRD32SHORt`` specifies put memory read 32 short as the command opcode in ESPI + bus to search on. + - ``PUTMEMWR32SHORt`` specifies put memory write 32 short as the command opcode in ESPI + bus to search on. + - ``PUTOOB`` specifies PUTOOB as the command opcode in ESPI bus to search on. + - ``GETOOB`` specifies GETOOB as the command opcode in ESPI bus to search on. + - ``PUTFLASHC`` specifies PUTFLASHC as the command opcode in ESPI bus to search on. + - ``GETFLASHNP`` specifies GETFLASHNP as the command opcode in ESPI bus to search on. + - ``PUTVWIRe`` specifies put virtual wire as the command opcode in ESPI bus to search + on. + - ``GETVWIRe`` specifies get virtual wire as the command opcode in ESPI bus to search + on. + """ # noqa: E501 + return self._opcode + + +class SearchSearchItemTriggerABusEspiAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue?`` 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:BUS:ESPI:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusEspiAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusEspiAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusEspiAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue`` command. + + Description: + - This command specifies the binary data string used for ESPI triggering if the trigger + condition is Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue?`` 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:BUS:ESPI:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._value + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusEspi(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess`` command tree. + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition`` command. + - ``.cycletype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor`` command tree. + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth`` command tree. + - ``.phase``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe`` command. + - ``.respcycle``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE`` command tree. + - ``.smbus``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS`` command tree. + - ``.tag``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG`` command tree. + - ``.virtualwire``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusEspiAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + self._command = SearchSearchItemTriggerABusEspiCommand( + device, f"{self._cmd_syntax}:COMMAND" + ) + self._condition = SearchSearchItemTriggerABusEspiCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._cycletype = SearchSearchItemTriggerABusEspiCycletype( + device, f"{self._cmd_syntax}:CYCLETYPe" + ) + self._data = SearchSearchItemTriggerABusEspiData(device, f"{self._cmd_syntax}:DATa") + self._error = SearchSearchItemTriggerABusEspiError(device, f"{self._cmd_syntax}:ERRor") + self._length = SearchSearchItemTriggerABusEspiLength(device, f"{self._cmd_syntax}:LENGth") + self._phase = SearchSearchItemTriggerABusEspiPhase(device, f"{self._cmd_syntax}:PHASe") + self._respcycle = SearchSearchItemTriggerABusEspiRespcycle( + device, f"{self._cmd_syntax}:RESPCYCLE" + ) + self._smbus = SearchSearchItemTriggerABusEspiSmbus(device, f"{self._cmd_syntax}:SMBUS") + self._tag = SearchSearchItemTriggerABusEspiTag(device, f"{self._cmd_syntax}:TAG") + self._virtualwire = SearchSearchItemTriggerABusEspiVirtualwire( + device, f"{self._cmd_syntax}:VIRTUALWIRe" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusEspiAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess:VALue`` command. + """ + return self._address + + @property + def command(self) -> SearchSearchItemTriggerABusEspiCommand: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.opcode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND:OPCode`` command. + """ + return self._command + + @property + def condition(self) -> SearchSearchItemTriggerABusEspiCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a ESPI bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition?`` 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:BUS:ESPI:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition {STARt|CHINDependent|PERICHANnel|OOBCHANnel|VWCHANnel|FACHANnel|DATa|STATus|ERRors|WAIT|END} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition? + ``` + + Info: + - ``STARt`` specifies STARt as the event for ESPI frame to search on. + - ``CHINDependent`` specifies CHINDependent channel for ESPI protocol to search on. + - ``PERICHANnel`` specifies peripheral channel for ESPI protocol to search on. + - ``OOBCHANnel`` specifies OOBCHANnel channel for ESPI protocol to search on. + - ``VWCHANnel`` specifies virtual wire channel for ESPI protocol to search on. + - ``FACHANnel`` specifies flash channel for ESPI protocol to search on. + - ``DATa`` specifies DATa as the field within a ESPI frame to search on. + - ``STATus`` specifies STATus as the field within a ESPI frame to search on. + - ``ERRors`` specifies ERRors as the type of error ESPI frame to search on. + - ``WAIT`` specifies WAIT as the field within a ESPI frame to search on. + - ``END`` specifies END as the event for a ESPI frame to search on. + """ # noqa: E501 + return self._condition + + @property + def cycletype(self) -> SearchSearchItemTriggerABusEspiCycletype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe`` command. + + Description: + - This command sets or queries the cycle type on command in ESPI bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe?`` 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:BUS:ESPI:CYCLETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe {MEMRD32|MEMRD64|MEMWR32|MEMWR64|MESSage|MSGWITHDATa|SUCCESSNODATa|SUCCESSDATa|UNSUCCESSNODATa|OOBSMBUS|MCTP|FLASHREAD|FLASHWRITe|FLASHERASe|FLSUCCESSNODATa|FLSUCCESSDATa|FLUNSUCCESSNODATa} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe? + ``` + + Info: + - ``MEMRD32`` specifies Memory Read 32 as the cycle type to search on. + - ``MEMRD64`` specifies Memory Read 64 as the cycle type to search on. + - ``MEMWR32`` specifies Memory Read Write 32 as the cycle type to search on. + - ``MEMWR64`` specifies Memory Read Write 64 as the cycle type to search on. + - ``MESSage`` specifies MESSage as the cycle type to search on. + - ``MSGWITHDATa`` specifies message with Data as the cycle type to search on. + - ``SUCCESSNODATa`` specifies success without data as the cycle type to search on. + - ``SUCCESSDATa`` specifies success with data as the cycle type to search on. + - ``UNSUCCESSNODATa`` specifies unsuccess without data as the cycle type to search on. + - ``OOBSMBUS`` specifies OOB SMBus as the cycle type to search on. + - ``MCTP`` specifies MCTP as the cycle type to search on. + - ``FLASHREAD`` specifies FLASHREAD as the cycle type to search on. + - ``FLASHWRITe`` specifies FLASHWRITe as the cycle type to search on. + - ``FLASHERASe`` specifies FLASHERASe as the cycle type to search on. + - ``FLSUCCESSNODATa`` specifies flash success without data as the cycle type to search + on. + - ``FLSUCCESSDATa`` specifies flash Success with data as the cycle type to search on. + - ``FLUNSUCCESSNODATa`` specifies flash unsuccess without data as the cycle type to + search on. + """ # noqa: E501 + return self._cycletype + + @property + def data(self) -> SearchSearchItemTriggerABusEspiData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa:VALue`` command. + """ + return self._data + + @property + def error(self) -> SearchSearchItemTriggerABusEspiError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor:TYPe`` command. + """ + return self._error + + @property + def length(self) -> SearchSearchItemTriggerABusEspiLength: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth:VALue`` command. + """ + return self._length + + @property + def phase(self) -> SearchSearchItemTriggerABusEspiPhase: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe`` command. + + Description: + - This command sets or queries the phase in ESPI bus. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe?`` 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:BUS:ESPI:PHASe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe {COMMand|RESPONSE|RESPONSEHEADer|RESPONSENOHEADer} + - SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe? + ``` + + Info: + - ``COMMand`` specifies command as the field/packet to search on. + - ``RESPONSE`` specifies response as the field/packet to search on. + - ``RESPONSEHEADer`` specifies the response header as the field/packet to search on. + - ``RESPONSENOHEADer`` specifies the response without header as the field/packet to + search on. + """ # noqa: E501 + return self._phase + + @property + def respcycle(self) -> SearchSearchItemTriggerABusEspiRespcycle: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE:TYPe`` command. + """ + return self._respcycle + + @property + def smbus(self) -> SearchSearchItemTriggerABusEspiSmbus: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.destination``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:DESTination`` + command tree. + - ``.slave``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS:SLAVe`` command tree. + """ + return self._smbus + + @property + def tag(self) -> SearchSearchItemTriggerABusEspiTag: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG:VALue`` command. + """ + return self._tag + + @property + def virtualwire(self) -> SearchSearchItemTriggerABusEspiVirtualwire: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.count``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:COUNt`` command + tree. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:DATa`` command tree. + - ``.index``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:INDex`` command + tree. + - ``.response``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:RESPonse`` + command tree. + - ``.status``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe:STATus`` command + tree. + """ + return self._virtualwire + + +class SearchSearchItemTriggerABusDphyYuvY(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y`` command. + + Description: + - This command specifies the Y data string used for DPHY triggering if the trigger condition + is on YUV packet. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y?`` 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:BUS:DPHY:YUV:Y value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y? + ``` + + Info: + - ```` is the identifier value. The default YUV packets Y value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyYuvV(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V`` command. + + Description: + - This command specifies the V data string used for DPHY triggering if the trigger condition + is on YUV packet. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V?`` 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:BUS:DPHY:YUV:V value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V? + ``` + + Info: + - ```` is the identifier value. The default YUV packets V value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyYuvU(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U`` command. + + Description: + - This command specifies the U data string used for DPHY triggering if the trigger condition + is on YUV packet. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U?`` 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:BUS:DPHY:YUV:U value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U? + ``` + + Info: + - ```` is the identifier value. The default YUV packets U value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyYuv(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.u``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U`` command. + - ``.v``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V`` command. + - ``.y``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._u = SearchSearchItemTriggerABusDphyYuvU(device, f"{self._cmd_syntax}:U") + self._v = SearchSearchItemTriggerABusDphyYuvV(device, f"{self._cmd_syntax}:V") + self._y = SearchSearchItemTriggerABusDphyYuvY(device, f"{self._cmd_syntax}:Y") + + @property + def u(self) -> SearchSearchItemTriggerABusDphyYuvU: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U`` command. + + Description: + - This command specifies the U data string used for DPHY triggering if the trigger + condition is on YUV packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U?`` 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:BUS:DPHY:YUV:U value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U? + ``` + + Info: + - ```` is the identifier value. The default YUV packets U value is XXXXXXXXXX. + """ + return self._u + + @property + def v(self) -> SearchSearchItemTriggerABusDphyYuvV: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V`` command. + + Description: + - This command specifies the V data string used for DPHY triggering if the trigger + condition is on YUV packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V?`` 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:BUS:DPHY:YUV:V value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V? + ``` + + Info: + - ```` is the identifier value. The default YUV packets V value is XXXXXXXXXX. + """ + return self._v + + @property + def y(self) -> SearchSearchItemTriggerABusDphyYuvY: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y`` command. + + Description: + - This command specifies the Y data string used for DPHY triggering if the trigger + condition is on YUV packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y?`` 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:BUS:DPHY:YUV:Y value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y? + ``` + + Info: + - ```` is the identifier value. The default YUV packets Y value is XXXXXXXXXX. + """ + return self._y + + +class SearchSearchItemTriggerABusDphyYcbcrY(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y`` command. + + Description: + - This command specifies the Y data string used for DPHY triggering if the trigger condition + is on YCbCr packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y?`` 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:BUS:DPHY:YCBCR:Y value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets Y value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyYcbcrCr(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR`` command. + + Description: + - This command specifies the Cr data string used for DPHY triggering if the trigger + condition is on YCbCr packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR?`` 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:BUS:DPHY:YCBCR:CR value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets CR value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyYcbcrCb(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB`` command. + + Description: + - This command specifies the Cb data string used for DPHY triggering if the trigger + condition is on YCbCr packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB?`` 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:BUS:DPHY:YCBCR:CB value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets CB value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyYcbcr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.cb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB`` command. + - ``.cr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR`` command. + - ``.y``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cb = SearchSearchItemTriggerABusDphyYcbcrCb(device, f"{self._cmd_syntax}:CB") + self._cr = SearchSearchItemTriggerABusDphyYcbcrCr(device, f"{self._cmd_syntax}:CR") + self._y = SearchSearchItemTriggerABusDphyYcbcrY(device, f"{self._cmd_syntax}:Y") + + @property + def cb(self) -> SearchSearchItemTriggerABusDphyYcbcrCb: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB`` command. + + Description: + - This command specifies the Cb data string used for DPHY triggering if the trigger + condition is on YCbCr packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB?`` 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:BUS:DPHY:YCBCR:CB value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets CB value is + XXXXXXXXXX. + """ + return self._cb + + @property + def cr(self) -> SearchSearchItemTriggerABusDphyYcbcrCr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR`` command. + + Description: + - This command specifies the Cr data string used for DPHY triggering if the trigger + condition is on YCbCr packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR?`` 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:BUS:DPHY:YCBCR:CR value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets CR value is + XXXXXXXXXX. + """ + return self._cr + + @property + def y(self) -> SearchSearchItemTriggerABusDphyYcbcrY: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y`` command. + + Description: + - This command specifies the Y data string used for DPHY triggering if the trigger + condition is on YCbCr packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y?`` 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:BUS:DPHY:YCBCR:Y value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets Y value is + XXXXXXXXXX. + """ + return self._y + + +class SearchSearchItemTriggerABusDphyWordcountValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue`` command. + + Description: + - This command specifies the word count data string used for DPHY triggering if the trigger + condition is set on any pixel packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue?`` 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:BUS:DPHY:WORDCOUNt:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue? + ``` + + Info: + - ```` is the identifier value. The default word count value is XXXXXXXXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyWordcount(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusDphyWordcountValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusDphyWordcountValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue`` command. + + Description: + - This command specifies the word count data string used for DPHY triggering if the + trigger condition is set on any pixel packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue?`` 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:BUS:DPHY:WORDCOUNt:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue? + ``` + + Info: + - ```` is the identifier value. The default word count value is + XXXXXXXXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusDphyRedValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue`` command. + + Description: + - This command specifies the red data string used for DPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue?`` 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:BUS:DPHY:RED:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue? + ``` + + Info: + - ```` is the identifier value. The default red value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyRed(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusDphyRedValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusDphyRedValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue`` command. + + Description: + - This command specifies the red data string used for DPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue?`` 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:BUS:DPHY:RED:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue? + ``` + + Info: + - ```` is the identifier value. The default red value is XXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusDphyPixelSearchoption(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion`` command. + + Description: + - This command sets or queries the search pattern type for DPHY bus. The default search + pattern type value is PIXELVALue. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion?`` 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:BUS:DPHY:PIXel:SEARCHOPTion value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion {PIXELVALue|PIXELNUMBer} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion? + ``` + + Info: + - ``PIXELVALue`` specifies PIXELVALue as the field within a DPHY frame to search on. + - ``PIXELNUMBer`` specifies PIXELNUMBer as the field within a DPHY frame to search on. + """ + + +class SearchSearchItemTriggerABusDphyPixelNumber(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer`` command. + + Description: + - This command specifies the pixel number to be used for DPHY triggering if the trigger + condition is on pixel number pattern. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer?`` 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:BUS:DPHY:PIXel:NUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer? + ``` + + Info: + - ```` specifies the pixel number. The default pixel number value is 0. + """ + + +class SearchSearchItemTriggerABusDphyPixel(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.number``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer`` command. + - ``.searchoption``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._number = SearchSearchItemTriggerABusDphyPixelNumber( + device, f"{self._cmd_syntax}:NUMBer" + ) + self._searchoption = SearchSearchItemTriggerABusDphyPixelSearchoption( + device, f"{self._cmd_syntax}:SEARCHOPTion" + ) + + @property + def number(self) -> SearchSearchItemTriggerABusDphyPixelNumber: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer`` command. + + Description: + - This command specifies the pixel number to be used for DPHY triggering if the trigger + condition is on pixel number pattern. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer?`` 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:BUS:DPHY:PIXel:NUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer? + ``` + + Info: + - ```` specifies the pixel number. The default pixel number value is 0. + """ + return self._number + + @property + def searchoption(self) -> SearchSearchItemTriggerABusDphyPixelSearchoption: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion`` command. + + Description: + - This command sets or queries the search pattern type for DPHY bus. The default search + pattern type value is PIXELVALue. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion?`` 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:BUS:DPHY:PIXel:SEARCHOPTion value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion {PIXELVALue|PIXELNUMBer} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion? + ``` + + Info: + - ``PIXELVALue`` specifies PIXELVALue as the field within a DPHY frame to search on. + - ``PIXELNUMBer`` specifies PIXELNUMBer as the field within a DPHY frame to search on. + """ + return self._searchoption + + +class SearchSearchItemTriggerABusDphyPacketsType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe`` command. + + Description: + - This command sets or queries the packet type for DPHY bus. The default packet type + condition is SHORt. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe?`` 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:BUS:DPHY:PACKets:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe {SHORt|LONG} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe? + ``` + + Info: + - ``SHORt`` specifies SHORt as the field within a DPHY frame to search on. SHORt is the + default packet type condition. + - ``LONG`` specifies LONG as the field within a DPHY frame to search on. + """ + + +class SearchSearchItemTriggerABusDphyPacketsList(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST`` command. + + Description: + - This command sets or queries the packet list for DPHY bus. The default packet list + condition is VSYNCSTART. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST?`` 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:BUS:DPHY:PACKets:LIST value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST {VSYNCSTART|VSYNCEND|HSYNCSTART|HSYNCEND|EOTP|COLOROFF|COLORON|SHUTDOWN|TURNON|GSW|GR|COMPRESSION|SCRAMBLING|EXECUTEQUEue|DCSSW|DCSR|GLONGWRITE|DSINULL|DSIBLANk|MAXRETSIZE|DCSGLONGWRITE|PICPARameter|COMPRESSEDPSTReam|PPS101010|PPS121212|PPS565|PPS666|LPS666|PPS888|YCBCR24|LPYCBCR24|YCBCR16|YCBCR12|ACKNowledge|ERRORREPort|GSRR|GLONGREAD|DCSLONGREAD|DCSSRR|FRAMESTARt|FRAMEEND|LINESTARt|LINEEND|GSP|CSINULL|CSIBLANk|EMBEDDED|USEREIGHTB|RGB565|RGB555|RGB444|RGB666|RAW6|RAW7|RAW8|RAW10|RAW12|RAW14|RAW16|RAW20|RGB888|YUV420L8|YUV8BIT|YUV422B10|YUV420B10} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST? + ``` + + Info: + - ``VSYNCSTART`` specifies VSYNCSTART as the packet within DPHY frame to search on. + - ``VSYNCEND`` specifies VSYNCEND as the packet within DPHY frame to search on. + - ``HSYNCSTART`` specifies HSYNCSTART as the packet within DPHY frame to search on. + - ``HSYNCEND`` specifies HSYNCEND as the packet within DPHY frame to search on. + - ``EOTP`` specifies EOTP as the packet within DPHY frame to search on. + - ``COLOROFF`` specifies COLOROFF as the packet within DPHY frame to search on. + - ``COLORON`` specifies COLORON as the packet within DPHY frame to search on. + - ``SHUTDOWN`` specifies SHUTDOWN as the packet within DPHY frame to search on. + - ``TURNON`` specifies TURNON as the packet within DPHY frame to search on. + - ``GSW`` specifies GSW as the packet within DPHY frame to search on. + - ``GR`` specifies GR as the packet within DPHY frame to search on. + - ``COMPRESSION`` specifies COMPRESSION as the packet within DPHY frame to search on. + - ``SCRAMBLING`` specifies SCRAMBLING as the packet within DPHY frame to search on. + - ``EXECUTEQUEue`` specifies EXECUTEQUEue as the packet within DPHY frame to search on. + - ``DCSSW`` specifies DCSSW as the packet within DPHY frame to search on. + - ``DCSR`` specifies DCSR as the packet within DPHY frame to search on. + - ``GLONGWRITE`` specifies GLONGWRITE as the packet within DPHY frame to search on. + - ``DSINULL`` specifies DSINULL as the packet within DPHY frame to search on. + - ``DSIBLANk`` specifies DSIBLANk as the packet within DPHY frame to search on. + - ``MAXRETSIZE`` specifies MAXRETSIZE as the packet within DPHY frame to search on. + - ``DCSGLONGWRITE`` specifies DCSGLONGWRITE as the packet within DPHY frame to search on. + - ``PICPARameter`` specifies PICPARameter as the packet within DPHY frame to search on. + - ``COMPRESSEDPSTReam`` specifies COMPRESSEDPSTReam as the packet within DPHY frame to + search on. + - ``PPS101010`` specifies PPS101010 as the packet within DPHY frame to search on. + - ``PPS121212`` specifies PPS121212 as the packet within DPHY frame to search on. + - ``PPS565`` specifies PPS565 as the packet within DPHY frame to search on. + - ``PPS666`` specifies PPS666 as the packet within DPHY frame to search on. + - ``LPS666`` specifies LPS666 as the packet within DPHY frame to search on. + - ``PPS888`` specifies LPS666 as the packet within DPHY frame to search on. + - ``YCBCR24`` specifies YCBCR24 as the packet within DPHY frame to search on. + - ``LPYCBCR24`` specifies LPYCBCR24 as the packet within DPHY frame to search on. + - ``YCBCR16`` specifies YCBCR16 as the packet within DPHY frame to search on. + - ``YCBCR12`` specifies YCBCR12 as the packet within DPHY frame to search on. + - ``ACKNowledge`` specifies ACKNowledge as the packet within DPHY frame to search on. + - ``ERRORREPort`` specifies ERRORREPort as the packet within DPHY frame to search on. + - ``GSRR`` specifies GSRR as the packet within DPHY frame to search on. + - ``GLONGREAD`` specifies GLONGREAD as the packet within DPHY frame to search on. + - ``DCSLONGREAD`` specifies DCSLONGREAD as the packet within DPHY frame to search on. + - ``DCSSRR`` specifies DCSSRR as the packet within DPHY frame to search on. + - ``FRAMESTARt`` specifies FRAMESTARt as the packet within DPHY frame to search on. + - ``FRAMEEND`` specifies FRAMEEND as the packet within DPHY frame to search on. + - ``LINESTARt`` specifies LINESTARt as the packet within DPHY frame to search on. + - ``LINEEND`` specifies LINEEND as the packet within DPHY frame to search on. + - ``GSP`` specifies GSP as the packet within DPHY frame to search on. + - ``CSINULL`` specifies CSINULL as the packet within DPHY frame to search on. + - ``CSIBLANk`` specifies CSIBLANk as the packet within DPHY frame to search on. + - ``EMBEDDED`` specifies EMBEDDED as the packet within DPHY frame to search on. + - ``USEREIGHTB`` specifies USEREIGHTB as the packet within DPHY frame to search on. + - ``RGB565`` specifies RGB565 as the packet within DPHY frame to search on. + - ``RGB555`` specifies RGB555 as the packet within DPHY frame to search on. + - ``RGB444`` specifies RGB444 as the packet within DPHY frame to search on. + - ``RGB666`` specifies RGB666 as the packet within DPHY frame to search on. + - ``RAW6`` specifies RAW6 as the packet within DPHY frame to search on. + - ``RAW7`` specifies RAW7 as the packet within DPHY frame to search on. + - ``RAW8`` specifies RAW8 as the packet within DPHY frame to search on. + - ``RAW10`` specifies RAW10 as the packet within DPHY frame to search on. + - ``RAW12`` specifies RAW12 as the packet within DPHY frame to search on. + - ``RAW14`` specifies RAW14 as the packet within DPHY frame to search on. + - ``RAW16`` specifies RAW16 as the packet within DPHY frame to search on. + - ``RAW20`` specifies RAW20 as the packet within DPHY frame to search on. + - ``RGB888`` specifies RGB888 as the packet within DPHY frame to search on. + - ``YUV420L8`` specifies YUV420L8 as the packet within DPHY frame to search on. + - ``YUV8BIT`` specifies YUV8BIT as the packet within DPHY frame to search on. + - ``YUV422B10`` specifies YUV422B10 as the packet within DPHY frame to search on. + - ``YUV420B10`` specifies YUV420B10 as the packet within DPHY frame to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusDphyPackets(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.list``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._list = SearchSearchItemTriggerABusDphyPacketsList(device, f"{self._cmd_syntax}:LIST") + self._type = SearchSearchItemTriggerABusDphyPacketsType(device, f"{self._cmd_syntax}:TYPe") + + @property + def list(self) -> SearchSearchItemTriggerABusDphyPacketsList: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST`` command. + + Description: + - This command sets or queries the packet list for DPHY bus. The default packet list + condition is VSYNCSTART. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST?`` 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:BUS:DPHY:PACKets:LIST value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST {VSYNCSTART|VSYNCEND|HSYNCSTART|HSYNCEND|EOTP|COLOROFF|COLORON|SHUTDOWN|TURNON|GSW|GR|COMPRESSION|SCRAMBLING|EXECUTEQUEue|DCSSW|DCSR|GLONGWRITE|DSINULL|DSIBLANk|MAXRETSIZE|DCSGLONGWRITE|PICPARameter|COMPRESSEDPSTReam|PPS101010|PPS121212|PPS565|PPS666|LPS666|PPS888|YCBCR24|LPYCBCR24|YCBCR16|YCBCR12|ACKNowledge|ERRORREPort|GSRR|GLONGREAD|DCSLONGREAD|DCSSRR|FRAMESTARt|FRAMEEND|LINESTARt|LINEEND|GSP|CSINULL|CSIBLANk|EMBEDDED|USEREIGHTB|RGB565|RGB555|RGB444|RGB666|RAW6|RAW7|RAW8|RAW10|RAW12|RAW14|RAW16|RAW20|RGB888|YUV420L8|YUV8BIT|YUV422B10|YUV420B10} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST? + ``` + + Info: + - ``VSYNCSTART`` specifies VSYNCSTART as the packet within DPHY frame to search on. + - ``VSYNCEND`` specifies VSYNCEND as the packet within DPHY frame to search on. + - ``HSYNCSTART`` specifies HSYNCSTART as the packet within DPHY frame to search on. + - ``HSYNCEND`` specifies HSYNCEND as the packet within DPHY frame to search on. + - ``EOTP`` specifies EOTP as the packet within DPHY frame to search on. + - ``COLOROFF`` specifies COLOROFF as the packet within DPHY frame to search on. + - ``COLORON`` specifies COLORON as the packet within DPHY frame to search on. + - ``SHUTDOWN`` specifies SHUTDOWN as the packet within DPHY frame to search on. + - ``TURNON`` specifies TURNON as the packet within DPHY frame to search on. + - ``GSW`` specifies GSW as the packet within DPHY frame to search on. + - ``GR`` specifies GR as the packet within DPHY frame to search on. + - ``COMPRESSION`` specifies COMPRESSION as the packet within DPHY frame to search on. + - ``SCRAMBLING`` specifies SCRAMBLING as the packet within DPHY frame to search on. + - ``EXECUTEQUEue`` specifies EXECUTEQUEue as the packet within DPHY frame to search on. + - ``DCSSW`` specifies DCSSW as the packet within DPHY frame to search on. + - ``DCSR`` specifies DCSR as the packet within DPHY frame to search on. + - ``GLONGWRITE`` specifies GLONGWRITE as the packet within DPHY frame to search on. + - ``DSINULL`` specifies DSINULL as the packet within DPHY frame to search on. + - ``DSIBLANk`` specifies DSIBLANk as the packet within DPHY frame to search on. + - ``MAXRETSIZE`` specifies MAXRETSIZE as the packet within DPHY frame to search on. + - ``DCSGLONGWRITE`` specifies DCSGLONGWRITE as the packet within DPHY frame to search + on. + - ``PICPARameter`` specifies PICPARameter as the packet within DPHY frame to search on. + - ``COMPRESSEDPSTReam`` specifies COMPRESSEDPSTReam as the packet within DPHY frame to + search on. + - ``PPS101010`` specifies PPS101010 as the packet within DPHY frame to search on. + - ``PPS121212`` specifies PPS121212 as the packet within DPHY frame to search on. + - ``PPS565`` specifies PPS565 as the packet within DPHY frame to search on. + - ``PPS666`` specifies PPS666 as the packet within DPHY frame to search on. + - ``LPS666`` specifies LPS666 as the packet within DPHY frame to search on. + - ``PPS888`` specifies LPS666 as the packet within DPHY frame to search on. + - ``YCBCR24`` specifies YCBCR24 as the packet within DPHY frame to search on. + - ``LPYCBCR24`` specifies LPYCBCR24 as the packet within DPHY frame to search on. + - ``YCBCR16`` specifies YCBCR16 as the packet within DPHY frame to search on. + - ``YCBCR12`` specifies YCBCR12 as the packet within DPHY frame to search on. + - ``ACKNowledge`` specifies ACKNowledge as the packet within DPHY frame to search on. + - ``ERRORREPort`` specifies ERRORREPort as the packet within DPHY frame to search on. + - ``GSRR`` specifies GSRR as the packet within DPHY frame to search on. + - ``GLONGREAD`` specifies GLONGREAD as the packet within DPHY frame to search on. + - ``DCSLONGREAD`` specifies DCSLONGREAD as the packet within DPHY frame to search on. + - ``DCSSRR`` specifies DCSSRR as the packet within DPHY frame to search on. + - ``FRAMESTARt`` specifies FRAMESTARt as the packet within DPHY frame to search on. + - ``FRAMEEND`` specifies FRAMEEND as the packet within DPHY frame to search on. + - ``LINESTARt`` specifies LINESTARt as the packet within DPHY frame to search on. + - ``LINEEND`` specifies LINEEND as the packet within DPHY frame to search on. + - ``GSP`` specifies GSP as the packet within DPHY frame to search on. + - ``CSINULL`` specifies CSINULL as the packet within DPHY frame to search on. + - ``CSIBLANk`` specifies CSIBLANk as the packet within DPHY frame to search on. + - ``EMBEDDED`` specifies EMBEDDED as the packet within DPHY frame to search on. + - ``USEREIGHTB`` specifies USEREIGHTB as the packet within DPHY frame to search on. + - ``RGB565`` specifies RGB565 as the packet within DPHY frame to search on. + - ``RGB555`` specifies RGB555 as the packet within DPHY frame to search on. + - ``RGB444`` specifies RGB444 as the packet within DPHY frame to search on. + - ``RGB666`` specifies RGB666 as the packet within DPHY frame to search on. + - ``RAW6`` specifies RAW6 as the packet within DPHY frame to search on. + - ``RAW7`` specifies RAW7 as the packet within DPHY frame to search on. + - ``RAW8`` specifies RAW8 as the packet within DPHY frame to search on. + - ``RAW10`` specifies RAW10 as the packet within DPHY frame to search on. + - ``RAW12`` specifies RAW12 as the packet within DPHY frame to search on. + - ``RAW14`` specifies RAW14 as the packet within DPHY frame to search on. + - ``RAW16`` specifies RAW16 as the packet within DPHY frame to search on. + - ``RAW20`` specifies RAW20 as the packet within DPHY frame to search on. + - ``RGB888`` specifies RGB888 as the packet within DPHY frame to search on. + - ``YUV420L8`` specifies YUV420L8 as the packet within DPHY frame to search on. + - ``YUV8BIT`` specifies YUV8BIT as the packet within DPHY frame to search on. + - ``YUV422B10`` specifies YUV422B10 as the packet within DPHY frame to search on. + - ``YUV420B10`` specifies YUV420B10 as the packet within DPHY frame to search on. + """ # noqa: E501 + return self._list + + @property + def type(self) -> SearchSearchItemTriggerABusDphyPacketsType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe`` command. + + Description: + - This command sets or queries the packet type for DPHY bus. The default packet type + condition is SHORt. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe?`` 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:BUS:DPHY:PACKets:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe {SHORt|LONG} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe? + ``` + + Info: + - ``SHORt`` specifies SHORt as the field within a DPHY frame to search on. SHORt is the + default packet type condition. + - ``LONG`` specifies LONG as the field within a DPHY frame to search on. + """ + return self._type + + +class SearchSearchItemTriggerABusDphyModeType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe`` command. + + Description: + - This command sets or queries the mode type for DPHY bus. The default mode type condition + is HS. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe?`` 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:BUS:DPHY:MODe:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe {HS|LP} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe? + ``` + + Info: + - ``HS`` specifies HS as the mode within a DPHY frame to search on. HS is default mode type + condition. + - ``LP`` specifies LP as the mode within a DPHY frame to search on. + """ + + +class SearchSearchItemTriggerABusDphyMode(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusDphyModeType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusDphyModeType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe`` command. + + Description: + - This command sets or queries the mode type for DPHY bus. The default mode type + condition is HS. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe?`` 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:BUS:DPHY:MODe:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe {HS|LP} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe? + ``` + + Info: + - ``HS`` specifies HS as the mode within a DPHY frame to search on. HS is default mode + type condition. + - ``LP`` specifies LP as the mode within a DPHY frame to search on. + """ + return self._type + + +class SearchSearchItemTriggerABusDphyGreenValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue`` command. + + Description: + - This command specifies the green data string used for DPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue?`` 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:BUS:DPHY:GREen:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue? + ``` + + Info: + - ```` is the identifier value. The default green value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyGreen(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusDphyGreenValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusDphyGreenValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue`` command. + + Description: + - This command specifies the green data string used for DPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue?`` 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:BUS:DPHY:GREen:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue? + ``` + + Info: + - ```` is the identifier value. The default green value is XXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusDphyEscapemodeCommand(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand`` command. + + Description: + - This command sets or queries the escape mode command type for DPHY bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand?`` 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:BUS:DPHY:ESCAPEMODe:COMMand value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand {LPDT|ULPS|RESETTRIGger|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand? + ``` + + Info: + - ``LPDT`` specifies LPDT as the field within a DPHY frame to search on. + - ``ULPS`` specifies ULPS as the field within a DPHY frame to search on. + - ``RESETTRIGger`` specifies RESETTRIGger as the field within a DPHY frame to search on. + - ``ANY`` specifies ANY as the field within a DPHY frame to search on. ANY is the default + value. + """ + + +class SearchSearchItemTriggerABusDphyEscapemode(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._command = SearchSearchItemTriggerABusDphyEscapemodeCommand( + device, f"{self._cmd_syntax}:COMMand" + ) + + @property + def command(self) -> SearchSearchItemTriggerABusDphyEscapemodeCommand: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand`` command. + + Description: + - This command sets or queries the escape mode command type for DPHY bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand?`` 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:BUS:DPHY:ESCAPEMODe:COMMand value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand {LPDT|ULPS|RESETTRIGger|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand? + ``` + + Info: + - ``LPDT`` specifies LPDT as the field within a DPHY frame to search on. + - ``ULPS`` specifies ULPS as the field within a DPHY frame to search on. + - ``RESETTRIGger`` specifies RESETTRIGger as the field within a DPHY frame to search on. + - ``ANY`` specifies ANY as the field within a DPHY frame to search on. ANY is the + default value. + """ + return self._command + + +class SearchSearchItemTriggerABusDphyErrorType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error type for DPHY bus. The default error type condition + is ANY. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe?`` 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:BUS:DPHY:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe {ANY|ECC|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe? + ``` + + Info: + - ``ANY`` specifies ANY as the field within a DPHY frame to search on. + - ``ECC`` specifies ECC as the field within a DPHY frame to search on. + - ``CRC`` specifies CRC as the field within a DPHY frame to search on. + """ + + +class SearchSearchItemTriggerABusDphyError(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusDphyErrorType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusDphyErrorType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error type for DPHY bus. The default error type + condition is ANY. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe?`` 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:BUS:DPHY:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe {ANY|ECC|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe? + ``` + + Info: + - ``ANY`` specifies ANY as the field within a DPHY frame to search on. + - ``ECC`` specifies ECC as the field within a DPHY frame to search on. + - ``CRC`` specifies CRC as the field within a DPHY frame to search on. + """ + return self._type + + +class SearchSearchItemTriggerABusDphyDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for DPHY triggering if the trigger + condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue?`` 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:BUS:DPHY:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for an DPHY + trigger if the trigger condition is DATA. The default data size is 1 byte and ranges + between 1 and 5. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe?`` 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:BUS:DPHY:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. + """ + + +class SearchSearchItemTriggerABusDphyData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusDphyDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusDphyDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusDphyDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for an DPHY + trigger if the trigger condition is DATA. The default data size is 1 byte and ranges + between 1 and 5. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe?`` 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:BUS:DPHY:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusDphyDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for DPHY triggering if the trigger + condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue?`` 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:BUS:DPHY:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusDphyCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for an DPHY bus. The default trigger on + condition is SOT. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition?`` 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:BUS:DPHY:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition {SOT|EOT|DATa|EOTPDATa|OPTIONALPARam|SCRambling|COMPression|PACKets|BUSTURNAROUnd|ESCAPEMODe|STop|ERRors|MODe} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition? + ``` + + Info: + - ``SOT`` specifies SOT as the field within a DPHY frame to search on. + - ``EOT`` specifies EOT as the field within a DPHY frame to search on. + - ``DATa`` specifies DATa as the field within a DPHY frame to search on. + - ``EOTPDATa`` specifies EOTPDATa as the field within a DPHY frame to search on. + - ``OPTIONALPARam`` specifies OPTIONALPARam as the field within a DPHY frame to search on. + - ``SCRambling`` specifies SCRambling as the field within a DPHY frame to search on. + - ``COMPression`` specifies COMPression as the field within a DPHY frame to search on. + - ``PACKets`` specifies PACKets as the field within a DPHY frame to search on. + - ``BUSTURNAROUnd`` specifies BUSTURNAROUnd as the field within a DPHY frame to search on. + - ``ESCAPEMODe`` specifies ESCAPEMODe as the field within a DPHY frame to search on. + - ``STop`` specifies STop as the field within a DPHY frame to search on. + - ``ERRors`` specifies ERRors as the field within a DPHY frame to search on. + - ``MODe`` specifies MODe as the field within a DPHY frame to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusDphyBlueValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue`` command. + + Description: + - This command specifies the blue data string used for DPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue?`` 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:BUS:DPHY:BLUe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue? + ``` + + Info: + - ```` is the identifier value. The default blue value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusDphyBlue(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusDphyBlueValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusDphyBlueValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue`` command. + + Description: + - This command specifies the blue data string used for DPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue?`` 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:BUS:DPHY:BLUe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue? + ``` + + Info: + - ```` is the identifier value. The default blue value is XXXXXXXXXX. + """ + return self._value + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusDphy(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.blue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor`` command tree. + - ``.escapemode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe`` command tree. + - ``.green``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen`` command tree. + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe`` command tree. + - ``.packets``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets`` command tree. + - ``.pixel``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel`` command tree. + - ``.red``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED`` command tree. + - ``.wordcount``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt`` command tree. + - ``.ycbcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR`` command tree. + - ``.yuv``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._blue = SearchSearchItemTriggerABusDphyBlue(device, f"{self._cmd_syntax}:BLUe") + self._condition = SearchSearchItemTriggerABusDphyCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusDphyData(device, f"{self._cmd_syntax}:DATa") + self._error = SearchSearchItemTriggerABusDphyError(device, f"{self._cmd_syntax}:ERRor") + self._escapemode = SearchSearchItemTriggerABusDphyEscapemode( + device, f"{self._cmd_syntax}:ESCAPEMODe" + ) + self._green = SearchSearchItemTriggerABusDphyGreen(device, f"{self._cmd_syntax}:GREen") + self._mode = SearchSearchItemTriggerABusDphyMode(device, f"{self._cmd_syntax}:MODe") + self._packets = SearchSearchItemTriggerABusDphyPackets( + device, f"{self._cmd_syntax}:PACKets" + ) + self._pixel = SearchSearchItemTriggerABusDphyPixel(device, f"{self._cmd_syntax}:PIXel") + self._red = SearchSearchItemTriggerABusDphyRed(device, f"{self._cmd_syntax}:RED") + self._wordcount = SearchSearchItemTriggerABusDphyWordcount( + device, f"{self._cmd_syntax}:WORDCOUNt" + ) + self._ycbcr = SearchSearchItemTriggerABusDphyYcbcr(device, f"{self._cmd_syntax}:YCBCR") + self._yuv = SearchSearchItemTriggerABusDphyYuv(device, f"{self._cmd_syntax}:YUV") + + @property + def blue(self) -> SearchSearchItemTriggerABusDphyBlue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe:VALue`` command. + """ + return self._blue + + @property + def condition(self) -> SearchSearchItemTriggerABusDphyCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for an DPHY bus. The default + trigger on condition is SOT. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition?`` 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:BUS:DPHY:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition {SOT|EOT|DATa|EOTPDATa|OPTIONALPARam|SCRambling|COMPression|PACKets|BUSTURNAROUnd|ESCAPEMODe|STop|ERRors|MODe} + - SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition? + ``` + + Info: + - ``SOT`` specifies SOT as the field within a DPHY frame to search on. + - ``EOT`` specifies EOT as the field within a DPHY frame to search on. + - ``DATa`` specifies DATa as the field within a DPHY frame to search on. + - ``EOTPDATa`` specifies EOTPDATa as the field within a DPHY frame to search on. + - ``OPTIONALPARam`` specifies OPTIONALPARam as the field within a DPHY frame to search + on. + - ``SCRambling`` specifies SCRambling as the field within a DPHY frame to search on. + - ``COMPression`` specifies COMPression as the field within a DPHY frame to search on. + - ``PACKets`` specifies PACKets as the field within a DPHY frame to search on. + - ``BUSTURNAROUnd`` specifies BUSTURNAROUnd as the field within a DPHY frame to search + on. + - ``ESCAPEMODe`` specifies ESCAPEMODe as the field within a DPHY frame to search on. + - ``STop`` specifies STop as the field within a DPHY frame to search on. + - ``ERRors`` specifies ERRors as the field within a DPHY frame to search on. + - ``MODe`` specifies MODe as the field within a DPHY frame to search on. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusDphyData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa:VALue`` command. + """ + return self._data + + @property + def error(self) -> SearchSearchItemTriggerABusDphyError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor:TYPe`` command. + """ + return self._error + + @property + def escapemode(self) -> SearchSearchItemTriggerABusDphyEscapemode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe:COMMand`` command. + """ + return self._escapemode + + @property + def green(self) -> SearchSearchItemTriggerABusDphyGreen: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen:VALue`` command. + """ + return self._green + + @property + def mode(self) -> SearchSearchItemTriggerABusDphyMode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe:TYPe`` command. + """ + return self._mode + + @property + def packets(self) -> SearchSearchItemTriggerABusDphyPackets: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.list``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:LIST`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets:TYPe`` command. + """ + return self._packets + + @property + def pixel(self) -> SearchSearchItemTriggerABusDphyPixel: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.number``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:NUMBer`` command. + - ``.searchoption``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel:SEARCHOPTion`` + command. + """ + return self._pixel + + @property + def red(self) -> SearchSearchItemTriggerABusDphyRed: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED:VALue`` command. + """ + return self._red + + @property + def wordcount(self) -> SearchSearchItemTriggerABusDphyWordcount: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt:VALue`` command. + """ + return self._wordcount + + @property + def ycbcr(self) -> SearchSearchItemTriggerABusDphyYcbcr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.cb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CB`` command. + - ``.cr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:CR`` command. + - ``.y``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR:Y`` command. + """ + return self._ycbcr + + @property + def yuv(self) -> SearchSearchItemTriggerABusDphyYuv: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.u``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:U`` command. + - ``.v``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:V`` command. + - ``.y``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV:Y`` command. + """ + return self._yuv + + +class SearchSearchItemTriggerABusCxpiNetmnWakeupind(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND`` command. + + Description: + - This command sets or queries the Wakeup Status in CXPI bus. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND?`` 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:BUS:CXPI:NETMN:WAKEUPIND value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND {ON|OFF|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND? + ``` + + Info: + - ``ON`` specifies the Wakeup Status as on. The default status is on. + - ``OFF`` specifies the Wakeup Status as off. + - ``EITHer`` specifies the Wakeup Status as either. + """ + + +class SearchSearchItemTriggerABusCxpiNetmnSleepind(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND`` command. + + Description: + - This command sets or queries the Sleep Status in CXPI bus. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND?`` 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:BUS:CXPI:NETMN:SLEEPIND value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND {ON|OFF|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND? + ``` + + Info: + - ``ON`` specifies the Sleep Status as on. The default status is on. + - ``OFF`` specifies the Sleep Status as off. + - ``EITHer`` specifies the Sleep Status as either. + """ + + +class SearchSearchItemTriggerABusCxpiNetmn(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.sleepind``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND`` command. + - ``.wakeupind``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._sleepind = SearchSearchItemTriggerABusCxpiNetmnSleepind( + device, f"{self._cmd_syntax}:SLEEPIND" + ) + self._wakeupind = SearchSearchItemTriggerABusCxpiNetmnWakeupind( + device, f"{self._cmd_syntax}:WAKEUPIND" + ) + + @property + def sleepind(self) -> SearchSearchItemTriggerABusCxpiNetmnSleepind: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND`` command. + + Description: + - This command sets or queries the Sleep Status in CXPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND?`` 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:BUS:CXPI:NETMN:SLEEPIND value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND {ON|OFF|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND? + ``` + + Info: + - ``ON`` specifies the Sleep Status as on. The default status is on. + - ``OFF`` specifies the Sleep Status as off. + - ``EITHer`` specifies the Sleep Status as either. + """ + return self._sleepind + + @property + def wakeupind(self) -> SearchSearchItemTriggerABusCxpiNetmnWakeupind: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND`` command. + + Description: + - This command sets or queries the Wakeup Status in CXPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND?`` 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:BUS:CXPI:NETMN:WAKEUPIND value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND {ON|OFF|EITHer} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND? + ``` + + Info: + - ``ON`` specifies the Wakeup Status as on. The default status is on. + - ``OFF`` specifies the Wakeup Status as off. + - ``EITHer`` specifies the Wakeup Status as either. + """ + return self._wakeupind + + +class SearchSearchItemTriggerABusCxpiFrameType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe`` command. + + Description: + - This command sets or queries the frame type in CXPI bus. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe?`` 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:BUS:CXPI:FRAMe:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe {NORMal|SLEep|LONG|POLLINGNORMal|POLLINGLONG} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe? + ``` + + Info: + - ``NORMal`` specifies NORMal as the packet type CXPI frame to search on. The default frame + type is normal. + - ``SLEep`` specifies SLEep as the packet type CXPI frame to search on. + - ``LONG`` specifies LONG as the packet type CXPI frame to search on. + - ``POLLINGNORMal`` specifies POLLINGNORMal as the packet type CXPI frame to search on. + - ``POLLINGLONG`` specifies POLLINGLONG as the packet type CXPI frame to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusCxpiFrame(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusCxpiFrameType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusCxpiFrameType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe`` command. + + Description: + - This command sets or queries the frame type in CXPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe?`` 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:BUS:CXPI:FRAMe:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe {NORMal|SLEep|LONG|POLLINGNORMal|POLLINGLONG} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe? + ``` + + Info: + - ``NORMal`` specifies NORMal as the packet type CXPI frame to search on. The default + frame type is normal. + - ``SLEep`` specifies SLEep as the packet type CXPI frame to search on. + - ``LONG`` specifies LONG as the packet type CXPI frame to search on. + - ``POLLINGNORMal`` specifies POLLINGNORMal as the packet type CXPI frame to search on. + - ``POLLINGLONG`` specifies POLLINGLONG as the packet type CXPI frame to search on. + """ # noqa: E501 + return self._type + + +class SearchSearchItemTriggerABusCxpiFrameidValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue`` command. + + Description: + - This command specifies the binary frameId string used for CXPI triggering if the trigger + condition is FRAMEID. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue?`` 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:BUS:CXPI:FRAMEID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue? + ``` + + Info: + - ```` is the identifier value. The default size and value of frame ID is 7 bits + and 'XXX XXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCxpiFrameid(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusCxpiFrameidValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusCxpiFrameidValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue`` command. + + Description: + - This command specifies the binary frameId string used for CXPI triggering if the + trigger condition is FRAMEID. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue?`` 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:BUS:CXPI:FRAMEID:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue? + ``` + + Info: + - ```` is the identifier value. The default size and value of frame ID is 7 + bits and 'XXX XXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusCxpiExtdlcValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue`` command. + + Description: + - This command specifies the binary DLC string used for CXPI triggering if the trigger + condition is Ext DLC. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue?`` 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:BUS:CXPI:EXTDLC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue? + ``` + + Info: + - ```` is the identifier value. The default size and value of Ext DLC is 8 bits and + 'XXXX XXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCxpiExtdlc(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusCxpiExtdlcValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusCxpiExtdlcValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue`` command. + + Description: + - This command specifies the binary DLC string used for CXPI triggering if the trigger + condition is Ext DLC. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue?`` 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:BUS:CXPI:EXTDLC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue? + ``` + + Info: + - ```` is the identifier value. The default size and value of Ext DLC is 8 bits + and 'XXXX XXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusCxpiErrorType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe`` command. + + Description: + - This command sets or queries the Error Type in CXPI bus. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe?`` 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:BUS:CXPI:ERROR:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe {CRC|PARity|FRAMe|IBS|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe? + ``` + + Info: + - ``CRC`` specifies CRC as the field within a CXPI frame to search on. + - ``PARity`` specifies PARity as the field within a CXPI frame to search on. The default + Error Type is Parity. + - ``FRAMe`` specifies FRAMe as the field within a CXPI frame to search on. + - ``IBS`` specifies IBS as the field within a CXPI frame to search on. + - ``ANY`` specifies ANY as any type of error within a CXPI frame to search on. + """ + + +class SearchSearchItemTriggerABusCxpiError(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusCxpiErrorType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusCxpiErrorType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe`` command. + + Description: + - This command sets or queries the Error Type in CXPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe?`` 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:BUS:CXPI:ERROR:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe {CRC|PARity|FRAMe|IBS|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe? + ``` + + Info: + - ``CRC`` specifies CRC as the field within a CXPI frame to search on. + - ``PARity`` specifies PARity as the field within a CXPI frame to search on. The default + Error Type is Parity. + - ``FRAMe`` specifies FRAMe as the field within a CXPI frame to search on. + - ``IBS`` specifies IBS as the field within a CXPI frame to search on. + - ``ANY`` specifies ANY as any type of error within a CXPI frame to search on. + """ + return self._type + + +class SearchSearchItemTriggerABusCxpiDlcValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue`` command. + + Description: + - This command specifies the binary DLC string used for CXPI triggering if the trigger + condition is DLC. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue?`` 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:BUS:CXPI:DLC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue? + ``` + + Info: + - ```` is the identifier value. The default size and value of DLC is 4 bits and + 'XXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCxpiDlc(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusCxpiDlcValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusCxpiDlcValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue`` command. + + Description: + - This command specifies the binary DLC string used for CXPI triggering if the trigger + condition is DLC. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue?`` 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:BUS:CXPI:DLC:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue? + ``` + + Info: + - ```` is the identifier value. The default size and value of DLC is 4 bits and + 'XXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusCxpiDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for CXPI triggering if the trigger + condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue?`` 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:BUS:CXPI:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default size and value for DATA is 8 bits and + 'XXXX XXXX' respectively. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCxpiDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for CXPI + triggering if the trigger condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe?`` 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:BUS:CXPI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. The default data size is 1 and the calid range is 1 to + 5. + """ + + +class SearchSearchItemTriggerABusCxpiData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusCxpiDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusCxpiDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusCxpiDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for CXPI + triggering if the trigger condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe?`` 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:BUS:CXPI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. The default data size is 1 and the calid range is 1 + to 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusCxpiDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for CXPI triggering if the trigger + condition is DATA. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue?`` 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:BUS:CXPI:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default size and value for DATA is 8 bits + and 'XXXX XXXX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusCxpiCounterValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue`` command. + + Description: + - This command specifies the binary counter string used for CXPI triggering if the trigger + condition is COUNTER. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue?`` 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:BUS:CXPI:COUNter:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue? + ``` + + Info: + - ```` specifies the binary counter string. The default size and value Counter is 2 + bits and 'XX' respectively. + """ + + +class SearchSearchItemTriggerABusCxpiCounter(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusCxpiCounterValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusCxpiCounterValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue`` command. + + Description: + - This command specifies the binary counter string used for CXPI triggering if the + trigger condition is COUNTER. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue?`` 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:BUS:CXPI:COUNter:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue? + ``` + + Info: + - ```` specifies the binary counter string. The default size and value Counter + is 2 bits and 'XX' respectively. + """ + return self._value + + +class SearchSearchItemTriggerABusCxpiCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a CXPI bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition?`` 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:BUS:CXPI:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition {STARt|FRAMes|FRAMEID|PTYPe|DLC|EXTDLC|NETMN|COUNter|DATa|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition? + ``` + + Info: + - ``STARt`` specifies STARt as the event for a CXPI frame to search on. This is the default + value. + - ``FRAMes`` specifies FRAMes as the frame types for CXPI packets to search on. + - ``FRAMEID`` specifies FRAMEID as the field within a CXPI frame to search on. + - ``PTYPe`` specifies PTYPe as the field within a CXPI frame to search on. + - ``DLC`` specifies DLC as the field within a CXPI frame to search on. + - ``EXTDLC`` specifies EXTDLC as the field within a CXPI frame to search on. + - ``NETMN`` specifies NETMN as the field within a CXPI frame to search on. + - ``COUNter`` specifies COUNter as the field within a CXPI frame to search on. + - ``DATa`` specifies DATa as the field within a CXPI frame to search on. + - ``ERRors`` specifies ERRors as type of error within a CXPI frame to search on. + """ # noqa: E501 + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusCxpi(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition`` command. + - ``.counter``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter`` command tree. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa`` command tree. + - ``.dlc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR`` command tree. + - ``.extdlc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC`` command tree. + - ``.frameid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID`` command tree. + - ``.frame``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe`` command tree. + - ``.netmn``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusCxpiCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._counter = SearchSearchItemTriggerABusCxpiCounter( + device, f"{self._cmd_syntax}:COUNter" + ) + self._data = SearchSearchItemTriggerABusCxpiData(device, f"{self._cmd_syntax}:DATa") + self._dlc = SearchSearchItemTriggerABusCxpiDlc(device, f"{self._cmd_syntax}:DLC") + self._error = SearchSearchItemTriggerABusCxpiError(device, f"{self._cmd_syntax}:ERROR") + self._extdlc = SearchSearchItemTriggerABusCxpiExtdlc(device, f"{self._cmd_syntax}:EXTDLC") + self._frameid = SearchSearchItemTriggerABusCxpiFrameid( + device, f"{self._cmd_syntax}:FRAMEID" + ) + self._frame = SearchSearchItemTriggerABusCxpiFrame(device, f"{self._cmd_syntax}:FRAMe") + self._netmn = SearchSearchItemTriggerABusCxpiNetmn(device, f"{self._cmd_syntax}:NETMN") + + @property + def condition(self) -> SearchSearchItemTriggerABusCxpiCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for a CXPI bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition?`` 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:BUS:CXPI:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition {STARt|FRAMes|FRAMEID|PTYPe|DLC|EXTDLC|NETMN|COUNter|DATa|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition? + ``` + + Info: + - ``STARt`` specifies STARt as the event for a CXPI frame to search on. This is the + default value. + - ``FRAMes`` specifies FRAMes as the frame types for CXPI packets to search on. + - ``FRAMEID`` specifies FRAMEID as the field within a CXPI frame to search on. + - ``PTYPe`` specifies PTYPe as the field within a CXPI frame to search on. + - ``DLC`` specifies DLC as the field within a CXPI frame to search on. + - ``EXTDLC`` specifies EXTDLC as the field within a CXPI frame to search on. + - ``NETMN`` specifies NETMN as the field within a CXPI frame to search on. + - ``COUNter`` specifies COUNter as the field within a CXPI frame to search on. + - ``DATa`` specifies DATa as the field within a CXPI frame to search on. + - ``ERRors`` specifies ERRors as type of error within a CXPI frame to search on. + """ # noqa: E501 + return self._condition + + @property + def counter(self) -> SearchSearchItemTriggerABusCxpiCounter: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter:VALue`` command. + """ + return self._counter + + @property + def data(self) -> SearchSearchItemTriggerABusCxpiData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa:VALue`` command. + """ + return self._data + + @property + def dlc(self) -> SearchSearchItemTriggerABusCxpiDlc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC:VALue`` command. + """ + return self._dlc + + @property + def error(self) -> SearchSearchItemTriggerABusCxpiError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR:TYPe`` command. + """ + return self._error + + @property + def extdlc(self) -> SearchSearchItemTriggerABusCxpiExtdlc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC:VALue`` command. + """ + return self._extdlc + + @property + def frameid(self) -> SearchSearchItemTriggerABusCxpiFrameid: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID:VALue`` command. + """ + return self._frameid + + @property + def frame(self) -> SearchSearchItemTriggerABusCxpiFrame: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe:TYPe`` command. + """ + return self._frame + + @property + def netmn(self) -> SearchSearchItemTriggerABusCxpiNetmn: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.sleepind``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:SLEEPIND`` command. + - ``.wakeupind``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN:WAKEUPIND`` command. + """ + return self._netmn + + +class SearchSearchItemTriggerABusCphyYuvY(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y`` command. + + Description: + - This command specifies the Y data string used for CPHY triggering if the trigger condition + is on YUV packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y?`` 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:BUS:CPHY:YUV:Y value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y? + ``` + + Info: + - ```` is the identifier value. The default YUV packets Y value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyYuvV(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V`` command. + + Description: + - This command specifies the V data string used for CPHY triggering if the trigger condition + is on YUV packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V?`` 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:BUS:CPHY:YUV:V value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V? + ``` + + Info: + - ```` is the identifier value. The default YUV packets V value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyYuvU(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U`` command. + + Description: + - This command specifies the U data string used for CPHY triggering if the trigger condition + is on YUV packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U?`` 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:BUS:CPHY:YUV:U value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U? + ``` + + Info: + - ```` is the identifier value. The default YUV packets U value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyYuv(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.u``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U`` command. + - ``.v``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V`` command. + - ``.y``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._u = SearchSearchItemTriggerABusCphyYuvU(device, f"{self._cmd_syntax}:U") + self._v = SearchSearchItemTriggerABusCphyYuvV(device, f"{self._cmd_syntax}:V") + self._y = SearchSearchItemTriggerABusCphyYuvY(device, f"{self._cmd_syntax}:Y") + + @property + def u(self) -> SearchSearchItemTriggerABusCphyYuvU: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U`` command. + + Description: + - This command specifies the U data string used for CPHY triggering if the trigger + condition is on YUV packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U?`` 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:BUS:CPHY:YUV:U value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U? + ``` + + Info: + - ```` is the identifier value. The default YUV packets U value is XXXXXXXXXX. + """ + return self._u + + @property + def v(self) -> SearchSearchItemTriggerABusCphyYuvV: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V`` command. + + Description: + - This command specifies the V data string used for CPHY triggering if the trigger + condition is on YUV packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V?`` 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:BUS:CPHY:YUV:V value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V? + ``` + + Info: + - ```` is the identifier value. The default YUV packets V value is XXXXXXXXXX. + """ + return self._v + + @property + def y(self) -> SearchSearchItemTriggerABusCphyYuvY: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y`` command. + + Description: + - This command specifies the Y data string used for CPHY triggering if the trigger + condition is on YUV packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y?`` 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:BUS:CPHY:YUV:Y value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y? + ``` + + Info: + - ```` is the identifier value. The default YUV packets Y value is XXXXXXXXXX. + """ + return self._y + + +class SearchSearchItemTriggerABusCphyYcbcrY(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y`` command. + + Description: + - This command specifies the Y data string used for CPHY triggering if the trigger condition + is on YCbCr packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y?`` 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:BUS:CPHY:YCBCR:Y value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets Y value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyYcbcrCr(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR`` command. + + Description: + - This command specifies the Cr data string used for CPHY triggering if the trigger + condition is on YCbCr packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR?`` 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:BUS:CPHY:YCBCR:CR value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets CR value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyYcbcrCb(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB`` command. + + Description: + - This command specifies the Cb data string used for CPHY triggering if the trigger + condition is on YCbCr packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB?`` 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:BUS:CPHY:YCBCR:CB value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets CB value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyYcbcr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.cb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB`` command. + - ``.cr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR`` command. + - ``.y``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cb = SearchSearchItemTriggerABusCphyYcbcrCb(device, f"{self._cmd_syntax}:CB") + self._cr = SearchSearchItemTriggerABusCphyYcbcrCr(device, f"{self._cmd_syntax}:CR") + self._y = SearchSearchItemTriggerABusCphyYcbcrY(device, f"{self._cmd_syntax}:Y") + + @property + def cb(self) -> SearchSearchItemTriggerABusCphyYcbcrCb: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB`` command. + + Description: + - This command specifies the Cb data string used for CPHY triggering if the trigger + condition is on YCbCr packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB?`` 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:BUS:CPHY:YCBCR:CB value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets CB value is + XXXXXXXXXX. + """ + return self._cb + + @property + def cr(self) -> SearchSearchItemTriggerABusCphyYcbcrCr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR`` command. + + Description: + - This command specifies the Cr data string used for CPHY triggering if the trigger + condition is on YCbCr packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR?`` 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:BUS:CPHY:YCBCR:CR value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets CR value is + XXXXXXXXXX. + """ + return self._cr + + @property + def y(self) -> SearchSearchItemTriggerABusCphyYcbcrY: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y`` command. + + Description: + - This command specifies the Y data string used for CPHY triggering if the trigger + condition is on YCbCr packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y?`` 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:BUS:CPHY:YCBCR:Y value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y? + ``` + + Info: + - ```` is the identifier value. The default YCBCR packets Y value is + XXXXXXXXXX. + """ + return self._y + + +class SearchSearchItemTriggerABusCphyWordcountValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue`` command. + + Description: + - This command specifies the word count data string used for CPHY triggering if the trigger + condition is on any rgb/ycbcr/yuv packet. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue?`` 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:BUS:CPHY:WORDCOUNt:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue? + ``` + + Info: + - ```` specifies the word count data string. The default data value is + XXXXXXXXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyWordcount(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusCphyWordcountValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusCphyWordcountValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue`` command. + + Description: + - This command specifies the word count data string used for CPHY triggering if the + trigger condition is on any rgb/ycbcr/yuv packet. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue?`` 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:BUS:CPHY:WORDCOUNt:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue? + ``` + + Info: + - ```` specifies the word count data string. The default data value is + XXXXXXXXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusCphyWordValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue`` command. + + Description: + - This command specifies the binary data string used for CPHY triggering if the trigger + condition is Word. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue?`` 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:BUS:CPHY:WORD:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue? + ``` + + Info: + - ```` specifies the binary data string. The default data value is + XXXXXXXXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyWordSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe`` command. + + Description: + - This command specifies the length of the word string in bytes to be used for an CPHY + trigger if the trigger condition is WORD. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe?`` 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:BUS:CPHY:WORD:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe? + ``` + + Info: + - ```` specifies the length of the data string. The default word size is 1 byte and + otherwise ranges between 1 and 5. + """ + + +class SearchSearchItemTriggerABusCphyWord(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusCphyWordSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusCphyWordValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusCphyWordSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe`` command. + + Description: + - This command specifies the length of the word string in bytes to be used for an CPHY + trigger if the trigger condition is WORD. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe?`` 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:BUS:CPHY:WORD:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe? + ``` + + Info: + - ```` specifies the length of the data string. The default word size is 1 byte and + otherwise ranges between 1 and 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusCphyWordValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue`` command. + + Description: + - This command specifies the binary data string used for CPHY triggering if the trigger + condition is Word. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue?`` 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:BUS:CPHY:WORD:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue? + ``` + + Info: + - ```` specifies the binary data string. The default data value is + XXXXXXXXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusCphySymbolValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue`` command. + + Description: + - This command specifies the binary data string used for CPHY triggering if the trigger + condition is SYMBol. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue?`` 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:BUS:CPHY:SYMBol:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue? + ``` + + Info: + - ```` specifies the binary data string. The default data value is XXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphySymbolSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for an CPHY + trigger if the trigger condition is SYMBol. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe?`` 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:BUS:CPHY:SYMBol:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe? + ``` + + Info: + - ```` specifies the length of the data string. The default symbol size is 7 symbols + and otherwise ranges between 1 and 14. + """ + + +class SearchSearchItemTriggerABusCphySymbol(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusCphySymbolSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusCphySymbolValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def size(self) -> SearchSearchItemTriggerABusCphySymbolSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for an CPHY + trigger if the trigger condition is SYMBol. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe?`` 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:BUS:CPHY:SYMBol:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe? + ``` + + Info: + - ```` specifies the length of the data string. The default symbol size is 7 + symbols and otherwise ranges between 1 and 14. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusCphySymbolValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue`` command. + + Description: + - This command specifies the binary data string used for CPHY triggering if the trigger + condition is SYMBol. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue?`` 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:BUS:CPHY:SYMBol:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue? + ``` + + Info: + - ```` specifies the binary data string. The default data value is XXX. + """ + return self._value + + +class SearchSearchItemTriggerABusCphyRedValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue`` command. + + Description: + - This command specifies the red data string used for CPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue?`` 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:BUS:CPHY:RED:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue? + ``` + + Info: + - ```` is the identifier value. The default red value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyRed(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusCphyRedValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusCphyRedValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue`` command. + + Description: + - This command specifies the red data string used for CPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue?`` 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:BUS:CPHY:RED:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue? + ``` + + Info: + - ```` is the identifier value. The default red value is XXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusCphyPixelSearchoption(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion`` command. + + Description: + - This command sets or queries the search pattern type for CPHY bus. The default search + pattern type value is PIXELVALue. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion?`` 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:BUS:CPHY:PIXel:SEARCHOPTion value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion {PIXELVALue|PIXELNUMBer} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion? + ``` + + Info: + - ``PIXELVALue`` specifies PIXELVALue as the field within a CPHY frame to search on. + - ``PIXELNUMBer`` specifies PIXELNUMBer as the field within a CPHY frame to search on. + """ + + +class SearchSearchItemTriggerABusCphyPixelNumber(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer`` command. + + Description: + - This command specifies the pixel number to be used for CPHY triggering if the trigger + condition is on pixel number pattern. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer?`` 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:BUS:CPHY:PIXel:NUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer? + ``` + + Info: + - ```` specifies the pixel number. The default pixel number value is 0. + """ + + +class SearchSearchItemTriggerABusCphyPixel(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.number``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer`` command. + - ``.searchoption``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._number = SearchSearchItemTriggerABusCphyPixelNumber( + device, f"{self._cmd_syntax}:NUMBer" + ) + self._searchoption = SearchSearchItemTriggerABusCphyPixelSearchoption( + device, f"{self._cmd_syntax}:SEARCHOPTion" + ) + + @property + def number(self) -> SearchSearchItemTriggerABusCphyPixelNumber: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer`` command. + + Description: + - This command specifies the pixel number to be used for CPHY triggering if the trigger + condition is on pixel number pattern. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer?`` 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:BUS:CPHY:PIXel:NUMBer value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer? + ``` + + Info: + - ```` specifies the pixel number. The default pixel number value is 0. + """ + return self._number + + @property + def searchoption(self) -> SearchSearchItemTriggerABusCphyPixelSearchoption: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion`` command. + + Description: + - This command sets or queries the search pattern type for CPHY bus. The default search + pattern type value is PIXELVALue. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion?`` 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:BUS:CPHY:PIXel:SEARCHOPTion value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion {PIXELVALue|PIXELNUMBer} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion? + ``` + + Info: + - ``PIXELVALue`` specifies PIXELVALue as the field within a CPHY frame to search on. + - ``PIXELNUMBer`` specifies PIXELNUMBer as the field within a CPHY frame to search on. + """ + return self._searchoption + + +class SearchSearchItemTriggerABusCphyPacketsType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe`` command. + + Description: + - This command sets or queries the packet type for CPHY bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe?`` 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:BUS:CPHY:PACKets:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe {SHORt|LONG} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe? + ``` + + Info: + - ``SHORt`` specifies SHORt as the field within a CPHY frame to search on. SHORt is the + default packet type condition. + - ``LONG`` specifies LONG as the field within a CPHY frame to search on. + """ + + +class SearchSearchItemTriggerABusCphyPacketsList(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST`` command. + + Description: + - This command sets or queries the packet list for CPHY bus. The default packet list + condition is VSYNCSTART. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST?`` 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:BUS:CPHY:PACKets:LIST value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST {VSYNCSTART|VSYNCEND|HSYNCSTART|HSYNCEND|EOTP|COLOROFF|COLORON|SHUTDOWN|TURNON|GSW|GR|COMPRESSION|SCRAMBLING|EXECUTEQUEue|DCSSW|DCSR|GLONGWRITE|DSINULL|DSIBLANk|MAXRETSIZE|DCSGLONGWRITE|PICPARameter|COMPRESSEDPSTReam|PPS101010|PPS121212|PPS565|PPS666|LPS666|PPS888|YCBCR24|LPYCBCR24|YCBCR16|YCBCR12|ACKNowledge|ERRORREPort|GSRR|GLONGREAD|DCSLONGREAD|DCSSRR|FRAMESTARt|FRAMEEND|LINESTARt|LINEEND|GSP|CSINULL|CSIBLANk|EMBEDDED|USEREIGHTB|RGB565|RGB555|RGB444|RGB666|RAW6|RAW7|RAW8|RAW10|RAW12|RAW14|RAW16|RAW20|RGB888|YUV420L8|YUV8BIT|YUV422B10|YUV420B10} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST? + ``` + + Info: + - ``VSYNCSTART`` specifies VSYNCSTART as the packet within CPHY frame to search on. + - ``VSYNCEND`` specifies VSYNCEND as the packet within CPHY frame to search on. + - ``HSYNCSTART`` specifies HSYNCSTART as the packet within CPHY frame to search on. + - ``HSYNCEND`` specifies HSYNCEND as the packet within CPHY frame to search on. + - ``EOTP`` specifies EOTP as the packet within CPHY frame to search on. + - ``COLOROFF`` specifies COLOROFF as the packet within CPHY frame to search on. + - ``COLORON`` specifies COLORON as the packet within CPHY frame to search on. + - ``SHUTDOWN`` specifies SHUTDOWN as the packet within CPHY frame to search on. + - ``TURNON`` specifies TURNON as the packet within CPHY frame to search on. + - ``GSW`` specifies GSW as the packet within CPHY frame to search on. + - ``GR`` specifies GR as the packet within CPHY frame to search on. + - ``COMPRESSION`` specifies COMPRESSION as the packet within CPHY frame to search on. + - ``SCRAMBLING`` specifies SCRAMBLING as the packet within CPHY frame to search on. + - ``EXECUTEQUEue`` specifies EXECUTEQUEue as the packet within CPHY frame to search on. + - ``DCSSW`` specifies DCSSW as the packet within CPHY frame to search on. + - ``DCSR`` specifies DCSR as the packet within CPHY frame to search on. + - ``GLONGWRITE`` specifies GLONGWRITE as the packet within CPHY frame to search on. + - ``DSINULL`` specifies DSINULL as the packet within CPHY frame to search on. + - ``DSIBLANk`` specifies DSIBLANk as the packet within CPHY frame to search on. + - ``MAXRETSIZE`` specifies MAXRETSIZE as the packet within CPHY frame to search on. + - ``DCSGLONGWRITE`` specifies DCSGLONGWRITE as the packet within CPHY frame to search on. + - ``PICPARameter`` specifies PICPARameter as the packet within CPHY frame to search on. + - ``COMPRESSEDPSTReam`` specifies COMPRESSEDPSTReam as the packet within CPHY frame to + search on. + - ``PPS101010`` specifies PPS101010 as the packet within CPHY frame to search on. + - ``PPS121212`` specifies PPS121212 as the packet within CPHY frame to search on. + - ``PPS565`` specifies PPS565 as the packet within CPHY frame to search on. + - ``PPS666`` specifies PPS666 as the packet within CPHY frame to search on. + - ``LPS666`` specifies LPS666 as the packet within CPHY frame to search on. + - ``PPS888`` specifies LPS666 as the packet within CPHY frame to search on. + - ``YCBCR24`` specifies YCBCR24 as the packet within CPHY frame to search on. + - ``LPYCBCR24`` specifies LPYCBCR24 as the packet within CPHY frame to search on. + - ``YCBCR16`` specifies YCBCR16 as the packet within CPHY frame to search on. + - ``YCBCR12`` specifies YCBCR12 as the packet within CPHY frame to search on. + - ``ACKNowledge`` specifies ACKNowledge as the packet within CPHY frame to search on. + - ``ERRORREPort`` specifies ERRORREPort as the packet within CPHY frame to search on. + - ``GSRR`` specifies GSRR as the packet within CPHY frame to search on. + - ``GLONGREAD`` specifies GLONGREAD as the packet within CPHY frame to search on. + - ``DCSLONGREAD`` specifies DCSLONGREAD as the packet within CPHY frame to search on. + - ``DCSSRR`` specifies DCSSRR as the packet within CPHY frame to search on. + - ``FRAMESTARt`` specifies FRAMESTARt as the packet within CPHY frame to search on. + - ``FRAMEEND`` specifies FRAMEEND as the packet within CPHY frame to search on. + - ``LINESTARt`` specifies LINESTARt as the packet within CPHY frame to search on. + - ``LINEEND`` specifies LINEEND as the packet within CPHY frame to search on. + - ``GSP`` specifies GSP as the packet within CPHY frame to search on. + - ``CSINULL`` specifies CSINULL as the packet within CPHY frame to search on. + - ``CSIBLANk`` specifies CSIBLANk as the packet within CPHY frame to search on. + - ``EMBEDDED`` specifies EMBEDDED as the packet within CPHY frame to search on. + - ``USEREIGHTB`` specifies USEREIGHTB as the packet within CPHY frame to search on. + - ``RGB565`` specifies RGB565 as the packet within CPHY frame to search on. + - ``RGB555`` specifies RGB555 as the packet within CPHY frame to search on. + - ``RGB444`` specifies RGB444 as the packet within CPHY frame to search on. + - ``RGB666`` specifies RGB666 as the packet within CPHY frame to search on. + - ``RAW6`` specifies RAW6 as the packet within CPHY frame to search on. + - ``RAW7`` specifies RAW7 as the packet within CPHY frame to search on. + - ``RAW8`` specifies RAW8 as the packet within CPHY frame to search on. + - ``RAW10`` specifies RAW10 as the packet within CPHY frame to search on. + - ``RAW12`` specifies RAW12 as the packet within CPHY frame to search on. + - ``RAW14`` specifies RAW14 as the packet within CPHY frame to search on. + - ``RAW16`` specifies RAW16 as the packet within CPHY frame to search on. + - ``RAW20`` specifies RAW20 as the packet within CPHY frame to search on. + - ``RGB888`` specifies RGB888 as the packet within CPHY frame to search on. + - ``YUV420L8`` specifies YUV420L8 as the packet within CPHY frame to search on. + - ``YUV8BIT`` specifies YUV8BIT as the packet within CPHY frame to search on. + - ``YUV422B10`` specifies YUV422B10 as the packet within CPHY frame to search on. + - ``YUV420B10`` specifies YUV420B10 as the packet within CPHY frame to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusCphyPackets(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.list``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._list = SearchSearchItemTriggerABusCphyPacketsList(device, f"{self._cmd_syntax}:LIST") + self._type = SearchSearchItemTriggerABusCphyPacketsType(device, f"{self._cmd_syntax}:TYPe") + + @property + def list(self) -> SearchSearchItemTriggerABusCphyPacketsList: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST`` command. + + Description: + - This command sets or queries the packet list for CPHY bus. The default packet list + condition is VSYNCSTART. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST?`` 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:BUS:CPHY:PACKets:LIST value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST {VSYNCSTART|VSYNCEND|HSYNCSTART|HSYNCEND|EOTP|COLOROFF|COLORON|SHUTDOWN|TURNON|GSW|GR|COMPRESSION|SCRAMBLING|EXECUTEQUEue|DCSSW|DCSR|GLONGWRITE|DSINULL|DSIBLANk|MAXRETSIZE|DCSGLONGWRITE|PICPARameter|COMPRESSEDPSTReam|PPS101010|PPS121212|PPS565|PPS666|LPS666|PPS888|YCBCR24|LPYCBCR24|YCBCR16|YCBCR12|ACKNowledge|ERRORREPort|GSRR|GLONGREAD|DCSLONGREAD|DCSSRR|FRAMESTARt|FRAMEEND|LINESTARt|LINEEND|GSP|CSINULL|CSIBLANk|EMBEDDED|USEREIGHTB|RGB565|RGB555|RGB444|RGB666|RAW6|RAW7|RAW8|RAW10|RAW12|RAW14|RAW16|RAW20|RGB888|YUV420L8|YUV8BIT|YUV422B10|YUV420B10} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST? + ``` + + Info: + - ``VSYNCSTART`` specifies VSYNCSTART as the packet within CPHY frame to search on. + - ``VSYNCEND`` specifies VSYNCEND as the packet within CPHY frame to search on. + - ``HSYNCSTART`` specifies HSYNCSTART as the packet within CPHY frame to search on. + - ``HSYNCEND`` specifies HSYNCEND as the packet within CPHY frame to search on. + - ``EOTP`` specifies EOTP as the packet within CPHY frame to search on. + - ``COLOROFF`` specifies COLOROFF as the packet within CPHY frame to search on. + - ``COLORON`` specifies COLORON as the packet within CPHY frame to search on. + - ``SHUTDOWN`` specifies SHUTDOWN as the packet within CPHY frame to search on. + - ``TURNON`` specifies TURNON as the packet within CPHY frame to search on. + - ``GSW`` specifies GSW as the packet within CPHY frame to search on. + - ``GR`` specifies GR as the packet within CPHY frame to search on. + - ``COMPRESSION`` specifies COMPRESSION as the packet within CPHY frame to search on. + - ``SCRAMBLING`` specifies SCRAMBLING as the packet within CPHY frame to search on. + - ``EXECUTEQUEue`` specifies EXECUTEQUEue as the packet within CPHY frame to search on. + - ``DCSSW`` specifies DCSSW as the packet within CPHY frame to search on. + - ``DCSR`` specifies DCSR as the packet within CPHY frame to search on. + - ``GLONGWRITE`` specifies GLONGWRITE as the packet within CPHY frame to search on. + - ``DSINULL`` specifies DSINULL as the packet within CPHY frame to search on. + - ``DSIBLANk`` specifies DSIBLANk as the packet within CPHY frame to search on. + - ``MAXRETSIZE`` specifies MAXRETSIZE as the packet within CPHY frame to search on. + - ``DCSGLONGWRITE`` specifies DCSGLONGWRITE as the packet within CPHY frame to search + on. + - ``PICPARameter`` specifies PICPARameter as the packet within CPHY frame to search on. + - ``COMPRESSEDPSTReam`` specifies COMPRESSEDPSTReam as the packet within CPHY frame to + search on. + - ``PPS101010`` specifies PPS101010 as the packet within CPHY frame to search on. + - ``PPS121212`` specifies PPS121212 as the packet within CPHY frame to search on. + - ``PPS565`` specifies PPS565 as the packet within CPHY frame to search on. + - ``PPS666`` specifies PPS666 as the packet within CPHY frame to search on. + - ``LPS666`` specifies LPS666 as the packet within CPHY frame to search on. + - ``PPS888`` specifies LPS666 as the packet within CPHY frame to search on. + - ``YCBCR24`` specifies YCBCR24 as the packet within CPHY frame to search on. + - ``LPYCBCR24`` specifies LPYCBCR24 as the packet within CPHY frame to search on. + - ``YCBCR16`` specifies YCBCR16 as the packet within CPHY frame to search on. + - ``YCBCR12`` specifies YCBCR12 as the packet within CPHY frame to search on. + - ``ACKNowledge`` specifies ACKNowledge as the packet within CPHY frame to search on. + - ``ERRORREPort`` specifies ERRORREPort as the packet within CPHY frame to search on. + - ``GSRR`` specifies GSRR as the packet within CPHY frame to search on. + - ``GLONGREAD`` specifies GLONGREAD as the packet within CPHY frame to search on. + - ``DCSLONGREAD`` specifies DCSLONGREAD as the packet within CPHY frame to search on. + - ``DCSSRR`` specifies DCSSRR as the packet within CPHY frame to search on. + - ``FRAMESTARt`` specifies FRAMESTARt as the packet within CPHY frame to search on. + - ``FRAMEEND`` specifies FRAMEEND as the packet within CPHY frame to search on. + - ``LINESTARt`` specifies LINESTARt as the packet within CPHY frame to search on. + - ``LINEEND`` specifies LINEEND as the packet within CPHY frame to search on. + - ``GSP`` specifies GSP as the packet within CPHY frame to search on. + - ``CSINULL`` specifies CSINULL as the packet within CPHY frame to search on. + - ``CSIBLANk`` specifies CSIBLANk as the packet within CPHY frame to search on. + - ``EMBEDDED`` specifies EMBEDDED as the packet within CPHY frame to search on. + - ``USEREIGHTB`` specifies USEREIGHTB as the packet within CPHY frame to search on. + - ``RGB565`` specifies RGB565 as the packet within CPHY frame to search on. + - ``RGB555`` specifies RGB555 as the packet within CPHY frame to search on. + - ``RGB444`` specifies RGB444 as the packet within CPHY frame to search on. + - ``RGB666`` specifies RGB666 as the packet within CPHY frame to search on. + - ``RAW6`` specifies RAW6 as the packet within CPHY frame to search on. + - ``RAW7`` specifies RAW7 as the packet within CPHY frame to search on. + - ``RAW8`` specifies RAW8 as the packet within CPHY frame to search on. + - ``RAW10`` specifies RAW10 as the packet within CPHY frame to search on. + - ``RAW12`` specifies RAW12 as the packet within CPHY frame to search on. + - ``RAW14`` specifies RAW14 as the packet within CPHY frame to search on. + - ``RAW16`` specifies RAW16 as the packet within CPHY frame to search on. + - ``RAW20`` specifies RAW20 as the packet within CPHY frame to search on. + - ``RGB888`` specifies RGB888 as the packet within CPHY frame to search on. + - ``YUV420L8`` specifies YUV420L8 as the packet within CPHY frame to search on. + - ``YUV8BIT`` specifies YUV8BIT as the packet within CPHY frame to search on. + - ``YUV422B10`` specifies YUV422B10 as the packet within CPHY frame to search on. + - ``YUV420B10`` specifies YUV420B10 as the packet within CPHY frame to search on. + """ # noqa: E501 + return self._list + + @property + def type(self) -> SearchSearchItemTriggerABusCphyPacketsType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe`` command. + + Description: + - This command sets or queries the packet type for CPHY bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe?`` 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:BUS:CPHY:PACKets:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe {SHORt|LONG} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe? + ``` + + Info: + - ``SHORt`` specifies SHORt as the field within a CPHY frame to search on. SHORt is the + default packet type condition. + - ``LONG`` specifies LONG as the field within a CPHY frame to search on. + """ + return self._type + + +class SearchSearchItemTriggerABusCphyModeType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe`` command. + + Description: + - This command sets or queries the mode type for CPHY bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe?`` 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:BUS:CPHY:MODe:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe {HS|LP} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe? + ``` + + Info: + - ``HS`` specifies HS as the mode within a CPHY frame to search on. HS is default mode type + condition. + - ``LP`` specifies LP as the mode within a CPHY frame to search on. + """ + + +class SearchSearchItemTriggerABusCphyMode(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusCphyModeType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusCphyModeType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe`` command. + + Description: + - This command sets or queries the mode type for CPHY bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe?`` 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:BUS:CPHY:MODe:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe {HS|LP} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe? + ``` + + Info: + - ``HS`` specifies HS as the mode within a CPHY frame to search on. HS is default mode + type condition. + - ``LP`` specifies LP as the mode within a CPHY frame to search on. + """ + return self._type + + +class SearchSearchItemTriggerABusCphyGreenValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue`` command. + + Description: + - This command specifies the green data string used for CPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue?`` 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:BUS:CPHY:GREen:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue? + ``` + + Info: + - ```` is the identifier value. The default green value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyGreen(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusCphyGreenValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusCphyGreenValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue`` command. + + Description: + - This command specifies the green data string used for CPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue?`` 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:BUS:CPHY:GREen:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue? + ``` + + Info: + - ```` is the identifier value. The default green value is XXXXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusCphyEscapemodeCommand(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand`` command. + + Description: + - This command sets or queries the escape mode command type for CPHY bus.. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand?`` 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:BUS:CPHY:ESCAPEMODe:COMMand value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand {LPDT|ULPS|RESETTRIGger|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand? + ``` + + Info: + - ``LPDT`` specifies LPDT as the field within a CPHY frame to search on. + - ``ULPS`` specifies ULPS as the field within a CPHY frame to search on. + - ``RESETTRIGger`` specifies RESETTRIGger as the field within a CPHY frame to search on. + - ``ANY`` specifies ANY as the field within a CPHY frame to search on. ANY is the default + value. + """ + + +class SearchSearchItemTriggerABusCphyEscapemode(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._command = SearchSearchItemTriggerABusCphyEscapemodeCommand( + device, f"{self._cmd_syntax}:COMMand" + ) + + @property + def command(self) -> SearchSearchItemTriggerABusCphyEscapemodeCommand: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand`` command. + + Description: + - This command sets or queries the escape mode command type for CPHY bus.. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand?`` 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:BUS:CPHY:ESCAPEMODe:COMMand value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand {LPDT|ULPS|RESETTRIGger|ANY} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand? + ``` + + Info: + - ``LPDT`` specifies LPDT as the field within a CPHY frame to search on. + - ``ULPS`` specifies ULPS as the field within a CPHY frame to search on. + - ``RESETTRIGger`` specifies RESETTRIGger as the field within a CPHY frame to search on. + - ``ANY`` specifies ANY as the field within a CPHY frame to search on. ANY is the + default value. + """ + return self._command + + +class SearchSearchItemTriggerABusCphyErrorType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error type for CPHY bus. The default error type condition + is ANY. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe?`` 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:BUS:CPHY:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe {ANY|ECC|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe? + ``` + + Info: + - ``ANY`` specifies ANY as the field within a CPHY frame to search on. + - ``ECC`` specifies ECC as the field within a CPHY frame to search on. + - ``CRC`` specifies CRC as the field within a CPHY frame to search on. + """ + + +class SearchSearchItemTriggerABusCphyError(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusCphyErrorType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SearchSearchItemTriggerABusCphyErrorType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe`` command. + + Description: + - This command sets or queries the error type for CPHY bus. The default error type + condition is ANY. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe?`` 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:BUS:CPHY:ERRor:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe {ANY|ECC|CRC} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe? + ``` + + Info: + - ``ANY`` specifies ANY as the field within a CPHY frame to search on. + - ``ECC`` specifies ECC as the field within a CPHY frame to search on. + - ``CRC`` specifies CRC as the field within a CPHY frame to search on. + """ + return self._type + + +class SearchSearchItemTriggerABusCphyDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for CPHY triggering if the trigger + condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue?`` 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:BUS:CPHY:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for an CPHY + trigger if the trigger condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe?`` 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:BUS:CPHY:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. The default data size is 1 byte and otherwise ranges + between 1 and 5. + """ + + +class SearchSearchItemTriggerABusCphyData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = SearchSearchItemTriggerABusCphyDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusCphyDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def size(self) -> SearchSearchItemTriggerABusCphyDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe`` command. + + Description: + - This command specifies the length of the data string in bytes to be used for an CPHY + trigger if the trigger condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe?`` 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:BUS:CPHY:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. The default data size is 1 byte and otherwise + ranges between 1 and 5. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusCphyDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue`` command. + + Description: + - This command specifies the binary data string used for CPHY triggering if the trigger + condition is DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue?`` 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:BUS:CPHY:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue? + ``` + + Info: + - ```` is the identifier value. The default value is XXXXXXXX. + """ + return self._value + + +class SearchSearchItemTriggerABusCphyCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for an CPHY bus. The default trigger on + condition is SOT. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition?`` 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:BUS:CPHY:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition {SOT|EOT|DATa|EOTPDATa|OPTIONALPARam|SCRambling|COMPression|PACKets|BUSTURNAROUnd|ESCAPEMODe|STop|ERRors|MODe|WORD|SYMBol} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition? + ``` + + Info: + - ``SOT`` specifies SOT as the field within a CPHY frame to search on. + - ``EOT`` specifies EOT as the field within a CPHY frame to search on. + - ``DATa`` specifies DATa as the field within a CPHY frame to search on. + - ``EOTPDATa`` specifies EOTPDATa as the field within a CPHY frame to search on. + - ``OPTIONALPARam`` specifies OPTIONALPARam as the field within a CPHY frame to search on. + - ``SCRambling`` specifies SCRambling as the field within a CPHY frame to search on. + - ``COMPression`` specifies COMPression as the field within a CPHY frame to search on. + - ``PACKets`` specifies PACKets as the field within a CPHY frame to search on. + - ``BUSTURNAROUnd`` specifies BUSTURNAROUnd as the field within a CPHY frame to search on. + - ``ESCAPEMODe`` specifies ESCAPEMODe as the field within a CPHY frame to search on. + - ``STop`` specifies STop as the field within a CPHY frame to search on. + - ``ERRors`` specifies ERRors as the field within a CPHY frame to search on. + - ``MODe`` specifies MODe as the field within a CPHY frame to search on. + - ``WORD`` specifies WORD as the field within a CPHY frame to search on. + - ``SYMBol`` specifies SYMBol as the field within a CPHY frame to search on. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusCphyBlueValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue`` command. + + Description: + - This command specifies the blue data string used for CPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue?`` 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:BUS:CPHY:BLUe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue? + ``` + + Info: + - ```` is the identifier value. The default blue value is XXXXXXXXXX. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCphyBlue(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusCphyBlueValue(device, f"{self._cmd_syntax}:VALue") + + @property + def value(self) -> SearchSearchItemTriggerABusCphyBlueValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue`` command. + + Description: + - This command specifies the blue data string used for CPHY triggering if the trigger + condition is on RGB packet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue?`` 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:BUS:CPHY:BLUe:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue? + ``` + + Info: + - ```` is the identifier value. The default blue value is XXXXXXXXXX. + """ + return self._value + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusCphy(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.blue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor`` command tree. + - ``.escapemode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe`` command tree. + - ``.green``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen`` command tree. + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe`` command tree. + - ``.packets``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets`` command tree. + - ``.pixel``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel`` command tree. + - ``.red``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED`` command tree. + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol`` command tree. + - ``.word``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD`` command tree. + - ``.wordcount``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt`` command tree. + - ``.ycbcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR`` command tree. + - ``.yuv``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._blue = SearchSearchItemTriggerABusCphyBlue(device, f"{self._cmd_syntax}:BLUe") + self._condition = SearchSearchItemTriggerABusCphyCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusCphyData(device, f"{self._cmd_syntax}:DATa") + self._error = SearchSearchItemTriggerABusCphyError(device, f"{self._cmd_syntax}:ERRor") + self._escapemode = SearchSearchItemTriggerABusCphyEscapemode( + device, f"{self._cmd_syntax}:ESCAPEMODe" + ) + self._green = SearchSearchItemTriggerABusCphyGreen(device, f"{self._cmd_syntax}:GREen") + self._mode = SearchSearchItemTriggerABusCphyMode(device, f"{self._cmd_syntax}:MODe") + self._packets = SearchSearchItemTriggerABusCphyPackets( + device, f"{self._cmd_syntax}:PACKets" + ) + self._pixel = SearchSearchItemTriggerABusCphyPixel(device, f"{self._cmd_syntax}:PIXel") + self._red = SearchSearchItemTriggerABusCphyRed(device, f"{self._cmd_syntax}:RED") + self._symbol = SearchSearchItemTriggerABusCphySymbol(device, f"{self._cmd_syntax}:SYMBol") + self._word = SearchSearchItemTriggerABusCphyWord(device, f"{self._cmd_syntax}:WORD") + self._wordcount = SearchSearchItemTriggerABusCphyWordcount( + device, f"{self._cmd_syntax}:WORDCOUNt" + ) + self._ycbcr = SearchSearchItemTriggerABusCphyYcbcr(device, f"{self._cmd_syntax}:YCBCR") + self._yuv = SearchSearchItemTriggerABusCphyYuv(device, f"{self._cmd_syntax}:YUV") + + @property + def blue(self) -> SearchSearchItemTriggerABusCphyBlue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe:VALue`` command. + """ + return self._blue + + @property + def condition(self) -> SearchSearchItemTriggerABusCphyCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for an CPHY bus. The default + trigger on condition is SOT. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition?`` 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:BUS:CPHY:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition {SOT|EOT|DATa|EOTPDATa|OPTIONALPARam|SCRambling|COMPression|PACKets|BUSTURNAROUnd|ESCAPEMODe|STop|ERRors|MODe|WORD|SYMBol} + - SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition? + ``` + + Info: + - ``SOT`` specifies SOT as the field within a CPHY frame to search on. + - ``EOT`` specifies EOT as the field within a CPHY frame to search on. + - ``DATa`` specifies DATa as the field within a CPHY frame to search on. + - ``EOTPDATa`` specifies EOTPDATa as the field within a CPHY frame to search on. + - ``OPTIONALPARam`` specifies OPTIONALPARam as the field within a CPHY frame to search + on. + - ``SCRambling`` specifies SCRambling as the field within a CPHY frame to search on. + - ``COMPression`` specifies COMPression as the field within a CPHY frame to search on. + - ``PACKets`` specifies PACKets as the field within a CPHY frame to search on. + - ``BUSTURNAROUnd`` specifies BUSTURNAROUnd as the field within a CPHY frame to search + on. + - ``ESCAPEMODe`` specifies ESCAPEMODe as the field within a CPHY frame to search on. + - ``STop`` specifies STop as the field within a CPHY frame to search on. + - ``ERRors`` specifies ERRors as the field within a CPHY frame to search on. + - ``MODe`` specifies MODe as the field within a CPHY frame to search on. + - ``WORD`` specifies WORD as the field within a CPHY frame to search on. + - ``SYMBol`` specifies SYMBol as the field within a CPHY frame to search on. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusCphyData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa:VALue`` command. + """ + return self._data + + @property + def error(self) -> SearchSearchItemTriggerABusCphyError: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor:TYPe`` command. + """ + return self._error + + @property + def escapemode(self) -> SearchSearchItemTriggerABusCphyEscapemode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe:COMMand`` command. + """ + return self._escapemode + + @property + def green(self) -> SearchSearchItemTriggerABusCphyGreen: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen:VALue`` command. + """ + return self._green + + @property + def mode(self) -> SearchSearchItemTriggerABusCphyMode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe:TYPe`` command. + """ + return self._mode + + @property + def packets(self) -> SearchSearchItemTriggerABusCphyPackets: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.list``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:LIST`` command. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets:TYPe`` command. + """ + return self._packets + + @property + def pixel(self) -> SearchSearchItemTriggerABusCphyPixel: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.number``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:NUMBer`` command. + - ``.searchoption``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel:SEARCHOPTion`` + command. + """ + return self._pixel + + @property + def red(self) -> SearchSearchItemTriggerABusCphyRed: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED:VALue`` command. + """ + return self._red + + @property + def symbol(self) -> SearchSearchItemTriggerABusCphySymbol: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol:VALue`` command. + """ + return self._symbol + + @property + def word(self) -> SearchSearchItemTriggerABusCphyWord: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD:VALue`` command. + """ + return self._word + + @property + def wordcount(self) -> SearchSearchItemTriggerABusCphyWordcount: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt:VALue`` command. + """ + return self._wordcount + + @property + def ycbcr(self) -> SearchSearchItemTriggerABusCphyYcbcr: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.cb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CB`` command. + - ``.cr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:CR`` command. + - ``.y``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR:Y`` command. + """ + return self._ycbcr + + @property + def yuv(self) -> SearchSearchItemTriggerABusCphyYuv: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.u``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:U`` command. + - ``.v``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:V`` command. + - ``.y``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV:Y`` command. + """ + return self._yuv + + +class SearchSearchItemTriggerABusCanIdentifierValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue`` command. + + Description: + - This command sets or queries CAN bus trigger identifier (address) value to be used when + searching on a CAN bus signal. The search number is specified by x. The search condition + must be set to IDANDDATA or DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue?`` 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:BUS:CAN:IDentifier:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue? + ``` + + Info: + - ```` is the identifier value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCanIdentifierMode(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe`` command. + + Description: + - This command sets or queries the CAN bus trigger identifier (address) mode to be used when + searching on a CAN bus signal. The search number is specified by x. The search condition + must be set to IDANDDATA or DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe?`` 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:BUS:CAN:IDentifier:MODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe {EXTENDed|STandard} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe? + ``` + + Info: + - ``EXTENDed`` specifies the extended identifier mode. + - ``STandard`` specifies the standard identifier mode. + """ + + +class SearchSearchItemTriggerABusCanIdentifier(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._mode = SearchSearchItemTriggerABusCanIdentifierMode( + device, f"{self._cmd_syntax}:MODe" + ) + self._value = SearchSearchItemTriggerABusCanIdentifierValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def mode(self) -> SearchSearchItemTriggerABusCanIdentifierMode: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe`` command. + + Description: + - This command sets or queries the CAN bus trigger identifier (address) mode to be used + when searching on a CAN bus signal. The search number is specified by x. The search + condition must be set to IDANDDATA or DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe?`` 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:BUS:CAN:IDentifier:MODe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe {EXTENDed|STandard} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe? + ``` + + Info: + - ``EXTENDed`` specifies the extended identifier mode. + - ``STandard`` specifies the standard identifier mode. + """ + return self._mode + + @property + def value(self) -> SearchSearchItemTriggerABusCanIdentifierValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue`` command. + + Description: + - This command sets or queries CAN bus trigger identifier (address) value to be used + when searching on a CAN bus signal. The search number is specified by x. The search + condition must be set to IDANDDATA or DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue?`` 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:BUS:CAN:IDentifier:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue? + ``` + + Info: + - ```` is the identifier value. + """ + return self._value + + +class SearchSearchItemTriggerABusCanFrametype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype`` command. + + Description: + - This command sets or queries CAN bus trigger frame type to be used when searching on a CAN + bus signal. The search condition must be set to FRAMEtype. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype?`` 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:BUS:CAN:FRAMEtype value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype {DATa|ERRor|OVERLoad|REMote} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype? + ``` + + Info: + - ``DATa`` sets the frame type to data. + - ``ERRor`` sets the frame type to error. + - ``OVERLoad`` sets the frame type to overload. + - ``REMote`` sets the frame type to remote. + """ + + +class SearchSearchItemTriggerABusCanFdEsibit(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit`` command. + + Description: + - This command sets or queries the value of the error state indicator bit (ESI bit) for a + CAN bus to search on. The search number is specified by x. The search condition must be + set to FDBITS, and the CAN standard must be FDISO or FDNONISO. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit?`` 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:BUS:CAN:FD:ESIBit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit? + ``` + + Info: + - ``ONE`` filters CAN FD packets to only match those where the ESI bit has a value of 1 + (recessive). + - ``ZERo`` filters CAN FD packets to only match those where the ESI bit has a value of 0 + (dominant). + - ``NOCARE`` disables filtering of CAN FD packets on the ESI bit. + """ + + +class SearchSearchItemTriggerABusCanFdBrsbit(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit`` command. + + Description: + - This command sets or queries the value of the bit rate switch bit (BRS bit) for a CAN bus + to search on. The search number is specified by x. The search condition must be set to + FDBITS, and the CAN standard must be FDISO or FDNONISO. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit?`` 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:BUS:CAN:FD:BRSBit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit? + ``` + + Info: + - ``ONE`` filters CAN FD packets to only match those where the BRS bit has a value of 1 + (fast data enabled). + - ``ZERo`` filters CAN FD packets to only match those where the BRS bit has a value of 0 + (fast data disabled). + - ``NOCARE`` disables filtering of CAN FD packets on the BRS bit. + """ + + +class SearchSearchItemTriggerABusCanFd(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.brsbit``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit`` command. + - ``.esibit``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._brsbit = SearchSearchItemTriggerABusCanFdBrsbit(device, f"{self._cmd_syntax}:BRSBit") + self._esibit = SearchSearchItemTriggerABusCanFdEsibit(device, f"{self._cmd_syntax}:ESIBit") + + @property + def brsbit(self) -> SearchSearchItemTriggerABusCanFdBrsbit: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit`` command. + + Description: + - This command sets or queries the value of the bit rate switch bit (BRS bit) for a CAN + bus to search on. The search number is specified by x. The search condition must be + set to FDBITS, and the CAN standard must be FDISO or FDNONISO. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit?`` 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:BUS:CAN:FD:BRSBit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit? + ``` + + Info: + - ``ONE`` filters CAN FD packets to only match those where the BRS bit has a value of 1 + (fast data enabled). + - ``ZERo`` filters CAN FD packets to only match those where the BRS bit has a value of 0 + (fast data disabled). + - ``NOCARE`` disables filtering of CAN FD packets on the BRS bit. + """ + return self._brsbit + + @property + def esibit(self) -> SearchSearchItemTriggerABusCanFdEsibit: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit`` command. + + Description: + - This command sets or queries the value of the error state indicator bit (ESI bit) for + a CAN bus to search on. The search number is specified by x. The search condition must + be set to FDBITS, and the CAN standard must be FDISO or FDNONISO. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit?`` 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:BUS:CAN:FD:ESIBit value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit {ONE|ZERo|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit? + ``` + + Info: + - ``ONE`` filters CAN FD packets to only match those where the ESI bit has a value of 1 + (recessive). + - ``ZERo`` filters CAN FD packets to only match those where the ESI bit has a value of 0 + (dominant). + - ``NOCARE`` disables filtering of CAN FD packets on the ESI bit. + """ + return self._esibit + + +class SearchSearchItemTriggerABusCanErrtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType`` command. + + Description: + - This command sets or queries the type of error condition for a CAN bus to search on. The + search number is specified by x. The search condition must be set to ERRor. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType?`` 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:BUS:CAN:ERRType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType {ACKMISS|BITSTUFFing|FORMERRor|ANYERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType? + ``` + + Info: + - ``ACKMISS`` specifies a search based on a missing ACK field. + - ``BITSTUFFing`` specifies a search based on a bit stuffing error. + - ``FORMERRor`` specifies a search based on a CAN FD form error. To use this option, the CAN + standard must be set to FDISO or FDNONISO. + - ``ANYERRor`` specifies a search based on any error type. + """ + + +class SearchSearchItemTriggerABusCanDataValue(SCPICmdWrite): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on a CAN bus + signal. The search condition must be set to IDANDDATA OR DATA. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:VALue + ``` + + Info: + - ```` + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusCanDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to be used when + searching on a CAN bus signal. The search condition must be set to IDANDDATA or DATA. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe?`` 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:BUS:CAN:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. + """ + + +class SearchSearchItemTriggerABusCanDataQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier`` command. + + Description: + - This command sets or queries the CAN bus trigger data qualifier to be used when searching + on a CAN bus signal. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier?`` 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:BUS:CAN:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier {EQUal|LESSEQual|MOREEQua|UNEQual|LESSthan|MOREthan} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier? + ``` + + Info: + - ``EQUal`` sets the data qualifier to equal. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQua`` sets the data qualifier to more equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusCanDataOffset(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet`` command. + + Description: + - This command sets or queries the data offset value, in bytes, to use when searching on the + CAN data field. The search number is specified by x. The search condition must be set to + DATA or IDANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet?`` 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:BUS:CAN:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet? + ``` + + Info: + - ```` is an integer whose minimum and default values are -1 (don't care) and maximum + is up to 7 (for CAN 2.0) or up to 63 (for ISO CAN FD and Non-ISO CAN FD). The maximum is + dependent on the number of bytes being matched and the CAN standard selected. Its value is + calculated as [Absolute Maximum] - [Data Match Size]. For CAN 2.0, the absolute maximum is + 8 bytes. For ISO CAN FD and Non-ISO CAN FD, the absolute maximum is 64 bytes. The minimum + data match size is 1 byte, which produces the ranges listed above. Increasing the data + match size above 1 byte will adjust the range of valid data offset values accordingly. + """ + + +class SearchSearchItemTriggerABusCanDataDirection(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection`` command. + + Description: + - This command specifies the CAN search type to be valid on a Read, Write, or Either + condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection?`` 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:BUS:CAN:DATa:DIRection value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection {READ|WRITE|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection? + ``` + + Info: + - ``READ`` specifies the read direction. + - ``WRITE`` specifies the write direction. + - ``NOCARE`` specifies either data direction. + """ + + +class SearchSearchItemTriggerABusCanData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.direction``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._direction = SearchSearchItemTriggerABusCanDataDirection( + device, f"{self._cmd_syntax}:DIRection" + ) + self._offset = SearchSearchItemTriggerABusCanDataOffset( + device, f"{self._cmd_syntax}:OFFSet" + ) + self._qualifier = SearchSearchItemTriggerABusCanDataQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._size = SearchSearchItemTriggerABusCanDataSize(device, f"{self._cmd_syntax}:SIZe") + self._value = SearchSearchItemTriggerABusCanDataValue(device, f"{self._cmd_syntax}:VALue") + + @property + def direction(self) -> SearchSearchItemTriggerABusCanDataDirection: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection`` command. + + Description: + - This command specifies the CAN search type to be valid on a Read, Write, or Either + condition. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection?`` 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:BUS:CAN:DATa:DIRection value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection {READ|WRITE|NOCARE} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection? + ``` + + Info: + - ``READ`` specifies the read direction. + - ``WRITE`` specifies the write direction. + - ``NOCARE`` specifies either data direction. + """ + return self._direction + + @property + def offset(self) -> SearchSearchItemTriggerABusCanDataOffset: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet`` command. + + Description: + - This command sets or queries the data offset value, in bytes, to use when searching on + the CAN data field. The search number is specified by x. The search condition must be + set to DATA or IDANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet?`` 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:BUS:CAN:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet? + ``` + + Info: + - ```` is an integer whose minimum and default values are -1 (don't care) and + maximum is up to 7 (for CAN 2.0) or up to 63 (for ISO CAN FD and Non-ISO CAN FD). The + maximum is dependent on the number of bytes being matched and the CAN standard + selected. Its value is calculated as [Absolute Maximum] - [Data Match Size]. For CAN + 2.0, the absolute maximum is 8 bytes. For ISO CAN FD and Non-ISO CAN FD, the absolute + maximum is 64 bytes. The minimum data match size is 1 byte, which produces the ranges + listed above. Increasing the data match size above 1 byte will adjust the range of + valid data offset values accordingly. + """ + return self._offset + + @property + def qualifier(self) -> SearchSearchItemTriggerABusCanDataQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier`` command. + + Description: + - This command sets or queries the CAN bus trigger data qualifier to be used when + searching on a CAN bus signal. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier?`` 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:BUS:CAN:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier {EQUal|LESSEQual|MOREEQua|UNEQual|LESSthan|MOREthan} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier? + ``` + + Info: + - ``EQUal`` sets the data qualifier to equal. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQua`` sets the data qualifier to more equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + """ # noqa: E501 + return self._qualifier + + @property + def size(self) -> SearchSearchItemTriggerABusCanDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to be used when + searching on a CAN bus signal. The search condition must be set to IDANDDATA or DATA. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe?`` 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:BUS:CAN:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe? + ``` + + Info: + - ```` specifies the data size. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusCanDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on a CAN + bus signal. The search condition must be set to IDANDDATA OR DATA. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:VALue + ``` + + Info: + - ```` + """ + return self._value + + +class SearchSearchItemTriggerABusCanCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition`` command. + + Description: + - This command sets or queries the search condition for a CAN bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition?`` 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:BUS:CAN:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition {SOF|FRAMEtype|IDentifier|DATa|IDANDDATA|EOF|ERRor|FDBITS} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition? + ``` + + Info: + - ``SOF`` specifies the search condition for a CAN bus as start of frame. + - ``FRAMEtype`` specifies the search condition for a CAN bus as frame type. + - ``IDentifier`` specifies the search condition for a CAN bus as identifier. + - ``IDANDDATA`` specifies the search condition for a CAN bus as ID and data. + - ``EOF`` specifies the search condition for a CAN bus as end of frame. + - ``ERRor`` specifies the search condition for a CAN bus as error. + - ``FDBITS`` specifies the search condition for a CAN bus as FD bits. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusCan(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType`` command. + - ``.fd``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD`` command tree. + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype`` command. + - ``.identifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusCanCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusCanData(device, f"{self._cmd_syntax}:DATa") + self._errtype = SearchSearchItemTriggerABusCanErrtype(device, f"{self._cmd_syntax}:ERRType") + self._fd = SearchSearchItemTriggerABusCanFd(device, f"{self._cmd_syntax}:FD") + self._frametype = SearchSearchItemTriggerABusCanFrametype( + device, f"{self._cmd_syntax}:FRAMEtype" + ) + self._identifier = SearchSearchItemTriggerABusCanIdentifier( + device, f"{self._cmd_syntax}:IDentifier" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusCanCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition`` command. + + Description: + - This command sets or queries the search condition for a CAN bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition?`` 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:BUS:CAN:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition {SOF|FRAMEtype|IDentifier|DATa|IDANDDATA|EOF|ERRor|FDBITS} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition? + ``` + + Info: + - ``SOF`` specifies the search condition for a CAN bus as start of frame. + - ``FRAMEtype`` specifies the search condition for a CAN bus as frame type. + - ``IDentifier`` specifies the search condition for a CAN bus as identifier. + - ``IDANDDATA`` specifies the search condition for a CAN bus as ID and data. + - ``EOF`` specifies the search condition for a CAN bus as end of frame. + - ``ERRor`` specifies the search condition for a CAN bus as error. + - ``FDBITS`` specifies the search condition for a CAN bus as FD bits. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusCanData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.direction``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:DIRection`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:QUALifier`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa:VALue`` command. + """ + return self._data + + @property + def errtype(self) -> SearchSearchItemTriggerABusCanErrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType`` command. + + Description: + - This command sets or queries the type of error condition for a CAN bus to search on. + The search number is specified by x. The search condition must be set to ERRor. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType?`` 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:BUS:CAN:ERRType value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType {ACKMISS|BITSTUFFing|FORMERRor|ANYERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType? + ``` + + Info: + - ``ACKMISS`` specifies a search based on a missing ACK field. + - ``BITSTUFFing`` specifies a search based on a bit stuffing error. + - ``FORMERRor`` specifies a search based on a CAN FD form error. To use this option, the + CAN standard must be set to FDISO or FDNONISO. + - ``ANYERRor`` specifies a search based on any error type. + """ + return self._errtype + + @property + def fd(self) -> SearchSearchItemTriggerABusCanFd: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.brsbit``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:BRSBit`` command. + - ``.esibit``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD:ESIBit`` command. + """ + return self._fd + + @property + def frametype(self) -> SearchSearchItemTriggerABusCanFrametype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype`` command. + + Description: + - This command sets or queries CAN bus trigger frame type to be used when searching on a + CAN bus signal. The search condition must be set to FRAMEtype. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype?`` 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:BUS:CAN:FRAMEtype value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype {DATa|ERRor|OVERLoad|REMote} + - SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype? + ``` + + Info: + - ``DATa`` sets the frame type to data. + - ``ERRor`` sets the frame type to error. + - ``OVERLoad`` sets the frame type to overload. + - ``REMote`` sets the frame type to remote. + """ + return self._frametype + + @property + def identifier(self) -> SearchSearchItemTriggerABusCanIdentifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:MODe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier:VALue`` command. + """ + return self._identifier + + +class SearchSearchItemTriggerABusBS8b10bCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition`` command. + + Description: + - This command sets or queries the type of data search for an 8B10B bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition?`` 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:BUS:B:S8B10B:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition {SYMbols|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``SYMbols`` specifies the search condition as data or control. + - ``ERRors`` specifies the search condition as Symbol error or disparity error. + """ + + +class SearchSearchItemTriggerABusBS8b10b(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusBS8b10bCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusBS8b10bCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition`` command. + + Description: + - This command sets or queries the type of data search for an 8B10B bus. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition?`` 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:BUS:B:S8B10B:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition {SYMbols|ERRors} + - SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``SYMbols`` specifies the search condition as data or control. + - ``ERRors`` specifies the search condition as Symbol error or disparity error. + """ + return self._condition + + +class SearchSearchItemTriggerABusBPsifiveStatusValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue`` command. + + Description: + - This command sets or queries the binary status string used for PSI5 triggering if the + trigger condition is status. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue?`` 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:BUS:B:PSIFIVe:STATus:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, and X + for values in binary format; and A-F, 0-9, and X for values in hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusBPsifiveStatus(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusBPsifiveStatusValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusBPsifiveStatusValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue`` command. + + Description: + - This command sets or queries the binary status string used for PSI5 triggering if the + trigger condition is status. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue?`` 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:BUS:B:PSIFIVe:STATus:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, + and X for values in binary format; and A-F, 0-9, and X for values in hexadecimal + format. + """ + return self._value + + +class SearchSearchItemTriggerABusBPsifiveSensorAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue`` command. + + Description: + - This command sets or queries the binary sensor address string used for PSI5 triggering if + the trigger condition is Sensor Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue?`` 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:BUS:B:PSIFIVe:SENSor:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, and X + for values in binary format; and A-F, 0-9, and X for values in hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusBPsifiveSensorAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusBPsifiveSensorAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusBPsifiveSensorAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue`` command. + + Description: + - This command sets or queries the binary sensor address string used for PSI5 triggering + if the trigger condition is Sensor Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue?`` 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:BUS:B:PSIFIVe:SENSor:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, + and X for values in binary format; and A-F, 0-9, and X for values in hexadecimal + format. + """ + return self._value + + +class SearchSearchItemTriggerABusBPsifiveSensor(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess`` command + tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusBPsifiveSensorAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusBPsifiveSensorAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue`` + command. + """ + return self._address + + +class SearchSearchItemTriggerABusBPsifiveSensorstatusType(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe`` command. + + Description: + - This command sets or queries the sensor status for PSI5 bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe?`` 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:BUS:B:PSIFIVe:SENSORSTATus:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe {READy|BUSY|DEFect|SERVICEMODe|UNLocked} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe? + ``` + + Info: + - ``READy`` specifies the sensor status as ready. This is the default value. + - ``BUSY`` specifies the sensor status as busy. + - ``DEFect`` specifies the sensor status as defect. + - ``SERVICEMODe`` specifies the sensor status as service mode. + - ``UNLocked`` specifies the sensor status as unlocked. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusBPsifiveSensorstatus(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SearchSearchItemTriggerABusBPsifiveSensorstatusType( + device, f"{self._cmd_syntax}:TYPe" + ) + + @property + def type(self) -> SearchSearchItemTriggerABusBPsifiveSensorstatusType: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe`` command. + + Description: + - This command sets or queries the sensor status for PSI5 bus. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe?`` 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:BUS:B:PSIFIVe:SENSORSTATus:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe {READy|BUSY|DEFect|SERVICEMODe|UNLocked} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe? + ``` + + Info: + - ``READy`` specifies the sensor status as ready. This is the default value. + - ``BUSY`` specifies the sensor status as busy. + - ``DEFect`` specifies the sensor status as defect. + - ``SERVICEMODe`` specifies the sensor status as service mode. + - ``UNLocked`` specifies the sensor status as unlocked. + """ # noqa: E501 + return self._type + + +class SearchSearchItemTriggerABusBPsifiveRegisterAddressValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue`` command. + + Description: + - This command sets or queries the binary register address string used for PSI5 triggering + if the trigger condition is Register Address. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue?`` 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:BUS:B:PSIFIVe:REGister:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, and X + for values in binary format; and A-F, 0-9, and X for values in hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusBPsifiveRegisterAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusBPsifiveRegisterAddressValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusBPsifiveRegisterAddressValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue`` command. + + Description: + - This command sets or queries the binary register address string used for PSI5 + triggering if the trigger condition is Register Address. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue?`` 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:BUS:B:PSIFIVe:REGister:ADDRess:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, + and X for values in binary format; and A-F, 0-9, and X for values in hexadecimal + format. + """ + return self._value + + +class SearchSearchItemTriggerABusBPsifiveRegister(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess`` command + tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusBPsifiveRegisterAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusBPsifiveRegisterAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue`` + command. + """ + return self._address + + +class SearchSearchItemTriggerABusBPsifiveRegisteraddress(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess`` command. + + Description: + - This command sets or queries the register address for PSI5 bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess?`` 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:BUS:B:PSIFIVe:REGISTERADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess {TWOBIT|SIXBIT|EIGHTBIT} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess? + ``` + + Info: + - ``TWOBIT`` specifies the register address value as 2 bit. This is the default value. + - ``SIXBIT`` specifies the register address value as 6 bit. + - ``EIGHTBIT`` specifies the register address value as 8 bit. + """ + + +class SearchSearchItemTriggerABusBPsifiveFunctioncodetype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe`` command. + + Description: + - This command sets or queries the binary data string used for PSI5 triggering if the + trigger condition is a Function Code. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe?`` 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:BUS:B:PSIFIVe:FUNCTIONCODETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, and X + for values in binary format; and A-F, 0-9, and X for values in hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusBPsifiveErrortype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe`` command. + + Description: + - This command sets or queries the error type for an PSI5 bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe?`` 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:BUS:B:PSIFIVe:ERRORTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe {ANY|PARity|CRC|RESPONSECODe} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe? + ``` + + Info: + - ``ANY`` specifies the error type value as any. This is the default value. + - ``PARity`` specifies the error type value as parity. + - ``CRC`` specifies the error type value as CRC. + - ``RESPONSECODe`` specifies the error type value as response code. + """ + + +class SearchSearchItemTriggerABusBPsifiveDataRegionBValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue`` command. + + Description: + - This command sets or queries the binary data string used for PSI5 triggering if the + trigger condition is data region B. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue?`` 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:BUS:B:PSIFIVe:DATa:REGion:B:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, and X + for values in binary format; and A-F, 0-9, and X for values in hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusBPsifiveDataRegionB(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusBPsifiveDataRegionBValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusBPsifiveDataRegionBValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue`` command. + + Description: + - This command sets or queries the binary data string used for PSI5 triggering if the + trigger condition is data region B. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue?`` 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:BUS:B:PSIFIVe:DATa:REGion:B:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, + and X for values in binary format; and A-F, 0-9, and X for values in hexadecimal + format. + """ + return self._value + + +class SearchSearchItemTriggerABusBPsifiveDataRegionAValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue`` command. + + Description: + - This command sets or queries the binary data string used for PSI5 triggering if the + trigger condition is data region A. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue?`` 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:BUS:B:PSIFIVe:DATa:REGion:A:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, and X + for values in binary format; and A-F, 0-9, and X for values in hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusBPsifiveDataRegionA(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusBPsifiveDataRegionAValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusBPsifiveDataRegionAValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue`` command. + + Description: + - This command sets or queries the binary data string used for PSI5 triggering if the + trigger condition is data region A. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue?`` 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:BUS:B:PSIFIVe:DATa:REGion:A:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, + and X for values in binary format; and A-F, 0-9, and X for values in hexadecimal + format. + """ + return self._value + + +class SearchSearchItemTriggerABusBPsifiveDataRegion(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.a``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A`` command tree. + - ``.b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._a = SearchSearchItemTriggerABusBPsifiveDataRegionA(device, f"{self._cmd_syntax}:A") + self._b = SearchSearchItemTriggerABusBPsifiveDataRegionB(device, f"{self._cmd_syntax}:B") + + @property + def a(self) -> SearchSearchItemTriggerABusBPsifiveDataRegionA: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue`` + command. + """ + return self._a + + @property + def b(self) -> SearchSearchItemTriggerABusBPsifiveDataRegionB: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue`` + command. + """ + return self._b + + +class SearchSearchItemTriggerABusBPsifiveDataEcuSensorValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue`` command. + + Description: + - This command sets or queries the binary Data string used for PSI5 triggering if the + trigger condition is Data in ECU to Sensor communication mode. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue?`` 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:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, and X + for values in binary format; and A-F, 0-9, and X for values in hexadecimal format. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusBPsifiveDataEcuSensor(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusBPsifiveDataEcuSensorValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusBPsifiveDataEcuSensorValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue`` command. + + Description: + - This command sets or queries the binary Data string used for PSI5 triggering if the + trigger condition is Data in ECU to Sensor communication mode. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue?`` 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:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, + and X for values in binary format; and A-F, 0-9, and X for values in hexadecimal + format. + """ + return self._value + + +class SearchSearchItemTriggerABusBPsifiveDataEcu(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.sensor``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor`` command + tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._sensor = SearchSearchItemTriggerABusBPsifiveDataEcuSensor( + device, f"{self._cmd_syntax}:SENSor" + ) + + @property + def sensor(self) -> SearchSearchItemTriggerABusBPsifiveDataEcuSensor: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue`` + command. + """ + return self._sensor + + +class SearchSearchItemTriggerABusBPsifiveData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.ecu``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU`` command tree. + - ``.region``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ecu = SearchSearchItemTriggerABusBPsifiveDataEcu(device, f"{self._cmd_syntax}:ECU") + self._region = SearchSearchItemTriggerABusBPsifiveDataRegion( + device, f"{self._cmd_syntax}:REGion" + ) + + @property + def ecu(self) -> SearchSearchItemTriggerABusBPsifiveDataEcu: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.sensor``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor`` command + tree. + """ + return self._ecu + + @property + def region(self) -> SearchSearchItemTriggerABusBPsifiveDataRegion: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.a``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A`` command tree. + - ``.b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B`` command tree. + """ + return self._region + + +class SearchSearchItemTriggerABusBPsifiveDatabits(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs`` command. + + Description: + - This command sets or queries the binary register address string used for PSI5 triggering + if the trigger condition is Data in ECU to Sensor communication mode. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs?`` 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:BUS:B:PSIFIVe:DATABITs value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs {FOURBIT|EIGHTBIT|TWENTYBIT} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs? + ``` + + Info: + - ``FOURBIT`` specifies the data bit value as 4 bit. + - ``EIGHTBIT`` specifies the data bit value as 8 bit. + - ``TWENTYBIT`` specifies the data bit value as 20 bit. + """ + + +class SearchSearchItemTriggerABusBPsifiveCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for an PSI5 bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition?`` 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:BUS:B:PSIFIVe:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition {STARt|STATus|DATa|BLOCkid|SENSORSTATus|ERRors|STARTBIT|FUNCTIONCODe|ECUDATa|SENSORADDRess|REGISTERADDRess|SENSORSTATus|CRCERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition? + ``` + + Info: + - ``STARt`` specifies the search condition as Start. This is the default trigger. + - ``STATus`` specifies the search condition as Status. + - ``DATa`` specifies the search condition as Data. + - ``BLOCkid`` specifies the search condition as Block ID. + - ``SENSORSTATus`` specifies the search condition as Sensor Status. + - ``ERRors`` specifies the search condition as Errors. + - ``STARTBIT`` specifies the search condition as Start Bit. + - ``FUNCTIONCODe`` specifies the search condition as Function Code. + - ``ECUDATa`` specifies the search condition as ECU Data. + - ``SENSORADDRess`` specifies the search condition as Sensor Address. + - ``REGISTERADDRess`` specifies the search condition as Register Address. + - ``SENSORSTATus`` specifies the search condition as Sensor Status. + - ``CRCERRor`` specifies the search condition as CRC Error. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusBPsifiveBlockdataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue`` command. + + Description: + - This command sets or queries the binary block data string used for PSI5 triggering if the + trigger condition is block id. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue?`` 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:BUS:B:PSIFIVe:BLOCKDATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue? + ``` + + Info: + - ```` specifies the binary block data string. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusBPsifiveBlockdata(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusBPsifiveBlockdataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusBPsifiveBlockdataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue`` command. + + Description: + - This command sets or queries the binary block data string used for PSI5 triggering if + the trigger condition is block id. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue?`` 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:BUS:B:PSIFIVe:BLOCKDATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue? + ``` + + Info: + - ```` specifies the binary block data string. + """ + return self._value + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerABusBPsifive(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.blockdata``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition`` command. + - ``.databits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa`` command tree. + - ``.errortype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe`` command. + - ``.functioncodetype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe`` + command. + - ``.registeraddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess`` + command. + - ``.register``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister`` command tree. + - ``.sensorstatus``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus`` command + tree. + - ``.sensor``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor`` command tree. + - ``.status``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._blockdata = SearchSearchItemTriggerABusBPsifiveBlockdata( + device, f"{self._cmd_syntax}:BLOCKDATa" + ) + self._condition = SearchSearchItemTriggerABusBPsifiveCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._databits = SearchSearchItemTriggerABusBPsifiveDatabits( + device, f"{self._cmd_syntax}:DATABITs" + ) + self._data = SearchSearchItemTriggerABusBPsifiveData(device, f"{self._cmd_syntax}:DATa") + self._errortype = SearchSearchItemTriggerABusBPsifiveErrortype( + device, f"{self._cmd_syntax}:ERRORTYPe" + ) + self._functioncodetype = SearchSearchItemTriggerABusBPsifiveFunctioncodetype( + device, f"{self._cmd_syntax}:FUNCTIONCODETYPe" + ) + self._registeraddress = SearchSearchItemTriggerABusBPsifiveRegisteraddress( + device, f"{self._cmd_syntax}:REGISTERADDRess" + ) + self._register = SearchSearchItemTriggerABusBPsifiveRegister( + device, f"{self._cmd_syntax}:REGister" + ) + self._sensorstatus = SearchSearchItemTriggerABusBPsifiveSensorstatus( + device, f"{self._cmd_syntax}:SENSORSTATus" + ) + self._sensor = SearchSearchItemTriggerABusBPsifiveSensor( + device, f"{self._cmd_syntax}:SENSor" + ) + self._status = SearchSearchItemTriggerABusBPsifiveStatus( + device, f"{self._cmd_syntax}:STATus" + ) + + @property + def blockdata(self) -> SearchSearchItemTriggerABusBPsifiveBlockdata: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue`` command. + """ + return self._blockdata + + @property + def condition(self) -> SearchSearchItemTriggerABusBPsifiveCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition`` command. + + Description: + - This command sets or queries the trigger condition for an PSI5 bus. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition?`` 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:BUS:B:PSIFIVe:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition {STARt|STATus|DATa|BLOCkid|SENSORSTATus|ERRors|STARTBIT|FUNCTIONCODe|ECUDATa|SENSORADDRess|REGISTERADDRess|SENSORSTATus|CRCERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition? + ``` + + Info: + - ``STARt`` specifies the search condition as Start. This is the default trigger. + - ``STATus`` specifies the search condition as Status. + - ``DATa`` specifies the search condition as Data. + - ``BLOCkid`` specifies the search condition as Block ID. + - ``SENSORSTATus`` specifies the search condition as Sensor Status. + - ``ERRors`` specifies the search condition as Errors. + - ``STARTBIT`` specifies the search condition as Start Bit. + - ``FUNCTIONCODe`` specifies the search condition as Function Code. + - ``ECUDATa`` specifies the search condition as ECU Data. + - ``SENSORADDRess`` specifies the search condition as Sensor Address. + - ``REGISTERADDRess`` specifies the search condition as Register Address. + - ``SENSORSTATus`` specifies the search condition as Sensor Status. + - ``CRCERRor`` specifies the search condition as CRC Error. + """ # noqa: E501 + return self._condition + + @property + def databits(self) -> SearchSearchItemTriggerABusBPsifiveDatabits: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs`` command. + + Description: + - This command sets or queries the binary register address string used for PSI5 + triggering if the trigger condition is Data in ECU to Sensor communication mode. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs?`` 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:BUS:B:PSIFIVe:DATABITs value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs {FOURBIT|EIGHTBIT|TWENTYBIT} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs? + ``` + + Info: + - ``FOURBIT`` specifies the data bit value as 4 bit. + - ``EIGHTBIT`` specifies the data bit value as 8 bit. + - ``TWENTYBIT`` specifies the data bit value as 20 bit. + """ + return self._databits + + @property + def data(self) -> SearchSearchItemTriggerABusBPsifiveData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.ecu``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU`` command tree. + - ``.region``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion`` command + tree. + """ + return self._data + + @property + def errortype(self) -> SearchSearchItemTriggerABusBPsifiveErrortype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe`` command. + + Description: + - This command sets or queries the error type for an PSI5 bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe?`` 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:BUS:B:PSIFIVe:ERRORTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe {ANY|PARity|CRC|RESPONSECODe} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe? + ``` + + Info: + - ``ANY`` specifies the error type value as any. This is the default value. + - ``PARity`` specifies the error type value as parity. + - ``CRC`` specifies the error type value as CRC. + - ``RESPONSECODe`` specifies the error type value as response code. + """ + return self._errortype + + @property + def functioncodetype(self) -> SearchSearchItemTriggerABusBPsifiveFunctioncodetype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe`` command. + + Description: + - This command sets or queries the binary data string used for PSI5 triggering if the + trigger condition is a Function Code. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe?`` 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:BUS:B:PSIFIVe:FUNCTIONCODETYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe? + ``` + + Info: + - ```` specifies the value of the data string. The valid characters are 0, 1, + and X for values in binary format; and A-F, 0-9, and X for values in hexadecimal + format. + """ + return self._functioncodetype + + @property + def registeraddress(self) -> SearchSearchItemTriggerABusBPsifiveRegisteraddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess`` command. + + Description: + - This command sets or queries the register address for PSI5 bus. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess?`` 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:BUS:B:PSIFIVe:REGISTERADDRess value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess {TWOBIT|SIXBIT|EIGHTBIT} + - SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess? + ``` + + Info: + - ``TWOBIT`` specifies the register address value as 2 bit. This is the default value. + - ``SIXBIT`` specifies the register address value as 6 bit. + - ``EIGHTBIT`` specifies the register address value as 8 bit. + """ + return self._registeraddress + + @property + def register(self) -> SearchSearchItemTriggerABusBPsifiveRegister: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess`` + command tree. + """ + return self._register + + @property + def sensorstatus(self) -> SearchSearchItemTriggerABusBPsifiveSensorstatus: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe`` command. + """ + return self._sensorstatus + + @property + def sensor(self) -> SearchSearchItemTriggerABusBPsifiveSensor: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess`` command + tree. + """ + return self._sensor + + @property + def status(self) -> SearchSearchItemTriggerABusBPsifiveStatus: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue`` command. + """ + return self._status + + +class SearchSearchItemTriggerABusBNrzCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition`` command. + + Description: + - This command specifies a field or condition for an NRZ bus to search on. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition?`` 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:BUS:B:NRZ:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition {DATa} + - SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``DATa`` specifies the search condition as Data Characters. + """ + + +class SearchSearchItemTriggerABusBNrz(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusBNrzCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusBNrzCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition`` command. + + Description: + - This command specifies a field or condition for an NRZ bus to search on. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition?`` 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:BUS:B:NRZ:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition {DATa} + - SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition? + ``` + + Info: + - ``Search`` is the number of the search. + - ``DATa`` specifies the search condition as Data Characters. + """ + return self._condition + + +class SearchSearchItemTriggerABusB(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.nrz``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ`` command tree. + - ``.psifive``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe`` command tree. + - ``.s8b10b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._nrz = SearchSearchItemTriggerABusBNrz(device, f"{self._cmd_syntax}:NRZ") + self._psifive = SearchSearchItemTriggerABusBPsifive(device, f"{self._cmd_syntax}:PSIFIVe") + self._s8b10b = SearchSearchItemTriggerABusBS8b10b(device, f"{self._cmd_syntax}:S8B10B") + + @property + def nrz(self) -> SearchSearchItemTriggerABusBNrz: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition`` command. + """ + return self._nrz + + @property + def psifive(self) -> SearchSearchItemTriggerABusBPsifive: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.blockdata``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa`` command + tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition`` command. + - ``.databits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa`` command tree. + - ``.errortype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe`` command. + - ``.functioncodetype``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe`` command. + - ``.registeraddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess`` + command. + - ``.register``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister`` command tree. + - ``.sensorstatus``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus`` + command tree. + - ``.sensor``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor`` command tree. + - ``.status``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus`` command tree. + """ + return self._psifive + + @property + def s8b10b(self) -> SearchSearchItemTriggerABusBS8b10b: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition`` command. + """ + return self._s8b10b + + +class SearchSearchItemTriggerABusAutoethernetTcpheaderSourceportValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue`` command. + + Description: + - This command sets or queries the binary source port value to use when searching on an + AutoEthernet bus signal. The search condition needs to be set to TCPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue?`` 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:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 16 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetTcpheaderSourceport(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetTcpheaderSourceportValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetTcpheaderSourceportValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue`` command. + + Description: + - This command sets or queries the binary source port value to use when searching on an + AutoEthernet bus signal. The search condition needs to be set to TCPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue?`` 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:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 16 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetTcpheaderSeqnumValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue`` command. + + Description: + - This command sets or queries the TCP header sequence number value to use when searching on + the AutoEthernet TCP header destination port number. The search condition needs to be set + to TCPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue?`` 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:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetTcpheaderSeqnum(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetTcpheaderSeqnumValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetTcpheaderSeqnumValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue`` command. + + Description: + - This command sets or queries the TCP header sequence number value to use when + searching on the AutoEthernet TCP header destination port number. The search condition + needs to be set to TCPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue?`` 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:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetTcpheaderDestinationportValue( + SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue`` command. + + Description: + - This command sets or queries the binary destination port value to use when searching on + the AutoEthernet TCP header destination port number. The search condition needs to be set + to TCPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue?`` 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:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 16 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetTcpheaderDestinationport(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetTcpheaderDestinationportValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetTcpheaderDestinationportValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue`` command. + + Description: + - This command sets or queries the binary destination port value to use when searching + on the AutoEthernet TCP header destination port number. The search condition needs to + be set to TCPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue?`` 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:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 16 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetTcpheaderAcknumValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue`` command. + + Description: + - This command sets or queries the binary ack number value to use when searching on an + AutoEthernet bus signal. The default is all X's (don't care). The search condition needs + to be set to TCPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue?`` 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:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetTcpheaderAcknum(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetTcpheaderAcknumValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetTcpheaderAcknumValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue`` command. + + Description: + - This command sets or queries the binary ack number value to use when searching on an + AutoEthernet bus signal. The default is all X's (don't care). The search condition + needs to be set to TCPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue?`` 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:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetTcpheader(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.acknum``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum`` command + tree. + - ``.destinationport``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport`` command tree. + - ``.seqnum``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum`` command + tree. + - ``.sourceport``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport`` + command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._acknum = SearchSearchItemTriggerABusAutoethernetTcpheaderAcknum( + device, f"{self._cmd_syntax}:ACKnum" + ) + self._destinationport = SearchSearchItemTriggerABusAutoethernetTcpheaderDestinationport( + device, f"{self._cmd_syntax}:DESTinationport" + ) + self._seqnum = SearchSearchItemTriggerABusAutoethernetTcpheaderSeqnum( + device, f"{self._cmd_syntax}:SEQnum" + ) + self._sourceport = SearchSearchItemTriggerABusAutoethernetTcpheaderSourceport( + device, f"{self._cmd_syntax}:SOUrceport" + ) + + @property + def acknum(self) -> SearchSearchItemTriggerABusAutoethernetTcpheaderAcknum: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum:VALue`` + command. + """ + return self._acknum + + @property + def destinationport(self) -> SearchSearchItemTriggerABusAutoethernetTcpheaderDestinationport: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue`` + command. + """ + return self._destinationport + + @property + def seqnum(self) -> SearchSearchItemTriggerABusAutoethernetTcpheaderSeqnum: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue`` + command. + """ + return self._seqnum + + @property + def sourceport(self) -> SearchSearchItemTriggerABusAutoethernetTcpheaderSourceport: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue`` command. + """ + return self._sourceport + + +class SearchSearchItemTriggerABusAutoethernetQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on an AutoEthernet + bus signal. The search condition must be set to Client Data or MAC Length/Type. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier?`` 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:BUS:AUTOETHERnet:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier? + ``` + + Info: + - ``Search`` is the Search number. + - ``LESSthan`` sets the qualifier to less than. + - ``MOREthan`` sets the qualifier to greater than. + - ``EQual`` sets the qualifier to equal. + - ``UNEQual`` sets the qualifier to not equal. + - ``LESSEQual`` sets the qualifier to less than or equal. + - ``MOREEQual`` sets the qualifier to greater than or equal. + - ``INrange`` sets the qualifier to in range. + - ``OUTrange`` sets the qualifier to out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusAutoethernetQtagValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue`` command. + + Description: + - This command sets or queries the binary Q-tag information to use when searching on an + AutoEthernet bus signal. The search condition needs to be set to QTAG. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue?`` 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:BUS:AUTOETHERnet:QTAG:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetQtag(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetQtagValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetQtagValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue`` command. + + Description: + - This command sets or queries the binary Q-tag information to use when searching on an + AutoEthernet bus signal. The search condition needs to be set to QTAG. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue?`` 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:BUS:AUTOETHERnet:QTAG:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetMacLengthValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue`` command. + + Description: + - This command sets or queries the MAC length value to use when searching on an Ethernet bus + signal. The search condition needs to be set to MACADDRess. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue?`` 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:BUS:AUTOETHERnet:MAC:LENgth:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 16 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetMacLengthHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue`` command. + + Description: + - This command sets or queries the binary MAC length high value to use when searching on an + AutoEthernet bus signal. The search condition needs to be set to MACADDRess. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue?`` 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:BUS:AUTOETHERnet:MAC:LENgth:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 16 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetMacLength(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusAutoethernetMacLengthHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._value = SearchSearchItemTriggerABusAutoethernetMacLengthValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusAutoethernetMacLengthHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue`` command. + + Description: + - This command sets or queries the binary MAC length high value to use when searching on + an AutoEthernet bus signal. The search condition needs to be set to MACADDRess. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue?`` 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:BUS:AUTOETHERnet:MAC:LENgth:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 16 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._hivalue + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetMacLengthValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue`` command. + + Description: + - This command sets or queries the MAC length value to use when searching on an Ethernet + bus signal. The search condition needs to be set to MACADDRess. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue?`` 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:BUS:AUTOETHERnet:MAC:LENgth:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 16 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetMacAddressSourceValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue`` command. + + Description: + - This command sets or queries the binary MAC address source value to use when searching on + an AutoEthernet bus signal. The search condition needs to be set to MACADDRess. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue?`` 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:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 48 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetMacAddressSource(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetMacAddressSourceValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetMacAddressSourceValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue`` command. + + Description: + - This command sets or queries the binary MAC address source value to use when searching + on an AutoEthernet bus signal. The search condition needs to be set to MACADDRess. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue?`` 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:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 48 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetMacAddressDestinationValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue`` command. + + Description: + - This command sets or queries the binary MAC address destination value to use when + searching on an AutoEthernet bus signal. The search condition needs to be set to + MACADDRess. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue?`` 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:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 48 characters where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetMacAddressDestination(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetMacAddressDestinationValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetMacAddressDestinationValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue`` command. + + Description: + - This command sets or queries the binary MAC address destination value to use when + searching on an AutoEthernet bus signal. The search condition needs to be set to + MACADDRess. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue?`` 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:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 48 characters where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetMacAddress(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.destination``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination`` command tree. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce`` + command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._destination = SearchSearchItemTriggerABusAutoethernetMacAddressDestination( + device, f"{self._cmd_syntax}:DESTination" + ) + self._source = SearchSearchItemTriggerABusAutoethernetMacAddressSource( + device, f"{self._cmd_syntax}:SOUrce" + ) + + @property + def destination(self) -> SearchSearchItemTriggerABusAutoethernetMacAddressDestination: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination:VALue`` command. + """ + return self._destination + + @property + def source(self) -> SearchSearchItemTriggerABusAutoethernetMacAddressSource: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce:VALue`` command. + """ + return self._source + + +class SearchSearchItemTriggerABusAutoethernetMac(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess`` command + tree. + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = SearchSearchItemTriggerABusAutoethernetMacAddress( + device, f"{self._cmd_syntax}:ADDRess" + ) + self._length = SearchSearchItemTriggerABusAutoethernetMacLength( + device, f"{self._cmd_syntax}:LENgth" + ) + + @property + def address(self) -> SearchSearchItemTriggerABusAutoethernetMacAddress: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.destination``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:DESTination`` command tree. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess:SOUrce`` + command tree. + """ + return self._address + + @property + def length(self) -> SearchSearchItemTriggerABusAutoethernetMacLength: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:HIVALue`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth:VALue`` + command. + """ + return self._length + + +class SearchSearchItemTriggerABusAutoethernetIpheaderSourceaddrValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue`` command. + + Description: + - This command sets or queries the binary source address value to use when searching on an + AutoEthernet bus signal. The search condition needs to be set to IPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue?`` 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:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters, where the allowable characters are + 0, 1, and X. The bits specified in the quoted string replace the least significant bits + (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetIpheaderSourceaddr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetIpheaderSourceaddrValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetIpheaderSourceaddrValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue`` command. + + Description: + - This command sets or queries the binary source address value to use when searching on + an AutoEthernet bus signal. The search condition needs to be set to IPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue?`` 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:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters, where the allowable characters + are 0, 1, and X. The bits specified in the quoted string replace the least significant + bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetIpheaderProtocolValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue`` command. + + Description: + - This command sets or queries the binary protocol value to use when searching on the + Ethernet bus signal. The search condition needs to be set to IPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue?`` 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:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to eight (8) characters where the allowable + characters are 0, 1, and X. The bits specified in the quoted string replace the least + significant bits (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetIpheaderProtocol(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue`` + command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetIpheaderProtocolValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetIpheaderProtocolValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue`` command. + + Description: + - This command sets or queries the binary protocol value to use when searching on the + Ethernet bus signal. The search condition needs to be set to IPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue?`` 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:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to eight (8) characters where the allowable + characters are 0, 1, and X. The bits specified in the quoted string replace the least + significant bits (LSB), leaving any unspecified upper bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetIpheaderDestinationaddrValue( + SCPICmdWrite, SCPICmdRead +): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue`` command. + + Description: + - This command sets or queries the binary destination address value to use when searching on + an AutoEthernet bus signal. The search condition needs to be set to IPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue?`` 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:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters that sets the IP address, where the + allowable characters are 0, 1, and X. The bits specified in the quoted string replace the + least significant bits (LSB), leaving any unspecified upper bits unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetIpheaderDestinationaddr(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusAutoethernetIpheaderDestinationaddrValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetIpheaderDestinationaddrValue: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue`` command. + + Description: + - This command sets or queries the binary destination address value to use when + searching on an AutoEthernet bus signal. The search condition needs to be set to + IPHeader. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue?`` 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:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string of up to 32 characters that sets the IP address, where + the allowable characters are 0, 1, and X. The bits specified in the quoted string + replace the least significant bits (LSB), leaving any unspecified upper bits + unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetIpheader(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.destinationaddr``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr`` command tree. + - ``.protocol``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol`` + command tree. + - ``.sourceaddr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr`` + command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._destinationaddr = SearchSearchItemTriggerABusAutoethernetIpheaderDestinationaddr( + device, f"{self._cmd_syntax}:DESTinationaddr" + ) + self._protocol = SearchSearchItemTriggerABusAutoethernetIpheaderProtocol( + device, f"{self._cmd_syntax}:PROTOcol" + ) + self._sourceaddr = SearchSearchItemTriggerABusAutoethernetIpheaderSourceaddr( + device, f"{self._cmd_syntax}:SOUrceaddr" + ) + + @property + def destinationaddr(self) -> SearchSearchItemTriggerABusAutoethernetIpheaderDestinationaddr: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr:VALue`` + command. + """ + return self._destinationaddr + + @property + def protocol(self) -> SearchSearchItemTriggerABusAutoethernetIpheaderProtocol: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol:VALue`` command. + """ + return self._protocol + + @property + def sourceaddr(self) -> SearchSearchItemTriggerABusAutoethernetIpheaderSourceaddr: + """``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr:VALue`` command. + """ + return self._sourceaddr + + +class SearchSearchItemTriggerABusAutoethernetDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue`` command. + + Description: + - This command sets or queries the binary value to use when searching on the AutoEthernet + bus signal. The search condition needs to be set to DATa. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue?`` 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:BUS:AUTOETHERnet:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string where the allowable characters are 0, 1, and X. The + allowable number of characters depends on the setting for size (using + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe``). The bits specified in the + quoted string replace the least significant bits (LSB), leaving any unspecified upper bits + unchanged. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetDataSize(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to use when + searching on the AutoEthernet bus signal. The search condition needs to be set to DATa. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe?`` 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:BUS:AUTOETHERnet:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe? + ``` + + Info: + - ``Search`` is the Search number. + - ``NR1`` sets the data length, in bytes. It is an integer value whose minimum and default + values are 1, and the maximum value is 16. + """ + + +class SearchSearchItemTriggerABusAutoethernetDataOffset(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet`` command. + + Description: + - This command sets or queries the data offset value, in bytes, to use when searching on the + AutoEthernet data field. The search condition needs to be set to DATa. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet?`` 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:BUS:AUTOETHERnet:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet? + ``` + + Info: + - ``Search`` is the Search number. + - ``NR1`` sets the data offset value, in bytes. It is an integer value whose minimum and + default values are -1 (don't care) and maximum is 1,499. + """ + + +class SearchSearchItemTriggerABusAutoethernetDataHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on an + AutoEthernet bus signal. The search condition must be set to DATA and the data qualifier + to inside or outside range. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue?`` 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:BUS:AUTOETHERnet:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` specifies the binary data value to be used when searching on an AutoEthernet + bus signal. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAutoethernetData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusAutoethernetDataHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._offset = SearchSearchItemTriggerABusAutoethernetDataOffset( + device, f"{self._cmd_syntax}:OFFSet" + ) + self._size = SearchSearchItemTriggerABusAutoethernetDataSize( + device, f"{self._cmd_syntax}:SIZe" + ) + self._value = SearchSearchItemTriggerABusAutoethernetDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusAutoethernetDataHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue`` command. + + Description: + - This command sets or queries the binary data value to be used when searching on an + AutoEthernet bus signal. The search condition must be set to DATA and the data + qualifier to inside or outside range. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue?`` 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:BUS:AUTOETHERnet:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` specifies the binary data value to be used when searching on an + AutoEthernet bus signal. + """ + return self._hivalue + + @property + def offset(self) -> SearchSearchItemTriggerABusAutoethernetDataOffset: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet`` command. + + Description: + - This command sets or queries the data offset value, in bytes, to use when searching on + the AutoEthernet data field. The search condition needs to be set to DATa. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet?`` 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:BUS:AUTOETHERnet:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet? + ``` + + Info: + - ``Search`` is the Search number. + - ``NR1`` sets the data offset value, in bytes. It is an integer value whose minimum and + default values are -1 (don't care) and maximum is 1,499. + """ + return self._offset + + @property + def size(self) -> SearchSearchItemTriggerABusAutoethernetDataSize: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe`` command. + + Description: + - This command sets or queries the length of the data string, in bytes, to use when + searching on the AutoEthernet bus signal. The search condition needs to be set to + DATa. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe?`` 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:BUS:AUTOETHERnet:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe? + ``` + + Info: + - ``Search`` is the Search number. + - ``NR1`` sets the data length, in bytes. It is an integer value whose minimum and + default values are 1, and the maximum value is 16. + """ + return self._size + + @property + def value(self) -> SearchSearchItemTriggerABusAutoethernetDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue`` command. + + Description: + - This command sets or queries the binary value to use when searching on the + AutoEthernet bus signal. The search condition needs to be set to DATa. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue?`` 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:BUS:AUTOETHERnet:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue? + ``` + + Info: + - ``Search`` is the Search number. + - ``QString`` is a quoted string where the allowable characters are 0, 1, and X. The + allowable number of characters depends on the setting for size (using + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe``). The bits specified in the + quoted string replace the least significant bits (LSB), leaving any unspecified upper + bits unchanged. + """ + return self._value + + +class SearchSearchItemTriggerABusAutoethernetCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition`` command. + + Description: + - This command sets or queries the field or condition for which to search an AutoEthernet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition?`` 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:BUS:AUTOETHERnet:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition {SSD|SFD|MACADDRess|MACLENgth|IPHeader|TCPHeader|DATa|EOP|FCSError|QTAG} + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition? + ``` + + Info: + - ``Search`` is the Search number. + - ``SSD`` specifies to search for Start of frame. + - ``SFD`` specifies to search for Start of frame delimiter. + - ``MACADDRess`` specifies to search for MAC addresses field. + - ``MACLENgth`` specifies to search for MAC length/type field. + - ``IPHeader`` specifies to search for IP header field. + - ``TCPHeader`` specifies to search for TCP header field. + - ``DATa`` specifies to search for TCP/IPv4 or MAC protocol client data field. + - ``EOP`` specifies to search for End of Packet field. + - ``FCSError`` specifies to search for Frame Check Sequence Error (CRC) field. + - ``QTAG`` specifies to search for IEEE 802.1Q (VLAN) control information field. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusAutoethernet(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa`` command tree. + - ``.ipheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader`` command tree. + - ``.mac``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC`` command tree. + - ``.qtag``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG`` command tree. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier`` command. + - ``.tcpheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader`` command + tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusAutoethernetCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusAutoethernetData(device, f"{self._cmd_syntax}:DATa") + self._ipheader = SearchSearchItemTriggerABusAutoethernetIpheader( + device, f"{self._cmd_syntax}:IPHeader" + ) + self._mac = SearchSearchItemTriggerABusAutoethernetMac(device, f"{self._cmd_syntax}:MAC") + self._qtag = SearchSearchItemTriggerABusAutoethernetQtag(device, f"{self._cmd_syntax}:QTAG") + self._qualifier = SearchSearchItemTriggerABusAutoethernetQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._tcpheader = SearchSearchItemTriggerABusAutoethernetTcpheader( + device, f"{self._cmd_syntax}:TCPHeader" + ) + + @property + def condition(self) -> SearchSearchItemTriggerABusAutoethernetCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition`` command. + + Description: + - This command sets or queries the field or condition for which to search an + AutoEthernet. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition?`` 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:BUS:AUTOETHERnet:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition {SSD|SFD|MACADDRess|MACLENgth|IPHeader|TCPHeader|DATa|EOP|FCSError|QTAG} + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition? + ``` + + Info: + - ``Search`` is the Search number. + - ``SSD`` specifies to search for Start of frame. + - ``SFD`` specifies to search for Start of frame delimiter. + - ``MACADDRess`` specifies to search for MAC addresses field. + - ``MACLENgth`` specifies to search for MAC length/type field. + - ``IPHeader`` specifies to search for IP header field. + - ``TCPHeader`` specifies to search for TCP header field. + - ``DATa`` specifies to search for TCP/IPv4 or MAC protocol client data field. + - ``EOP`` specifies to search for End of Packet field. + - ``FCSError`` specifies to search for Frame Check Sequence Error (CRC) field. + - ``QTAG`` specifies to search for IEEE 802.1Q (VLAN) control information field. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusAutoethernetData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:HIVALue`` + command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:OFFSet`` command. + - ``.size``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:SIZe`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa:VALue`` command. + """ + return self._data + + @property + def ipheader(self) -> SearchSearchItemTriggerABusAutoethernetIpheader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.destinationaddr``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:DESTinationaddr`` command tree. + - ``.protocol``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:PROTOcol`` + command tree. + - ``.sourceaddr``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader:SOUrceaddr`` command tree. + """ + return self._ipheader + + @property + def mac(self) -> SearchSearchItemTriggerABusAutoethernetMac: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:ADDRess`` command + tree. + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC:LENgth`` command + tree. + """ + return self._mac + + @property + def qtag(self) -> SearchSearchItemTriggerABusAutoethernetQtag: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG:VALue`` command. + """ + return self._qtag + + @property + def qualifier(self) -> SearchSearchItemTriggerABusAutoethernetQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on an + AutoEthernet bus signal. The search condition must be set to Client Data or MAC + Length/Type. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier?`` 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:BUS:AUTOETHERnet:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier? + ``` + + Info: + - ``Search`` is the Search number. + - ``LESSthan`` sets the qualifier to less than. + - ``MOREthan`` sets the qualifier to greater than. + - ``EQual`` sets the qualifier to equal. + - ``UNEQual`` sets the qualifier to not equal. + - ``LESSEQual`` sets the qualifier to less than or equal. + - ``MOREEQual`` sets the qualifier to greater than or equal. + - ``INrange`` sets the qualifier to in range. + - ``OUTrange`` sets the qualifier to out of range. + """ # noqa: E501 + return self._qualifier + + @property + def tcpheader(self) -> SearchSearchItemTriggerABusAutoethernetTcpheader: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.acknum``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:ACKnum`` + command tree. + - ``.destinationport``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport`` command + tree. + - ``.seqnum``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum`` + command tree. + - ``.sourceport``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport`` command tree. + """ + return self._tcpheader + + +class SearchSearchItemTriggerABusAudioDataWord(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD`` command. + + Description: + - This command sets or queries the alignment of the data (left, right or either) to be used + when searching on a non-TDM type audio bus signal. The search condition must be set to + DATA using ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:NONTdm:CONDition``. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD?`` 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:BUS:AUDio:DATa:WORD value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD {EITher|LEFt|RIGht} + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD? + ``` + + Info: + - ``EITher`` aligns the data to either left or right. + - ``LEFt`` aligns the data to the left. + - ``RIGht`` aligns the data to the right. + """ + + +class SearchSearchItemTriggerABusAudioDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data string for the single or low data word to be + used when searching on an audio bus signal. The search condition must be set to DATA using + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio``:{NONTdm|TDM}``:CONDition``. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue?`` 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:BUS:AUDio:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue? + ``` + + Info: + - ```` is the lower word value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAudioDataTdmvalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue`` command. + + Description: + - This command sets or queries the binary data string for the single or low data word to be + used when searching on an TDM audio bus signal. The search condition must be set to DATA + using ``SEARCH:SEARCH``{x}``:TRIGger:A:BUS:AUDio:CONDition``. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue?`` 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:BUS:AUDio:DATa:TDMVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue? + ``` + + Info: + - ```` is the binary data string for the single or low data word to be used when + searching on an TDM audio bus signal. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAudioDataQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on an audio bus + signal. The search condition must be set to DATa using + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio``:{NONTdm|TDM}``:CONDition``. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier?`` 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:BUS:AUDio:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier? + ``` + + Info: + - ``LESSthan`` sets the qualifier to less than. + - ``MOREthan`` sets the qualifier to greater than. + - ``EQual`` sets the qualifier to equal. + - ``UNEQual`` sets the qualifier to not equal. + - ``LESSEQual`` sets the qualifier to less than or equal. + - ``MOREEQual`` sets the qualifier to greater than or equal. + - ``INrange`` sets the qualifier to in range. + - ``OUTrange`` sets the qualifier to out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusAudioDataOffset(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet`` command. + + Description: + - This command sets or queries the data offset value (TDM channel) to be used when searching + on a TDM type audio bus signal. The search condition must be set to DATa using + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:TDM:CONDition``. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet?`` 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:BUS:AUDio:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet? + ``` + + Info: + - ```` is the data offset value. + """ + + +class SearchSearchItemTriggerABusAudioDataHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue`` command. + + Description: + - This command sets or queries the binary data string for the high data word to be used when + searching on an audio bus signal. The search condition must be set to DATa using + ``:SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition``. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue?`` 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:BUS:AUDio:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue? + ``` + + Info: + - ```` specifies the upper word value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAudioDataHitdmvalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue`` command. + + Description: + - This command sets or queries the binary data string for the high data word to be used when + searching on an TDM audio bus signal. The search condition must be set to DATa using + ``SEARCH:SEARCH``{x}``:TRIGger:A:BUS:AUDio:CONDition``. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue?`` 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:BUS:AUDio:DATa:HITDMVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue? + ``` + + Info: + - ```` is the binary data string for the high data word to be used when searching + on an TDM audio bus signal. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusAudioData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.hitdmvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue`` command. + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier`` command. + - ``.tdmvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue`` command. + - ``.word``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hitdmvalue = SearchSearchItemTriggerABusAudioDataHitdmvalue( + device, f"{self._cmd_syntax}:HITDMVALue" + ) + self._hivalue = SearchSearchItemTriggerABusAudioDataHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._offset = SearchSearchItemTriggerABusAudioDataOffset( + device, f"{self._cmd_syntax}:OFFSet" + ) + self._qualifier = SearchSearchItemTriggerABusAudioDataQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._tdmvalue = SearchSearchItemTriggerABusAudioDataTdmvalue( + device, f"{self._cmd_syntax}:TDMVALue" + ) + self._value = SearchSearchItemTriggerABusAudioDataValue(device, f"{self._cmd_syntax}:VALue") + self._word = SearchSearchItemTriggerABusAudioDataWord(device, f"{self._cmd_syntax}:WORD") + + @property + def hitdmvalue(self) -> SearchSearchItemTriggerABusAudioDataHitdmvalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue`` command. + + Description: + - This command sets or queries the binary data string for the high data word to be used + when searching on an TDM audio bus signal. The search condition must be set to DATa + using ``SEARCH:SEARCH``{x}``:TRIGger:A:BUS:AUDio:CONDition``. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue?`` 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:BUS:AUDio:DATa:HITDMVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue? + ``` + + Info: + - ```` is the binary data string for the high data word to be used when + searching on an TDM audio bus signal. + """ + return self._hitdmvalue + + @property + def hivalue(self) -> SearchSearchItemTriggerABusAudioDataHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue`` command. + + Description: + - This command sets or queries the binary data string for the high data word to be used + when searching on an audio bus signal. The search condition must be set to DATa using + ``:SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition``. The search number is specified by + x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue?`` 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:BUS:AUDio:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue? + ``` + + Info: + - ```` specifies the upper word value. + """ + return self._hivalue + + @property + def offset(self) -> SearchSearchItemTriggerABusAudioDataOffset: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet`` command. + + Description: + - This command sets or queries the data offset value (TDM channel) to be used when + searching on a TDM type audio bus signal. The search condition must be set to DATa + using ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:TDM:CONDition``. The search number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet?`` 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:BUS:AUDio:DATa:OFFSet value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet? + ``` + + Info: + - ```` is the data offset value. + """ + return self._offset + + @property + def qualifier(self) -> SearchSearchItemTriggerABusAudioDataQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on an audio bus + signal. The search condition must be set to DATa using + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio``:{NONTdm|TDM}``:CONDition``. The search number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier?`` 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:BUS:AUDio:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier? + ``` + + Info: + - ``LESSthan`` sets the qualifier to less than. + - ``MOREthan`` sets the qualifier to greater than. + - ``EQual`` sets the qualifier to equal. + - ``UNEQual`` sets the qualifier to not equal. + - ``LESSEQual`` sets the qualifier to less than or equal. + - ``MOREEQual`` sets the qualifier to greater than or equal. + - ``INrange`` sets the qualifier to in range. + - ``OUTrange`` sets the qualifier to out of range. + """ # noqa: E501 + return self._qualifier + + @property + def tdmvalue(self) -> SearchSearchItemTriggerABusAudioDataTdmvalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue`` command. + + Description: + - This command sets or queries the binary data string for the single or low data word to + be used when searching on an TDM audio bus signal. The search condition must be set to + DATA using ``SEARCH:SEARCH``{x}``:TRIGger:A:BUS:AUDio:CONDition``. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue?`` 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:BUS:AUDio:DATa:TDMVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue? + ``` + + Info: + - ```` is the binary data string for the single or low data word to be used + when searching on an TDM audio bus signal. + """ + return self._tdmvalue + + @property + def value(self) -> SearchSearchItemTriggerABusAudioDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue`` command. + + Description: + - This command sets or queries the binary data string for the single or low data word to + be used when searching on an audio bus signal. The search condition must be set to + DATA using ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio``:{NONTdm|TDM}``:CONDition``. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue?`` 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:BUS:AUDio:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue? + ``` + + Info: + - ```` is the lower word value. + """ + return self._value + + @property + def word(self) -> SearchSearchItemTriggerABusAudioDataWord: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD`` command. + + Description: + - This command sets or queries the alignment of the data (left, right or either) to be + used when searching on a non-TDM type audio bus signal. The search condition must be + set to DATA using ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:NONTdm:CONDition``. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD?`` 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:BUS:AUDio:DATa:WORD value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD {EITher|LEFt|RIGht} + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD? + ``` + + Info: + - ``EITher`` aligns the data to either left or right. + - ``LEFt`` aligns the data to the left. + - ``RIGht`` aligns the data to the right. + """ + return self._word + + +class SearchSearchItemTriggerABusAudioCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition`` command. + + Description: + - This command sets or queries the condition (word select / frame sync, or matching data) to + be used when searching on an audio bus signal. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition?`` 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:BUS:AUDio:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition {SOF|DATa} + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition? + ``` + + Info: + - ``SOF`` specifies to search on a word select or start of frame (depending on Audio Type). + - ``DATA`` specifies to search on matching data. + """ + + +class SearchSearchItemTriggerABusAudio(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusAudioCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusAudioData(device, f"{self._cmd_syntax}:DATa") + + @property + def condition(self) -> SearchSearchItemTriggerABusAudioCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition`` command. + + Description: + - This command sets or queries the condition (word select / frame sync, or matching + data) to be used when searching on an audio bus signal. The search number is specified + by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition?`` 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:BUS:AUDio:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition {SOF|DATa} + - SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition? + ``` + + Info: + - ``SOF`` specifies to search on a word select or start of frame (depending on Audio + Type). + - ``DATA`` specifies to search on matching data. + """ + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusAudioData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.hitdmvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HITDMVALue`` command. + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:HIVALue`` command. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:OFFSet`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:QUALifier`` command. + - ``.tdmvalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:TDMVALue`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:VALue`` command. + - ``.word``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa:WORD`` command. + """ + return self._data + + +class SearchSearchItemTriggerABusArinc429aSsmValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue`` command. + + Description: + - This command sets or queries the label when searching on an ARINC429 SSM field. The search + number is specified by x. The search condition must be set to DATa or LABELANDDATA, and + the data format must be set to DATA or SDIDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue?`` 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:BUS:ARINC429A:SSM:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue? + ``` + + Info: + - ```` is the label value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusArinc429aSsm(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusArinc429aSsmValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusArinc429aSsmValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue`` command. + + Description: + - This command sets or queries the label when searching on an ARINC429 SSM field. The + search number is specified by x. The search condition must be set to DATa or + LABELANDDATA, and the data format must be set to DATA or SDIDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue?`` 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:BUS:ARINC429A:SSM:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue? + ``` + + Info: + - ```` is the label value. + """ + return self._value + + +class SearchSearchItemTriggerABusArinc429aSdiValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue`` command. + + Description: + - This command sets or queries the label when searching on an ARINC429 SDI field. The search + number is specified by x. The search condition must be set to DATa or LABELANDDATA, and + the data format must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue?`` 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:BUS:ARINC429A:SDI:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue? + ``` + + Info: + - ```` is the label value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusArinc429aSdi(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._value = SearchSearchItemTriggerABusArinc429aSdiValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def value(self) -> SearchSearchItemTriggerABusArinc429aSdiValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue`` command. + + Description: + - This command sets or queries the label when searching on an ARINC429 SDI field. The + search number is specified by x. The search condition must be set to DATa or + LABELANDDATA, and the data format must be set to DATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue?`` 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:BUS:ARINC429A:SDI:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue? + ``` + + Info: + - ```` is the label value. + """ + return self._value + + +class SearchSearchItemTriggerABusArinc429aLabelValue(SCPICmdWrite): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:VALue`` command. + + Description: + - This command sets or queries the low value when searching on an ARINC429 label field. The + search number is specified by x. The search condition must be set to LABel or + LABELANDDATA. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:VALue + ``` + + Info: + - ```` is the label value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusArinc429aLabelQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on label data for an + ARINC429 bus signal. The search number is specified by x. The search condition must be set + to LABel or LABELANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier?`` 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:BUS:ARINC429A:LABel:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier to out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusArinc429aLabelHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on an ARINC429 label field. The + search number is specified by x. The search condition must be set to LABel, and the label + qualifier must be INrange or OUTrange. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue?`` 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:BUS:ARINC429A:LABel:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue? + ``` + + Info: + - ```` is the label value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusArinc429aLabel(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusArinc429aLabelHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusArinc429aLabelQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusArinc429aLabelValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusArinc429aLabelHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on an ARINC429 label field. + The search number is specified by x. The search condition must be set to LABel, and + the label qualifier must be INrange or OUTrange. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue?`` 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:BUS:ARINC429A:LABel:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue? + ``` + + Info: + - ```` is the label value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusArinc429aLabelQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on label data for + an ARINC429 bus signal. The search number is specified by x. The search condition must + be set to LABel or LABELANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier?`` 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:BUS:ARINC429A:LABel:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier to out of range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusArinc429aLabelValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:VALue`` command. + + Description: + - This command sets or queries the low value when searching on an ARINC429 label field. + The search number is specified by x. The search condition must be set to LABel or + LABELANDDATA. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:VALue + ``` + + Info: + - ```` is the label value. + """ + return self._value + + +class SearchSearchItemTriggerABusArinc429aErrtype(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe`` command. + + Description: + - This command sets or queries the error type when searching on an ARINC429 bus signal. The + search number is specified by x. The search condition must be set to ERRor. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe?`` 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:BUS:ARINC429A:ERRTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe {ANY|PARity|WORD|GAP} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe? + ``` + + Info: + - ``ANY`` sets the error type to match any of the other available error types. + - ``PARity`` sets the error type to match on parity errors (parity value results in even + parity count for a word). + - ``WORD`` sets the error type to match on word errors (any unframed or unknown decode + data). + - ``GAP`` sets the error type to match on gap violations (less than 4 bits idle time between + two packets on the bus). + """ + + +class SearchSearchItemTriggerABusArinc429aDataValue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue`` command. + + Description: + - This command sets or queries the low value when searching on an ARINC429 data field. The + search number is specified by x. The search condition must be set to DATa or LABELANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue?`` 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:BUS:ARINC429A:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue? + ``` + + Info: + - ```` is the label value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusArinc429aDataQualifier(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on data in the DATA + field for an ARINC429 bus signal. The search number is specified by x. The search + condition must be set to DATa or LABELANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier?`` 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:BUS:ARINC429A:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier to out of range. + """ # noqa: E501 + + +class SearchSearchItemTriggerABusArinc429aDataHivalue(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on an ARINC429 data field. The + search number is specified by x. The search condition must be set to DATa or LABELANDDATA, + and the data qualifier must be INrange or OUTrange. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue?`` 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:BUS:ARINC429A:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue? + ``` + + Info: + - ```` is the label value. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchSearchItemTriggerABusArinc429aData(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier`` command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._hivalue = SearchSearchItemTriggerABusArinc429aDataHivalue( + device, f"{self._cmd_syntax}:HIVALue" + ) + self._qualifier = SearchSearchItemTriggerABusArinc429aDataQualifier( + device, f"{self._cmd_syntax}:QUALifier" + ) + self._value = SearchSearchItemTriggerABusArinc429aDataValue( + device, f"{self._cmd_syntax}:VALue" + ) + + @property + def hivalue(self) -> SearchSearchItemTriggerABusArinc429aDataHivalue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue`` command. + + Description: + - This command sets or queries the high value when searching on an ARINC429 data field. + The search number is specified by x. The search condition must be set to DATa or + LABELANDDATA, and the data qualifier must be INrange or OUTrange. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue?`` 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:BUS:ARINC429A:DATa:HIVALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue? + ``` + + Info: + - ```` is the label value. + """ + return self._hivalue + + @property + def qualifier(self) -> SearchSearchItemTriggerABusArinc429aDataQualifier: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier`` command. + + Description: + - This command sets or queries the qualifier to be used when searching on data in the + DATA field for an ARINC429 bus signal. The search number is specified by x. The search + condition must be set to DATa or LABELANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier?`` 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:BUS:ARINC429A:DATa:QUALifier value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier {EQual|UNEQual|LESSthan|MOREthan|LESSEQual|MOREEQual|INrange|OUTrange} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier? + ``` + + Info: + - ``EQual`` sets the data qualifier to equal. + - ``UNEQual`` sets the data qualifier to unequal. + - ``LESSthan`` sets the data qualifier to less than. + - ``MOREthan`` sets the data qualifier to more than. + - ``LESSEQual`` sets the data qualifier to less equal. + - ``MOREEQual`` sets the data qualifier to more equal. + - ``INrange`` sets the data qualifier to in range. + - ``OUTrange`` sets the data qualifier to out of range. + """ # noqa: E501 + return self._qualifier + + @property + def value(self) -> SearchSearchItemTriggerABusArinc429aDataValue: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue`` command. + + Description: + - This command sets or queries the low value when searching on an ARINC429 data field. + The search number is specified by x. The search condition must be set to DATa or + LABELANDDATA. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue?`` 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:BUS:ARINC429A:DATa:VALue value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue? + ``` + + Info: + - ```` is the label value. + """ + return self._value + + +class SearchSearchItemTriggerABusArinc429aCondition(SCPICmdWrite, SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition`` command. + + Description: + - This command specifies a field or condition for an ARINC429 bus to search on. The search + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition?`` 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:BUS:ARINC429A:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition {SOW|LABel|DATa|LABELANDDATA|EOW|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition? + ``` + + Info: + - ``SOW`` specifies a search for the first bit of a word. + - ``LABel`` specifies a search for a matching label. + - ``DATa`` specifies a search for matching packet data fields. + - ``LABELANDDATA`` specifies a search for a matching label and matching packet data + field(s). + - ``EOW`` specifies a search for the 32nd bit of a word. + - ``ERRor`` specifies a search for a specified error condition. + """ + + +class SearchSearchItemTriggerABusArinc429a(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe`` command. + - ``.label``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel`` command tree. + - ``.sdi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI`` command tree. + - ``.ssm``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._condition = SearchSearchItemTriggerABusArinc429aCondition( + device, f"{self._cmd_syntax}:CONDition" + ) + self._data = SearchSearchItemTriggerABusArinc429aData(device, f"{self._cmd_syntax}:DATa") + self._errtype = SearchSearchItemTriggerABusArinc429aErrtype( + device, f"{self._cmd_syntax}:ERRTYPe" + ) + self._label = SearchSearchItemTriggerABusArinc429aLabel(device, f"{self._cmd_syntax}:LABel") + self._sdi = SearchSearchItemTriggerABusArinc429aSdi(device, f"{self._cmd_syntax}:SDI") + self._ssm = SearchSearchItemTriggerABusArinc429aSsm(device, f"{self._cmd_syntax}:SSM") + + @property + def condition(self) -> SearchSearchItemTriggerABusArinc429aCondition: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition`` command. + + Description: + - This command specifies a field or condition for an ARINC429 bus to search on. The + search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition?`` 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:BUS:ARINC429A:CONDition value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition {SOW|LABel|DATa|LABELANDDATA|EOW|ERRor} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition? + ``` + + Info: + - ``SOW`` specifies a search for the first bit of a word. + - ``LABel`` specifies a search for a matching label. + - ``DATa`` specifies a search for matching packet data fields. + - ``LABELANDDATA`` specifies a search for a matching label and matching packet data + field(s). + - ``EOW`` specifies a search for the 32nd bit of a word. + - ``ERRor`` specifies a search for a specified error condition. + """ # noqa: E501 + return self._condition + + @property + def data(self) -> SearchSearchItemTriggerABusArinc429aData: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa:VALue`` command. + """ + return self._data + + @property + def errtype(self) -> SearchSearchItemTriggerABusArinc429aErrtype: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe`` command. + + Description: + - This command sets or queries the error type when searching on an ARINC429 bus signal. + The search number is specified by x. The search condition must be set to ERRor. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe?`` 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:BUS:ARINC429A:ERRTYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe {ANY|PARity|WORD|GAP} + - SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe? + ``` + + Info: + - ``ANY`` sets the error type to match any of the other available error types. + - ``PARity`` sets the error type to match on parity errors (parity value results in even + parity count for a word). + - ``WORD`` sets the error type to match on word errors (any unframed or unknown decode + data). + - ``GAP`` sets the error type to match on gap violations (less than 4 bits idle time + between two packets on the bus). + """ + return self._errtype + + @property + def label(self) -> SearchSearchItemTriggerABusArinc429aLabel: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel?`` query and raise an AssertionError + if the returned value does not match ``value``. + + Sub-properties: + - ``.hivalue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:HIVALue`` command. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:QUALifier`` + command. + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel:VALue`` command. + """ + return self._label + + @property + def sdi(self) -> SearchSearchItemTriggerABusArinc429aSdi: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI:VALue`` command. + """ + return self._sdi + + @property + def ssm(self) -> SearchSearchItemTriggerABusArinc429aSsm: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.value``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM:VALue`` command. + """ + return self._ssm + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class SearchSearchItemTriggerABus(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A:BUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.arinc429a``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A`` command tree. + - ``.audio``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio`` command tree. + - ``.autoethernet``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet`` command tree. + - ``.b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B`` command tree. + - ``.can``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN`` command tree. + - ``.cphy``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY`` command tree. + - ``.cxpi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI`` command tree. + - ``.dphy``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY`` command tree. + - ``.espi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI`` command tree. + - ``.ethercat``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT`` command tree. + - ``.ethernet``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet`` command tree. + - ``.eusb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB`` command tree. + - ``.flexray``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY`` command tree. + - ``.i2c``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C`` command tree. + - ``.i3c``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C`` command tree. + - ``.lin``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN`` command tree. + - ``.manchester``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester`` command tree. + - ``.mdio``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO`` command tree. + - ``.mil1553b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B`` command tree. + - ``.nrz``: The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ`` command tree. + - ``.onewire``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe`` command tree. + - ``.parallel``: The ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel`` command tree. + - ``.rs232c``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C`` command tree. + - ``.s8b10b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B`` command tree. + - ``.sdlc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC`` command tree. + - ``.sent``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT`` command tree. + - ``.smbus``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS`` command tree. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SOUrce`` command. + - ``.spacewire``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe`` command tree. + - ``.spi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI`` command tree. + - ``.spmi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI`` command tree. + - ``.svid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID`` command tree. + - ``.usb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._arinc429a = SearchSearchItemTriggerABusArinc429a( + device, f"{self._cmd_syntax}:ARINC429A" + ) + self._audio = SearchSearchItemTriggerABusAudio(device, f"{self._cmd_syntax}:AUDio") + self._autoethernet = SearchSearchItemTriggerABusAutoethernet( + device, f"{self._cmd_syntax}:AUTOETHERnet" + ) + self._b = SearchSearchItemTriggerABusB(device, f"{self._cmd_syntax}:B") + self._can = SearchSearchItemTriggerABusCan(device, f"{self._cmd_syntax}:CAN") + self._cphy = SearchSearchItemTriggerABusCphy(device, f"{self._cmd_syntax}:CPHY") + self._cxpi = SearchSearchItemTriggerABusCxpi(device, f"{self._cmd_syntax}:CXPI") + self._dphy = SearchSearchItemTriggerABusDphy(device, f"{self._cmd_syntax}:DPHY") + self._espi = SearchSearchItemTriggerABusEspi(device, f"{self._cmd_syntax}:ESPI") + self._ethercat = SearchSearchItemTriggerABusEthercat(device, f"{self._cmd_syntax}:ETHERCAT") + self._ethernet = SearchSearchItemTriggerABusEthernet(device, f"{self._cmd_syntax}:ETHERnet") + self._eusb = SearchSearchItemTriggerABusEusb(device, f"{self._cmd_syntax}:EUSB") + self._flexray = SearchSearchItemTriggerABusFlexray(device, f"{self._cmd_syntax}:FLEXRAY") + self._i2c = SearchSearchItemTriggerABusI2c(device, f"{self._cmd_syntax}:I2C") + self._i3c = SearchSearchItemTriggerABusI3c(device, f"{self._cmd_syntax}:I3C") + self._lin = SearchSearchItemTriggerABusLin(device, f"{self._cmd_syntax}:LIN") + self._manchester = SearchSearchItemTriggerABusManchester( + device, f"{self._cmd_syntax}:MANChester" + ) + self._mdio = SearchSearchItemTriggerABusMdio(device, f"{self._cmd_syntax}:MDIO") + self._mil1553b = SearchSearchItemTriggerABusMil1553b(device, f"{self._cmd_syntax}:MIL1553B") + self._nrz = SearchSearchItemTriggerABusNrz(device, f"{self._cmd_syntax}:NRZ") + self._onewire = SearchSearchItemTriggerABusOnewire(device, f"{self._cmd_syntax}:ONEWIRe") + self._parallel = SearchSearchItemTriggerABusParallel(device, f"{self._cmd_syntax}:PARallel") + self._rs232c = SearchSearchItemTriggerABusRs232c(device, f"{self._cmd_syntax}:RS232C") + self._s8b10b = SearchSearchItemTriggerABusS8b10b(device, f"{self._cmd_syntax}:S8B10B") + self._sdlc = SearchSearchItemTriggerABusSdlc(device, f"{self._cmd_syntax}:SDLC") + self._sent = SearchSearchItemTriggerABusSent(device, f"{self._cmd_syntax}:SENT") + self._smbus = SearchSearchItemTriggerABusSmbus(device, f"{self._cmd_syntax}:SMBUS") + self._source = SearchSearchItemTriggerABusSource(device, f"{self._cmd_syntax}:SOUrce") + self._spacewire = SearchSearchItemTriggerABusSpacewire( + device, f"{self._cmd_syntax}:SPACEWIRe" + ) + self._spi = SearchSearchItemTriggerABusSpi(device, f"{self._cmd_syntax}:SPI") + self._spmi = SearchSearchItemTriggerABusSpmi(device, f"{self._cmd_syntax}:SPMI") + self._svid = SearchSearchItemTriggerABusSvid(device, f"{self._cmd_syntax}:SVID") + self._usb = SearchSearchItemTriggerABusUsb(device, f"{self._cmd_syntax}:USB") + + @property + def arinc429a(self) -> SearchSearchItemTriggerABusArinc429a: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:DATa`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:ERRTYPe`` command. + - ``.label``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:LABel`` command tree. + - ``.sdi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SDI`` command tree. + - ``.ssm``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A:SSM`` command tree. + """ + return self._arinc429a + + @property + def audio(self) -> SearchSearchItemTriggerABusAudio: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio:DATa`` command tree. + """ + return self._audio + + @property + def autoethernet(self) -> SearchSearchItemTriggerABusAutoethernet: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:DATa`` command tree. + - ``.ipheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:IPHeader`` command + tree. + - ``.mac``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:MAC`` command tree. + - ``.qtag``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QTAG`` command tree. + - ``.qualifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:QUALifier`` command. + - ``.tcpheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader`` command + tree. + """ + return self._autoethernet + + @property + def b(self) -> SearchSearchItemTriggerABusB: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.nrz``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ`` command tree. + - ``.psifive``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe`` command tree. + - ``.s8b10b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B`` command tree. + """ + return self._b + + @property + def can(self) -> SearchSearchItemTriggerABusCan: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CAN?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CAN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:DATa`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:ERRType`` command. + - ``.fd``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FD`` command tree. + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:FRAMEtype`` command. + - ``.identifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN:IDentifier`` command tree. + """ + return self._can + + @property + def cphy(self) -> SearchSearchItemTriggerABusCphy: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.blue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:BLUe`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ERRor`` command tree. + - ``.escapemode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:ESCAPEMODe`` command tree. + - ``.green``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:GREen`` command tree. + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:MODe`` command tree. + - ``.packets``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PACKets`` command tree. + - ``.pixel``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:PIXel`` command tree. + - ``.red``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:RED`` command tree. + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:SYMBol`` command tree. + - ``.word``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORD`` command tree. + - ``.wordcount``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:WORDCOUNt`` command tree. + - ``.ycbcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YCBCR`` command tree. + - ``.yuv``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY:YUV`` command tree. + """ + return self._cphy + + @property + def cxpi(self) -> SearchSearchItemTriggerABusCxpi: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:CONDition`` command. + - ``.counter``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:COUNter`` command tree. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DATa`` command tree. + - ``.dlc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:DLC`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:ERROR`` command tree. + - ``.extdlc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:EXTDLC`` command tree. + - ``.frameid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMEID`` command tree. + - ``.frame``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:FRAMe`` command tree. + - ``.netmn``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI:NETMN`` command tree. + """ + return self._cxpi + + @property + def dphy(self) -> SearchSearchItemTriggerABusDphy: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.blue``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:BLUe`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ERRor`` command tree. + - ``.escapemode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:ESCAPEMODe`` command tree. + - ``.green``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:GREen`` command tree. + - ``.mode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:MODe`` command tree. + - ``.packets``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PACKets`` command tree. + - ``.pixel``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:PIXel`` command tree. + - ``.red``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:RED`` command tree. + - ``.wordcount``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:WORDCOUNt`` command tree. + - ``.ycbcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YCBCR`` command tree. + - ``.yuv``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY:YUV`` command tree. + """ + return self._dphy + + @property + def espi(self) -> SearchSearchItemTriggerABusEspi: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ADDRess`` command tree. + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:COMMAND`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CONDition`` command. + - ``.cycletype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:CYCLETYPe`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:ERRor`` command tree. + - ``.length``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:LENGth`` command tree. + - ``.phase``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:PHASe`` command. + - ``.respcycle``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:RESPCYCLE`` command tree. + - ``.smbus``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:SMBUS`` command tree. + - ``.tag``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:TAG`` command tree. + - ``.virtualwire``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI:VIRTUALWIRe`` command + tree. + """ + return self._espi + + @property + def ethercat(self) -> SearchSearchItemTriggerABusEthercat: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.addressmode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ADDRESSMODe`` command. + - ``.cntnv``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CNTNV`` command tree. + - ``.commandtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:COMMANDTYPe`` command. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CONDition`` command. + - ``.cyc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:CYC`` command tree. + - ``.datagram``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAM`` command. + - ``.datagramheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATAGRAMHEADer`` + command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DATa`` command tree. + - ``.destinationaddress``: The + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DESTINATIONADDRess`` command tree. + - ``.deviceaddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:DEVICEADDRess`` + command. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:ERRor`` command tree. + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:FRAMETYPe`` command. + - ``.hash``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HASH`` command tree. + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:HEADer`` command tree. + - ``.identification``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDENtification`` + command tree. + - ``.idx``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IDX`` command tree. + - ``.index``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:INDex`` command tree. + - ``.ipdestination``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPDESTination`` + command tree. + - ``.ipsource``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IPSOURce`` command tree. + - ``.irq``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:IRQ`` command tree. + - ``.len``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LEN`` command tree. + - ``.logicaladdress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:LOGICALADDRess`` + command tree. + - ``.mailboxtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILBOXTYPe`` command. + - ``.mailbox``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:MAILbox`` command. + - ``.networkvariable``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWORKVARiable`` + command tree. + - ``.network``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:NETWork`` command tree. + - ``.offset``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:OFFSet`` command tree. + - ``.position``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:POSition`` command tree. + - ``.protocoltype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PROTOCOLTYPe`` + command. + - ``.pubid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:PUBID`` command tree. + - ``.quality``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:QUALity`` command tree. + - ``.service``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SERVice`` command tree. + - ``.sourceaddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SOURCEADDRess`` + command tree. + - ``.src``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:SRC`` command tree. + - ``.tci``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:TCI`` command tree. + - ``.wkc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT:WKC`` command tree. + """ + return self._ethercat + + @property + def ethernet(self) -> SearchSearchItemTriggerABusEthernet: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:DATa`` command tree. + - ``.ipheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:IPHeader`` command tree. + - ``.mac``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:MAC`` command tree. + - ``.qtag``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:QTAG`` command tree. + - ``.tcpheader``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet:TCPHeader`` command + tree. + """ + return self._ethernet + + @property + def eusb(self) -> SearchSearchItemTriggerABusEusb: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ADDress`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:CONDition`` command. + - ``.databits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATABITS`` command tree. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:DATa`` command tree. + - ``.endpoint``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDPoint`` command tree. + - ``.endsearch``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ENDSEARch`` command. + - ``.eop``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOP`` command tree. + - ``.eopbits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:EOPBITS`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:ERRType`` command. + - ``.handshaketype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:HANDSHAKEType`` command. + - ``.rap``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:RAP`` command tree. + - ``.sofframenumber``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SOFFRAMENUMber`` + command. + - ``.specialtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPECIALType`` command. + - ``.split``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SPLit`` command tree. + - ``.sync``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNC`` command tree. + - ``.syncbits``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCBITS`` command tree. + - ``.syncsearch``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:SYNCSEARch`` command. + - ``.tokentype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB:TOKENType`` command. + """ + return self._eusb + + @property + def flexray(self) -> SearchSearchItemTriggerABusFlexray: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CONDition`` command. + - ``.cyclecount``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:CYCLEcount`` command + tree. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:DATa`` command tree. + - ``.eoftype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:EOFTYPE`` command. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:ERRTYPE`` command. + - ``.frameid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEID`` command tree. + - ``.frametype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:FRAMEType`` command. + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY:HEADER`` command tree. + """ + return self._flexray + + @property + def i2c(self) -> SearchSearchItemTriggerABusI2c: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I2C?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I2C?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:ADDRess`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C:DATa`` command tree. + """ + return self._i2c + + @property + def i3c(self) -> SearchSearchItemTriggerABusI3c: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:I3C?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:I3C?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ADDRess`` command tree. + - ``.bcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCR`` command tree. + - ``.bcrtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BCRType`` command tree. + - ``.bpackets``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BPACKets`` command. + - ``.brgtid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:BRGTID`` command tree. + - ``.ccode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CCODe`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DATa`` command tree. + - ``.dcr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCR`` command tree. + - ``.dcrtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DCRType`` command tree. + - ``.dword``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:DWORd`` command tree. + - ``.errortype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ERRORTYPe`` command. + - ``.eventbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:EVENTBYTe`` command tree. + - ``.freqbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:FREQBYTe`` command tree. + - ``.gslsb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSLSb`` command tree. + - ``.gsmsb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:GSMSb`` command tree. + - ``.id``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:ID`` command tree. + - ``.inaccbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:INACCBYTe`` command tree. + - ``.maxread``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXREAD`` command tree. + - ``.maxrturn``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXRTURN`` command tree. + - ``.maxwrite``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe`` command tree. + - ``.packets``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets`` command. + - ``.saddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress`` command tree. + - ``.sdr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR`` command tree. + - ``.statebyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe`` command tree. + - ``.static``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic`` command tree. + - ``.supportbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe`` command tree. + - ``.testmode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C:TESTMODe`` command tree. + """ + return self._i3c + + @property + def lin(self) -> SearchSearchItemTriggerABusLin: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:LIN?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:LIN?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:DATa`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:ERRTYPE`` command. + - ``.identifier``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN:IDentifier`` command tree. + """ + return self._lin + + @property + def manchester(self) -> SearchSearchItemTriggerABusManchester: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester?`` query and raise an AssertionError if + the returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:ERRor`` command tree. + - ``.header``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:HEADER`` command tree. + - ``.sync``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:SYNC`` command tree. + - ``.trailer``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:TRAILER`` command tree. + - ``.packetoffdata``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester:packetOffData`` + command tree. + """ + return self._manchester + + @property + def mdio(self) -> SearchSearchItemTriggerABusMdio: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ADDress`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DATa`` command tree. + - ``.devicetype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:DEVicetype`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:ERRType`` command. + - ``.opcode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:OPCode`` command tree. + - ``.physicaladdress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:PHYSicaladdress`` + command tree. + - ``.registeraddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO:REGisteraddress`` + command tree. + """ + return self._mdio + + @property + def mil1553b(self) -> SearchSearchItemTriggerABusMil1553b: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:COMMAND`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:DATa`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:ERRTYPe`` command. + - ``.status``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B:STATus`` command tree. + """ + return self._mil1553b + + @property + def nrz(self) -> SearchSearchItemTriggerABusNrz: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ:DATa`` command tree. + """ + return self._nrz + + @property + def onewire(self) -> SearchSearchItemTriggerABusOnewire: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:COMMand`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:DATa`` command tree. + - ``.matchrom``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:MATCHROM`` command tree. + - ``.overdrive``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:OVERDRIVe`` command tree. + - ``.readrom``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:READROM`` command tree. + - ``.searchrom``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe:SEARCHROM`` command tree. + """ + return self._onewire + + @property + def parallel(self) -> SearchSearchItemTriggerABusParallel: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel:DATa`` command tree. + """ + return self._parallel + + @property + def rs232c(self) -> SearchSearchItemTriggerABusRs232c: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C:DATa`` command tree. + """ + return self._rs232c + + @property + def s8b10b(self) -> SearchSearchItemTriggerABusS8b10b: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.disparity``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:DISParity`` command. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:ERRor`` command. + - ``.symbol``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B:SYMbol`` command tree. + """ + return self._s8b10b + + @property + def sdlc(self) -> SearchSearchItemTriggerABusSdlc: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ADDRess`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:DATa`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:ERROR`` command tree. + - ``.frame``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:FRAMe`` command tree. + - ``.staddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:STADDress`` command tree. + - ``.supervisory``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:SUPervisory`` command + tree. + - ``.unnumbered``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC:UNNumbered`` command tree. + """ + return self._sdlc + + @property + def sent(self) -> SearchSearchItemTriggerABusSent: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SENT?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SENT?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:CONDition`` command. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:ERRType`` command. + - ``.fast``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:FAST`` command tree. + - ``.pause``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:PAUSE`` command tree. + - ``.slow``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT:SLOW`` command tree. + """ + return self._sent + + @property + def smbus(self) -> SearchSearchItemTriggerABusSmbus: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ADDRess`` command tree. + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:COMMand`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DATa`` command tree. + - ``.deviceaddr``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:DEVICEADDR`` command tree. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:ERROr`` command tree. + - ``.fieldbyte``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:FIELDBYTe`` command. + - ``.udiddata``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS:UDIDDATa`` command tree. + """ + return self._smbus + + @property + def source(self) -> SearchSearchItemTriggerABusSource: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SOUrce`` command. + + Description: + - This command sets or queries the bus source for the bus search to determine where to + place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS: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:BUS:SOUrce value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:BUS:SOUrce {B0|B1|B2|B3|B4|B5|B6|B7|B8|B9|B10|B11|B12|B13|B14|B15|B16} + - SEARCH:SEARCH:TRIGger:A:BUS:SOUrce? + ``` + + Info: + - ``B`` specifies the bus source as a bus number from B01 to B16. x has a minimum of + 0 and a maximum of 16. + """ # noqa: E501 + return self._source + + @property + def spacewire(self) -> SearchSearchItemTriggerABusSpacewire: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONDition`` command. + - ``.controlchartype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCHARTYPe`` + command. + - ``.controlcodetype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:CONTROLCODETYPe`` + command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:DATa`` command tree. + - ``.errortype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:ERRORTYPe`` command. + - ``.timecode``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe:TIMECode`` command tree. + """ + return self._spacewire + + @property + def spi(self) -> SearchSearchItemTriggerABusSpi: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SPI?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPI?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:DATa`` command tree. + - ``.sourcetype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI:SOURCETYpe`` command. + """ + return self._spi + + @property + def spmi(self) -> SearchSearchItemTriggerABusSpmi: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:DATa`` command tree. + - ``.masteraddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:MASTERADDRess`` command + tree. + - ``.noresponse``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:NORESPonse`` command. + - ``.registeraddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:REGISTERADDRess`` + command tree. + - ``.slaveaddress``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI:SLAVEADDRess`` command + tree. + """ + return self._spmi + + @property + def svid(self) -> SearchSearchItemTriggerABusSvid: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:SVID?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:SVID?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.command``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:COMMand`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:CONDition`` command. + - ``.error``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:ERRor`` command tree. + - ``.payload``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:PAYLoad`` command tree. + - ``.slave``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID:SLAVE`` command tree. + """ + return self._svid + + @property + def usb(self) -> SearchSearchItemTriggerABusUsb: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS:USB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:USB?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:USB?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ADDress`` command tree. + - ``.condition``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:CONDition`` command. + - ``.data``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:DATa`` command tree. + - ``.endpoint``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ENDPoint`` command tree. + - ``.errtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:ERRTYPE`` command. + - ``.handshaketype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:HANDSHAKEType`` command. + - ``.sofframenumber``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SOFFRAMENUMber`` + command. + - ``.specialtype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPECIALType`` command. + - ``.split``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:SPLIT`` command tree. + - ``.tokentype``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB:TOKENType`` command. + """ + return self._usb + + +# pylint: disable=too-many-instance-attributes +class SearchSearchItemTriggerA(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger:A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bus``: The ``SEARCH:SEARCH:TRIGger:A:BUS`` command tree. + - ``.ddrread``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD`` command tree. + - ``.ddrreadwrite``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE`` command tree. + - ``.ddrwrite``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE`` command tree. + - ``.edge``: The ``SEARCH:SEARCH:TRIGger:A:EDGE`` command tree. + - ``.logic``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc`` command tree. + - ``.pulsewidth``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth`` command tree. + - ``.runt``: The ``SEARCH:SEARCH:TRIGger:A:RUNT`` command tree. + - ``.sethold``: The ``SEARCH:SEARCH:TRIGger:A:SETHold`` command tree. + - ``.state``: The ``SEARCH:SEARCH:TRIGger:A:STATE`` command. + - ``.stopacq``: The ``SEARCH:SEARCH:TRIGger:A:STOPAcq`` command. + - ``.timeout``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut`` command tree. + - ``.transition``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition`` command tree. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:TYPe`` command. + - ``.window``: The ``SEARCH:SEARCH:TRIGger:A:WINdow`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bus = SearchSearchItemTriggerABus(device, f"{self._cmd_syntax}:BUS") + self._ddrread = SearchSearchItemTriggerADdrread(device, f"{self._cmd_syntax}:DDRREAD") + self._ddrreadwrite = SearchSearchItemTriggerADdrreadwrite( + device, f"{self._cmd_syntax}:DDRREADWRITE" + ) + self._ddrwrite = SearchSearchItemTriggerADdrwrite(device, f"{self._cmd_syntax}:DDRWRITE") + self._edge = SearchSearchItemTriggerAEdge(device, f"{self._cmd_syntax}:EDGE") + self._logic = SearchSearchItemTriggerALogic(device, f"{self._cmd_syntax}:LOGIc") + self._pulsewidth = SearchSearchItemTriggerAPulsewidth( + device, f"{self._cmd_syntax}:PULSEWidth" + ) + self._runt = SearchSearchItemTriggerARunt(device, f"{self._cmd_syntax}:RUNT") + self._sethold = SearchSearchItemTriggerASethold(device, f"{self._cmd_syntax}:SETHold") + self._state = SearchSearchItemTriggerAState(device, f"{self._cmd_syntax}:STATE") + self._stopacq = SearchSearchItemTriggerAStopacq(device, f"{self._cmd_syntax}:STOPAcq") + self._timeout = SearchSearchItemTriggerATimeout(device, f"{self._cmd_syntax}:TIMEOut") + self._transition = SearchSearchItemTriggerATransition( + device, f"{self._cmd_syntax}:TRANsition" + ) + self._type = SearchSearchItemTriggerAType(device, f"{self._cmd_syntax}:TYPe") + self._window = SearchSearchItemTriggerAWindow(device, f"{self._cmd_syntax}:WINdow") + + @property + def bus(self) -> SearchSearchItemTriggerABus: + """Return the ``SEARCH:SEARCH:TRIGger:A:BUS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.arinc429a``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ARINC429A`` command tree. + - ``.audio``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUDio`` command tree. + - ``.autoethernet``: The ``SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet`` command tree. + - ``.b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:B`` command tree. + - ``.can``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CAN`` command tree. + - ``.cphy``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CPHY`` command tree. + - ``.cxpi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:CXPI`` command tree. + - ``.dphy``: The ``SEARCH:SEARCH:TRIGger:A:BUS:DPHY`` command tree. + - ``.espi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ESPI`` command tree. + - ``.ethercat``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERCAT`` command tree. + - ``.ethernet``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ETHERnet`` command tree. + - ``.eusb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:EUSB`` command tree. + - ``.flexray``: The ``SEARCH:SEARCH:TRIGger:A:BUS:FLEXRAY`` command tree. + - ``.i2c``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I2C`` command tree. + - ``.i3c``: The ``SEARCH:SEARCH:TRIGger:A:BUS:I3C`` command tree. + - ``.lin``: The ``SEARCH:SEARCH:TRIGger:A:BUS:LIN`` command tree. + - ``.manchester``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MANChester`` command tree. + - ``.mdio``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MDIO`` command tree. + - ``.mil1553b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:MIL1553B`` command tree. + - ``.nrz``: The ``SEARCH:SEARCH:TRIGger:A:BUS:NRZ`` command tree. + - ``.onewire``: The ``SEARCH:SEARCH:TRIGger:A:BUS:ONEWIRe`` command tree. + - ``.parallel``: The ``SEARCH:SEARCH:TRIGger:A:BUS:PARallel`` command tree. + - ``.rs232c``: The ``SEARCH:SEARCH:TRIGger:A:BUS:RS232C`` command tree. + - ``.s8b10b``: The ``SEARCH:SEARCH:TRIGger:A:BUS:S8B10B`` command tree. + - ``.sdlc``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SDLC`` command tree. + - ``.sent``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SENT`` command tree. + - ``.smbus``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SMBUS`` command tree. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SOUrce`` command. + - ``.spacewire``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPACEWIRe`` command tree. + - ``.spi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPI`` command tree. + - ``.spmi``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SPMI`` command tree. + - ``.svid``: The ``SEARCH:SEARCH:TRIGger:A:BUS:SVID`` command tree. + - ``.usb``: The ``SEARCH:SEARCH:TRIGger:A:BUS:USB`` command tree. + """ + return self._bus + + @property + def ddrread(self) -> SearchSearchItemTriggerADdrread: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREAD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRREAD?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREAD?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.burstdetectmethod``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTDETectmethod`` + command. + - ``.burstlength``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLENGTH`` command. + - ``.burstlatency``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:BURSTLatency`` command. + - ``.csactive``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSActive`` command. + - ``.cslevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSLevel`` command. + - ``.csmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSMode`` command. + - ``.cssource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:CSSource`` command. + - ``.datarate``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATARate`` command. + - ``.datasource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:DATASource`` command. + - ``.hysteresis``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:HYSteresis`` command. + - ``.logic1source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC1SOUrce`` command + tree. + - ``.logic2source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC2SOUrce`` command + tree. + - ``.logic3source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC3SOUrce`` command + tree. + - ``.logic4source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:LOGIC4SOUrce`` command + tree. + - ``.margin``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MARgin`` command. + - ``.maxcas``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MAXCAS`` command. + - ``.mincas``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:MINCas`` command. + - ``.postamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:POSTAMBLE`` command tree. + - ``.preamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:PREAMBLE`` command tree. + - ``.reflevelmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLEVELMode`` command. + - ``.reflevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:REFLevel`` command tree. + - ``.standard``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STANdard`` command. + - ``.strobesource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:STROBESource`` command. + - ``.tolerance``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD:TOLERance`` command. + """ + return self._ddrread + + @property + def ddrreadwrite(self) -> SearchSearchItemTriggerADdrreadwrite: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE`` command tree. + + Usage: + - Using the ``.query()`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE?`` query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.burstdetectmethod``: The + ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTDETectmethod`` command. + - ``.burstlength``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLENGTH`` command. + - ``.burstlatency``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:BURSTLatency`` + command. + - ``.csactive``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSActive`` command. + - ``.cslevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSLevel`` command. + - ``.csmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSMode`` command. + - ``.cssource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:CSSource`` command. + - ``.datarate``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATARate`` command. + - ``.datasource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:DATASource`` command. + - ``.hysteresis``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:HYSteresis`` command. + - ``.logic1source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC1SOUrce`` + command tree. + - ``.logic2source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC2SOUrce`` + command tree. + - ``.logic3source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC3SOUrce`` + command tree. + - ``.logic4source``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:LOGIC4SOUrce`` + command tree. + - ``.margin``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MARgin`` command. + - ``.maxcas``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MAXCAS`` command. + - ``.mincas``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:MINCas`` command. + - ``.postamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:POSTAMBLE`` command + tree. + - ``.preamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:PREAMBLE`` command tree. + - ``.reflevelmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLEVELMode`` + command. + - ``.reflevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:REFLevel`` command tree. + - ``.standard``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STANdard`` command. + - ``.strobesource``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:STROBESource`` + command. + - ``.tolerance``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE:TOLERance`` command. + """ + return self._ddrreadwrite + + @property + def ddrwrite(self) -> SearchSearchItemTriggerADdrwrite: + """Return the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:DDRWRITE?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:DDRWRITE?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.burstdetectmethod``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTDETectmethod`` + command. + - ``.burstlength``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLENGTH`` command. + - ``.burstlatency``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:BURSTLatency`` command. + - ``.csactive``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSActive`` command. + - ``.cslevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSLevel`` command. + - ``.csmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSMode`` command. + - ``.cssource``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:CSSource`` command. + - ``.datarate``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATARate`` command. + - ``.datasource``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:DATASource`` command. + - ``.hysteresis``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:HYSteresis`` command. + - ``.logic1source``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC1SOUrce`` command + tree. + - ``.logic2source``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC2SOUrce`` command + tree. + - ``.logic3source``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC3SOUrce`` command + tree. + - ``.logic4source``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:LOGIC4SOUrce`` command + tree. + - ``.margin``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MARgin`` command. + - ``.maxcas``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MAXCAS`` command. + - ``.mincas``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:MINCas`` command. + - ``.postamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:POSTAMBLE`` command tree. + - ``.preamble``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:PREAMBLE`` command tree. + - ``.reflevelmode``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLEVELMode`` command. + - ``.reflevel``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:REFLevel`` command tree. + - ``.standard``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STANdard`` command. + - ``.strobesource``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:STROBESource`` command. + - ``.tolerance``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE:TOLERance`` command. + """ + return self._ddrwrite + + @property + def edge(self) -> SearchSearchItemTriggerAEdge: + """Return the ``SEARCH:SEARCH:TRIGger:A:EDGE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:EDGE?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:EDGE?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.slope``: The ``SEARCH:SEARCH:TRIGger:A:EDGE:SLOpe`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:EDGE:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:EDGE:THReshold`` command. + """ + return self._edge + + @property + def logic(self) -> SearchSearchItemTriggerALogic: + """Return the ``SEARCH:SEARCH:TRIGger:A:LOGIc`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:LOGIc?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:LOGIc?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.clock``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:CLOCk`` command tree. + - ``.deltatime``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:DELTatime`` command. + - ``.function``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:FUNCtion`` command. + - ``.input``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:INPUT`` command tree. + - ``.level``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LEVel`` command tree. + - ``.logicpattern``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:LOGICPattern`` command tree. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:POLarity`` command. + - ``.useclockedge``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:USEClockedge`` command. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc:WHEn`` command. + """ + return self._logic + + @property + def pulsewidth(self) -> SearchSearchItemTriggerAPulsewidth: + """Return the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:PULSEWidth?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.highlimit``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:HIGHLimit`` command. + - ``.logicqualification``: The + ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOGICQUALification`` command. + - ``.lowlimit``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:LOWLimit`` command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:THReshold`` command. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth:WHEn`` command. + """ + return self._pulsewidth + + @property + def runt(self) -> SearchSearchItemTriggerARunt: + """Return the ``SEARCH:SEARCH:TRIGger:A:RUNT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:RUNT?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.logicqualification``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:LOGICQUALification`` + command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:THReshold`` command tree. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:WHEn`` command. + - ``.width``: The ``SEARCH:SEARCH:TRIGger:A:RUNT:WIDth`` command. + """ + return self._runt + + @property + def sethold(self) -> SearchSearchItemTriggerASethold: + """Return the ``SEARCH:SEARCH:TRIGger:A:SETHold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:SETHold?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:SETHold?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.clock``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk`` command tree. + - ``.holdtime``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:HOLDTime`` command. + - ``.level``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LEVel`` command tree. + - ``.logicpattern``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:LOGICPattern`` command + tree. + - ``.settime``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:SETTime`` command. + """ + return self._sethold + + @property + def state(self) -> SearchSearchItemTriggerAState: + """Return the ``SEARCH:SEARCH:TRIGger:A:STATE`` command. + + Description: + - This command sets or queries the enabled state of the search. The search number is + specified by x. + + Usage: + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:STATE value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:STATE {ON|OFF|} + ``` + + Info: + - ```` = 1 enables the search. Any other character disables the search. + - ``ON`` enables the search. + - ``OFF`` disables the search. + """ + return self._state + + @property + def stopacq(self) -> SearchSearchItemTriggerAStopacq: + """Return the ``SEARCH:SEARCH:TRIGger:A:STOPAcq`` command. + + Description: + - This command sets or queries whether acquisitions are stopped when a search hit is + found. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:STOPAcq?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:STOPAcq?`` 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:STOPAcq value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:STOPAcq {ON|OFF|} + - SEARCH:SEARCH:TRIGger:A:STOPAcq? + ``` + + Info: + - ```` is the number of the search on which to enable or disable the stop acquisition + function. + - ```` = 1 enables stopping when a search hit is found. Any other character + disables the feature. + - ``ON`` enables stopping when a search hit is found. + - ``OFF`` disables stopping on a search hit. + """ + return self._stopacq + + @property + def timeout(self) -> SearchSearchItemTriggerATimeout: + """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TIMEOut?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TIMEOut?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.logicqualification``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:LOGICQUALification`` + command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:THReshold`` command. + - ``.time``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. + """ + return self._timeout + + @property + def transition(self) -> SearchSearchItemTriggerATransition: + """Return the ``SEARCH:SEARCH:TRIGger:A:TRANsition`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TRANsition?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:TRANsition?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.deltatime``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:DELTATime`` command. + - ``.logicqualification``: The + ``SEARCH:SEARCH:TRIGger:A:TRANsition:LOGICQUALification`` command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:THReshold`` command tree. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition:WHEn`` command. + """ + return self._transition + + @property + def type(self) -> SearchSearchItemTriggerAType: + """Return the ``SEARCH:SEARCH:TRIGger:A:TYPe`` command. + + Description: + - This command sets or queries the trigger type setting for a search to determine where + to place a mark. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TYPe?`` + query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:TYPe?`` + 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:TYPe value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TRIGger:A:TYPe {EDGE|RUNT|TRANsition|PULSEWidth|TIMEOut|LOGIc|SETHold|WINdow|Bus|DDRRead|DDRREADWrite|DDRWrite} + - SEARCH:SEARCH:TRIGger:A:TYPe? + ``` + + Info: + - ``EDGE`` triggers when the source input signal amplitude crosses the specified level + in the direction given by the slope. + - ``RUNT`` triggers when a pulse crosses the first preset voltage threshold but does not + cross the second preset threshold before recrossing the first. The thresholds are set + with the ``SEARCH:SEARCH:TRIGger:A:RUNt:HIGH`` and + ``SEARCH:SEARCH:TRIGger:A:RUNt:LOW THRESHOLD`` commands. + - ``TRANsition`` triggers when a pulse crosses both thresholds in the same direction as + the specified polarity and the transition time between the two threshold crossings is + greater or less than the specified time delta. + - ``PULSEWidth`` triggers on input signal source pulses that are inside or outside of + the given time range specified by + ``SEARCH:SEARCH:TRIGger:A:LOGIc:PATtern:WHEn:LESSLimit`` and + ``SEARCH:SEARCH:TRIGger:A:LOGIc:PATtern:WHEn:MORELimit``. The polarity is selected + using the ``SEARCH:SEARCH:TRIGger:A:RUNT``: POLarity command. + - ``TIMEOut`` triggers on an input signal source that stays above, stays below, or stays + either above or beow the trigger level for a given time. + - ``LOGIc`` specifies that a search occurs when specified conditions are met, and is + controlled by the ``SEARCH:A:LOGIc`` commands. + - ``SETHold`` triggers on a functional pattern combination of one to three data sources + at the time of the clock transition. + - ``WINdow`` triggers on an input signal source that enters or exits the horizontal band + defined by the two trigger levels. + - ``Bus`` specifies that a search occurs when a communications signal is found. + - ``DDRRead`` triggers on a DDR Read event. + - ``DDRREADWrite`` triggers on a DDR Read or Write event. + - ``DDRWrite`` triggers on a DDR Write event. + """ # noqa: E501 + return self._type + + @property + def window(self) -> SearchSearchItemTriggerAWindow: + """Return the ``SEARCH:SEARCH:TRIGger:A:WINdow`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:WINdow?`` + query. + - Using the ``.verify(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:WINdow?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.crossing``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:CROSSIng`` command. + - ``.logicqualification``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:LOGICQUALification`` + command. + - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:POLarity`` command. + - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:SOUrce`` command. + - ``.threshold``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:THReshold`` command tree. + - ``.when``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:WHEn`` command. + - ``.width``: The ``SEARCH:SEARCH:TRIGger:A:WINdow:WIDth`` command. + """ + return self._window + + +class SearchSearchItemTrigger(SCPICmdRead): + """The ``SEARCH:SEARCH:TRIGger`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.a``: The ``SEARCH:SEARCH:TRIGger:A`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._a = SearchSearchItemTriggerA(device, f"{self._cmd_syntax}:A") + + @property + def a(self) -> SearchSearchItemTriggerA: + """Return the ``SEARCH:SEARCH:TRIGger:A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bus``: The ``SEARCH:SEARCH:TRIGger:A:BUS`` command tree. + - ``.ddrread``: The ``SEARCH:SEARCH:TRIGger:A:DDRREAD`` command tree. + - ``.ddrreadwrite``: The ``SEARCH:SEARCH:TRIGger:A:DDRREADWRITE`` command tree. + - ``.ddrwrite``: The ``SEARCH:SEARCH:TRIGger:A:DDRWRITE`` command tree. + - ``.edge``: The ``SEARCH:SEARCH:TRIGger:A:EDGE`` command tree. + - ``.logic``: The ``SEARCH:SEARCH:TRIGger:A:LOGIc`` command tree. + - ``.pulsewidth``: The ``SEARCH:SEARCH:TRIGger:A:PULSEWidth`` command tree. + - ``.runt``: The ``SEARCH:SEARCH:TRIGger:A:RUNT`` command tree. + - ``.sethold``: The ``SEARCH:SEARCH:TRIGger:A:SETHold`` command tree. + - ``.state``: The ``SEARCH:SEARCH:TRIGger:A:STATE`` command. + - ``.stopacq``: The ``SEARCH:SEARCH:TRIGger:A:STOPAcq`` command. + - ``.timeout``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut`` command tree. + - ``.transition``: The ``SEARCH:SEARCH:TRIGger:A:TRANsition`` command tree. + - ``.type``: The ``SEARCH:SEARCH:TRIGger:A:TYPe`` command. + - ``.window``: The ``SEARCH:SEARCH:TRIGger:A:WINdow`` command tree. + """ + return self._a + + +class SearchSearchItemTotal(SCPICmdRead): + """The ``SEARCH:SEARCH:TOTAL`` command. + + Description: + - This query-only command returns the total number of found search marks for this search. + The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TOTAL?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TOTAL?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TOTAL? + ``` + """ + + +class SearchSearchItemNavigate(SCPICmdWrite): + """The ``SEARCH:SEARCH:NAVigate`` command. + + Description: + - This command sets the navigation action for search marks. The NONE action is the default + setting when no action is being taken. The search number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:SEARCH:NAVigate value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:NAVigate {NEXT|PREVious|MIN|NONE|MAX} + ``` + + Info: + - ``NEXT`` goes to the next search mark. + - ``PREVious`` goes to the previous search mark. + - ``MIN`` goes to the search result with the smallest value. Only supported by search + results which have quantitative values (example: pulse width is supported, but not edge). + - ``NONE`` is the default setting when no action is being taken. + - ``MAX`` goes to the search result with the largest value. Only supported by search results + which have quantitative values (example: pulse width is supported, but not edge). + """ + + +class SearchSearchItemCopy(SCPICmdWrite): + """The ``SEARCH:SEARCH:COPy`` command. + + Description: + - This command (no query form) copies the search criteria to or from the trigger. The search + number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:SEARCH:COPy value`` command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:COPy {SEARCHtotrigger|TRIGgertosearch} + ``` + + Info: + - ``SEARCHtotrigger`` copies the search criteria to the trigger. + - ``TRIGgertosearch`` copies the trigger criteria to the search. + """ + + +class SearchSearchItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``SEARCH:SEARCH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.copy``: The ``SEARCH:SEARCH:COPy`` command. + - ``.navigate``: The ``SEARCH:SEARCH:NAVigate`` command. + - ``.total``: The ``SEARCH:SEARCH:TOTAL`` command. + - ``.trigger``: The ``SEARCH:SEARCH:TRIGger`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._copy = SearchSearchItemCopy(device, f"{self._cmd_syntax}:COPy") + self._navigate = SearchSearchItemNavigate(device, f"{self._cmd_syntax}:NAVigate") + self._total = SearchSearchItemTotal(device, f"{self._cmd_syntax}:TOTAL") + self._trigger = SearchSearchItemTrigger(device, f"{self._cmd_syntax}:TRIGger") + + @property + def copy(self) -> SearchSearchItemCopy: + """Return the ``SEARCH:SEARCH:COPy`` command. + + Description: + - This command (no query form) copies the search criteria to or from the trigger. The + search number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:SEARCH:COPy value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:COPy {SEARCHtotrigger|TRIGgertosearch} + ``` + + Info: + - ``SEARCHtotrigger`` copies the search criteria to the trigger. + - ``TRIGgertosearch`` copies the trigger criteria to the search. + """ + return self._copy + + @property + def navigate(self) -> SearchSearchItemNavigate: + """Return the ``SEARCH:SEARCH:NAVigate`` command. + + Description: + - This command sets the navigation action for search marks. The NONE action is the + default setting when no action is being taken. The search number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:SEARCH:NAVigate value`` + command. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:NAVigate {NEXT|PREVious|MIN|NONE|MAX} + ``` + + Info: + - ``NEXT`` goes to the next search mark. + - ``PREVious`` goes to the previous search mark. + - ``MIN`` goes to the search result with the smallest value. Only supported by search + results which have quantitative values (example: pulse width is supported, but not + edge). + - ``NONE`` is the default setting when no action is being taken. + - ``MAX`` goes to the search result with the largest value. Only supported by search + results which have quantitative values (example: pulse width is supported, but not + edge). + """ + return self._navigate + + @property + def total(self) -> SearchSearchItemTotal: + """Return the ``SEARCH:SEARCH:TOTAL`` command. + + Description: + - This query-only command returns the total number of found search marks for this + search. The search number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TOTAL?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TOTAL?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SEARCH:SEARCH:TOTAL? + ``` + """ + return self._total + + @property + def trigger(self) -> SearchSearchItemTrigger: + """Return the ``SEARCH:SEARCH:TRIGger`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.a``: The ``SEARCH:SEARCH:TRIGger:A`` command tree. + """ + return self._trigger + + +class SearchList(SCPICmdRead): + """The ``SEARCH:LIST`` command. + + Description: + - This command returns a comma separated list of all currently defined searches. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SEARCH:LIST? + ``` + """ + + +class SearchDelete(SCPICmdWrite): + """The ``SEARCH:DELete`` command. + + Description: + - This command deletes the specified search. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:DELete value`` command. + + SCPI Syntax: + ``` + - SEARCH:DELete + ``` + + Info: + - ```` is the specified search. The argument is of the form 'SEARCH', where + is ≥ 1). + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SearchDeleteall(SCPICmdWriteNoArguments): + """The ``SEARCH:DELETEALL`` command. + + Description: + - This command deletes all the active instances of search definitions defined in the scope + application. + + Usage: + - Using the ``.write()`` method will send the ``SEARCH:DELETEALL`` command. + + SCPI Syntax: + ``` + - SEARCH:DELETEALL + ``` + """ + + +class SearchAddnew(SCPICmdWrite): + """The ``SEARCH:ADDNew`` command. + + Description: + - This command adds the specified search. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:ADDNew value`` command. + + SCPI Syntax: + ``` + - SEARCH:ADDNew + ``` + + Info: + - ```` is the specified search. The argument is of the form 'SEARCH', where + is ≥ 1. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class Search(SCPICmdRead): + """The ``SEARCH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.addnew``: The ``SEARCH:ADDNew`` command. + - ``.deleteall``: The ``SEARCH:DELETEALL`` command. + - ``.delete``: The ``SEARCH:DELete`` command. + - ``.list``: The ``SEARCH:LIST`` command. + - ``.search``: The ``SEARCH:SEARCH`` command tree. + - ``.selected``: The ``SEARCH:SELected`` command. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "SEARCH") -> None: + super().__init__(device, cmd_syntax) + self._addnew = SearchAddnew(device, f"{self._cmd_syntax}:ADDNew") + self._deleteall = SearchDeleteall(device, f"{self._cmd_syntax}:DELETEALL") + self._delete = SearchDelete(device, f"{self._cmd_syntax}:DELete") + self._list = SearchList(device, f"{self._cmd_syntax}:LIST") + self._search: Dict[int, SearchSearchItem] = DefaultDictPassKeyToFactory( + lambda x: SearchSearchItem(device, f"{self._cmd_syntax}:SEARCH{x}") + ) + self._selected = SearchSelected(device, f"{self._cmd_syntax}:SELected") + + @property + def addnew(self) -> SearchAddnew: + """Return the ``SEARCH:ADDNew`` command. + + Description: + - This command adds the specified search. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:ADDNew value`` command. + + SCPI Syntax: + ``` + - SEARCH:ADDNew + ``` + + Info: + - ```` is the specified search. The argument is of the form 'SEARCH', + where is ≥ 1. + """ + return self._addnew + + @property + def deleteall(self) -> SearchDeleteall: + """Return the ``SEARCH:DELETEALL`` command. + + Description: + - This command deletes all the active instances of search definitions defined in the + scope application. + + Usage: + - Using the ``.write()`` method will send the ``SEARCH:DELETEALL`` command. + + SCPI Syntax: + ``` + - SEARCH:DELETEALL + ``` + """ + return self._deleteall + + @property + def delete(self) -> SearchDelete: + """Return the ``SEARCH:DELete`` command. + + Description: + - This command deletes the specified search. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:DELete value`` command. + + SCPI Syntax: + ``` + - SEARCH:DELete + ``` + + Info: + - ```` is the specified search. The argument is of the form 'SEARCH', + where is ≥ 1). + """ + return self._delete + + @property + def list(self) -> SearchList: + """Return the ``SEARCH:LIST`` command. + + Description: + - This command returns a comma separated list of all currently defined searches. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:LIST?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:LIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SEARCH:LIST? + ``` + """ + return self._list + + @property + def search(self) -> Dict[int, SearchSearchItem]: + """Return the ``SEARCH:SEARCH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH:SEARCH?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.copy``: The ``SEARCH:SEARCH:COPy`` command. + - ``.navigate``: The ``SEARCH:SEARCH:NAVigate`` command. + - ``.total``: The ``SEARCH:SEARCH:TOTAL`` command. + - ``.trigger``: The ``SEARCH:SEARCH:TRIGger`` command tree. + """ + return self._search + + @property + def selected(self) -> SearchSelected: + """Return the ``SEARCH:SELected`` command. + + Description: + - This command sets or queries the selected search, for example SEARCH1. The search + number is specified by x. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCH:SELected value`` command. + + SCPI Syntax: + ``` + - SEARCH:SELected SEARCH1 + ``` + + Info: + - ``SEARCH1`` is the specified search. + """ + return self._selected diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/searchtable.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/searchtable.py new file mode 100644 index 00000000..99c894f9 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/searchtable.py @@ -0,0 +1,48 @@ +"""The searchtable commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - SEARCHTABle {ADDNew|DELete} + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class Searchtable(SCPICmdWrite): + """The ``SEARCHTABle`` command. + + Description: + - This command adds or deletes a new search event table in an Option 5-WIN (Microsoft + Windows 10 OS) TekExpress compliance testing application. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCHTABle value`` command. + + SCPI Syntax: + ``` + - SEARCHTABle {ADDNew|DELete} + ``` + + Info: + - ``ADDNew`` adds a new search events table in the display area. + - ``DELete`` removes a displayed search events table from the display area. + - ```` contains the name of the search table. + """ + + def __init__( + self, device: Optional["PIDevice"] = None, cmd_syntax: str = "SEARCHTABle" + ) -> None: + super().__init__(device, cmd_syntax) diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/sv.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/sv.py new file mode 100644 index 00000000..d8364e29 --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/sv.py @@ -0,0 +1,3013 @@ +"""The sv commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - SV:CH:SELect:SPECtrogram {ON|OFF} + - SV:CH:SELect:SPECtrogram? + - SV:LOCKCenter {ON|1|OFF|0} + - SV:LOCKCenter? + - SV:LOCKSpectrum {ON|1|OFF|0} + - SV:LOCKSpectrum? + - SV:MARKER:PEAK:EXCURsion + - SV:MARKER:PEAK:EXCURsion? + - SV:MARKER:PEAK:MAXimum + - SV:MARKER:PEAK:MAXimum? + - SV:MARKER:PEAK:STATE {CH} + - SV:MARKER:PEAK:STATE? + - SV:MARKER:PEAK:THReshold + - SV:MARKER:PEAK:THReshold? + - SV:MARKER:PEAKS:AMPLITUDE? + - SV:MARKER:PEAKS:FREQuency? + - SV:MARKER:REFERence + - SV:MARKER:REFERence:AMPLITUDE? + - SV:MARKER:REFERence:FREQuency? + - SV:MARKER:TYPe {DELta|ABSolute} + - SV:MARKER:TYPe? + - SV:RF_PHASe:REFerence:MASTer {CH|NONE} + - SV:RF_PHASe:REFerence:MASTer? + - SV:S_CH:RF_AVErage:NUMAVg + - SV:S_CH:RF_AVErage:NUMAVg? + - SV:S_CH:RF_MAGnitude:FORMat {AMPLINear|POWLINear|POWLOG} + - SV:S_CH:RF_MAGnitude:FORMat? + - SV:S_CH:RF_PHASe:REFerence:DEGrees + - SV:S_CH:RF_PHASe:REFerence:DEGrees? + - SV:S_CH:RF_PHASe:REFerence:POSition {TRIGger|CURSor} + - SV:S_CH:RF_PHASe:REFerence:POSition? + - SV:S_CH:RF_PHASe:REFerence:TIMe + - SV:S_CH:RF_PHASe:REFerence:TIMe? + - SV:S_CH:RF_PHASe:WRAP:DEGrees + - SV:S_CH:RF_PHASe:WRAP:DEGrees? + - SV:S_CH:RF_PHASe:WRAP:STATE {ON|OFF} + - SV:S_CH:RF_PHASe:WRAP:STATE? + - SV:S_CH:SELTrace {NORMal|MAXHold|MINHold|AVErage} + - SV:S_CH:SELTrace? + - SV:S_CH:SELect:RF_AVErage {ON|1|OFF|0} + - SV:S_CH:SELect:RF_AVErage? + - SV:S_CH:SELect:RF_FREQuency {ON|OFF} + - SV:S_CH:SELect:RF_FREQuency? + - SV:S_CH:SELect:RF_MAGnitude {ON|OFF} + - SV:S_CH:SELect:RF_MAGnitude? + - SV:S_CH:SELect:RF_MAXHold {ON|1|OFF|0} + - SV:S_CH:SELect:RF_MAXHold? + - SV:S_CH:SELect:RF_MINHold {ON|1|OFF|0} + - SV:S_CH:SELect:RF_MINHold? + - SV:S_CH:SELect:RF_NORMal {ON|1|OFF|0} + - SV:S_CH:SELect:RF_NORMal? + - SV:S_CH:SELect:RF_PHASe {ON|OFF} + - SV:S_CH:SELect:RF_PHASe? + - SV:S_CH:SELect:SPECtrogram {ON|OFF} + - SV:S_CH:SELect:SPECtrogram? + - SV:S_CH:SQUELCH:STATE {ON|OFF} + - SV:S_CH:SQUELCH:STATE? + - SV:S_CH:SQUELCH:THReshold + - SV:S_CH:SQUELCH:THReshold? + - SV:S_CH:UNIts {DBM|DBUW|DBMV|DBUV|DBMA|DBUA} + - SV:S_CH:UNIts? + - SV:SPECtrogram:CSCale:MAX + - SV:SPECtrogram:CSCale:MAX? + - SV:SPECtrogram:CSCale:MIN + - SV:SPECtrogram:CSCale:MIN? + - SV:SPECtrogram:CURSor:A {1|0|ON|OFF} + - SV:SPECtrogram:CURSor:A? + - SV:SPECtrogram:CURSor:B {1|0|ON|OFF} + - SV:SPECtrogram:CURSor:B? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + SCPICmdWriteNoArguments, + ValidatedChannel, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class SvSpectrogramCursorB(SCPICmdWrite, SCPICmdRead): + """The ``SV:SPECtrogram:CURSor:B`` command. + + Description: + - This command sets or queries whether the spectrum trace at cursor B position is selected + or not. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CURSor:B?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CURSor:B?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:SPECtrogram:CURSor:B value`` + command. + + SCPI Syntax: + ``` + - SV:SPECtrogram:CURSor:B {1|0|ON|OFF} + - SV:SPECtrogram:CURSor:B? + ``` + + Info: + - ``1`` on the spectrum trace for cursor B position. + - ``0`` turns off the spectrum trace for cursor B position. Off is the default. + - ``ON`` turns on the spectrum trace for cursor B position. + - ``OFF`` turns off the spectrum trace for cursor B position. Off is the default. + """ + + +class SvSpectrogramCursorA(SCPICmdWrite, SCPICmdRead): + """The ``SV:SPECtrogram:CURSor:A`` command. + + Description: + - This command sets or Queries whether the spectrum trace at cursor A position is selected + or not. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CURSor:A?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CURSor:A?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:SPECtrogram:CURSor:A value`` + command. + + SCPI Syntax: + ``` + - SV:SPECtrogram:CURSor:A {1|0|ON|OFF} + - SV:SPECtrogram:CURSor:A? + ``` + + Info: + - ``1`` turns on the spectrum trace for cursor A position. + - ``0`` turns off the spectrum trace for cursor A position. Off is the default. + - ``ON`` turns on the spectrum trace for cursor A position. + - ``OFF`` turns off the spectrum trace for cursor A position. Off is the default. + """ + + +class SvSpectrogramCursor(SCPICmdRead): + """The ``SV:SPECtrogram:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CURSor?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.a``: The ``SV:SPECtrogram:CURSor:A`` command. + - ``.b``: The ``SV:SPECtrogram:CURSor:B`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._a = SvSpectrogramCursorA(device, f"{self._cmd_syntax}:A") + self._b = SvSpectrogramCursorB(device, f"{self._cmd_syntax}:B") + + @property + def a(self) -> SvSpectrogramCursorA: + """Return the ``SV:SPECtrogram:CURSor:A`` command. + + Description: + - This command sets or Queries whether the spectrum trace at cursor A position is + selected or not. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CURSor:A?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CURSor:A?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:SPECtrogram:CURSor:A value`` + command. + + SCPI Syntax: + ``` + - SV:SPECtrogram:CURSor:A {1|0|ON|OFF} + - SV:SPECtrogram:CURSor:A? + ``` + + Info: + - ``1`` turns on the spectrum trace for cursor A position. + - ``0`` turns off the spectrum trace for cursor A position. Off is the default. + - ``ON`` turns on the spectrum trace for cursor A position. + - ``OFF`` turns off the spectrum trace for cursor A position. Off is the default. + """ + return self._a + + @property + def b(self) -> SvSpectrogramCursorB: + """Return the ``SV:SPECtrogram:CURSor:B`` command. + + Description: + - This command sets or queries whether the spectrum trace at cursor B position is + selected or not. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CURSor:B?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CURSor:B?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:SPECtrogram:CURSor:B value`` + command. + + SCPI Syntax: + ``` + - SV:SPECtrogram:CURSor:B {1|0|ON|OFF} + - SV:SPECtrogram:CURSor:B? + ``` + + Info: + - ``1`` on the spectrum trace for cursor B position. + - ``0`` turns off the spectrum trace for cursor B position. Off is the default. + - ``ON`` turns on the spectrum trace for cursor B position. + - ``OFF`` turns off the spectrum trace for cursor B position. Off is the default. + """ + return self._b + + +class SvSpectrogramCscaleMin(SCPICmdWrite, SCPICmdRead): + """The ``SV:SPECtrogram:CSCale:MIN`` command. + + Description: + - This command sets or queries the minimum color scale value. Minimum must be < Maximum. + Thus, if the user is adjusting Minimum up to the point where it would be the same as + Minimum, then Maximum begins incrementing as needed to stay 1 dB above minimum. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CSCale:MIN?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CSCale:MIN?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:SPECtrogram:CSCale:MIN value`` + command. + + SCPI Syntax: + ``` + - SV:SPECtrogram:CSCale:MIN + - SV:SPECtrogram:CSCale:MIN? + ``` + + Info: + - ```` sets the minimum color scale value. The default value is -100.0 and the valid + range is -170.0 to 99.0. + """ + + +class SvSpectrogramCscaleMax(SCPICmdWrite, SCPICmdRead): + """The ``SV:SPECtrogram:CSCale:MAX`` command. + + Description: + - This command sets or queries the maximum color scale value. Maximum must be > Minimum. + Thus, if the user is adjusting Maximum down to the point where it would be the same as + Minimum, then Minimum begins decrementing as needed to stay 1 dB below Maximum. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CSCale:MAX?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CSCale:MAX?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:SPECtrogram:CSCale:MAX value`` + command. + + SCPI Syntax: + ``` + - SV:SPECtrogram:CSCale:MAX + - SV:SPECtrogram:CSCale:MAX? + ``` + + Info: + - ```` sets the maximum color scale value. The default value is 0.0 and the valid range + is -169.0 to 100.0. + """ + + +class SvSpectrogramCscale(SCPICmdRead): + """The ``SV:SPECtrogram:CSCale`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CSCale?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CSCale?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.max``: The ``SV:SPECtrogram:CSCale:MAX`` command. + - ``.min``: The ``SV:SPECtrogram:CSCale:MIN`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._max = SvSpectrogramCscaleMax(device, f"{self._cmd_syntax}:MAX") + self._min = SvSpectrogramCscaleMin(device, f"{self._cmd_syntax}:MIN") + + @property + def max(self) -> SvSpectrogramCscaleMax: + """Return the ``SV:SPECtrogram:CSCale:MAX`` command. + + Description: + - This command sets or queries the maximum color scale value. Maximum must be > Minimum. + Thus, if the user is adjusting Maximum down to the point where it would be the same as + Minimum, then Minimum begins decrementing as needed to stay 1 dB below Maximum. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CSCale:MAX?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CSCale:MAX?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:SPECtrogram:CSCale:MAX value`` + command. + + SCPI Syntax: + ``` + - SV:SPECtrogram:CSCale:MAX + - SV:SPECtrogram:CSCale:MAX? + ``` + + Info: + - ```` sets the maximum color scale value. The default value is 0.0 and the valid + range is -169.0 to 100.0. + """ + return self._max + + @property + def min(self) -> SvSpectrogramCscaleMin: + """Return the ``SV:SPECtrogram:CSCale:MIN`` command. + + Description: + - This command sets or queries the minimum color scale value. Minimum must be < Maximum. + Thus, if the user is adjusting Minimum up to the point where it would be the same as + Minimum, then Maximum begins incrementing as needed to stay 1 dB above minimum. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CSCale:MIN?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CSCale:MIN?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:SPECtrogram:CSCale:MIN value`` + command. + + SCPI Syntax: + ``` + - SV:SPECtrogram:CSCale:MIN + - SV:SPECtrogram:CSCale:MIN? + ``` + + Info: + - ```` sets the minimum color scale value. The default value is -100.0 and the + valid range is -170.0 to 99.0. + """ + return self._min + + +class SvSpectrogram(SCPICmdRead): + """The ``SV:SPECtrogram`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.cscale``: The ``SV:SPECtrogram:CSCale`` command tree. + - ``.cursor``: The ``SV:SPECtrogram:CURSor`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._cscale = SvSpectrogramCscale(device, f"{self._cmd_syntax}:CSCale") + self._cursor = SvSpectrogramCursor(device, f"{self._cmd_syntax}:CURSor") + + @property + def cscale(self) -> SvSpectrogramCscale: + """Return the ``SV:SPECtrogram:CSCale`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CSCale?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CSCale?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.max``: The ``SV:SPECtrogram:CSCale:MAX`` command. + - ``.min``: The ``SV:SPECtrogram:CSCale:MIN`` command. + """ + return self._cscale + + @property + def cursor(self) -> SvSpectrogramCursor: + """Return the ``SV:SPECtrogram:CURSor`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram:CURSor?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram:CURSor?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.a``: The ``SV:SPECtrogram:CURSor:A`` command. + - ``.b``: The ``SV:SPECtrogram:CURSor:B`` command. + """ + return self._cursor + + +class SvSItemChannelUnits(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:UNIts`` command. + + Description: + - This command sets or queries the absolute logarithmic amplitude vertical scale units to + show in the specified spectrum trace remote scope channel of the Spectrum View. S is + the remote scope number and Ch is the channel number to use as the Spectrum View + source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:UNIts?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:UNIts?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:UNIts value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:UNIts {DBM|DBUW|DBMV|DBUV|DBMA|DBUA} + - SV:S_CH:UNIts? + ``` + + Info: + - ``DBM`` specifies Decibel milliwatts (dBm). + - ``DBUW`` specifies Decibel microwatts (dBµW). + - ``DBMV`` specifies Decibel millivolts (dBmV). + - ``DBUV`` specifies Decibel microvolts (dBµV). + - ``DBMA`` specifies Decibel milliamperes (dBmA). + - ``DBUA`` specifies Decibel microamperes (dBµA). + """ + + +class SvSItemChannelSquelchThreshold(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SQUELCH:THReshold`` command. + + Description: + - This command sets or queries the Squelch threshold value for the RF vs Time traces for the + specified channel. S is the remote scope number and Ch is the channel number to use + as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SQUELCH:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SQUELCH:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SQUELCH:THReshold value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:SQUELCH:THReshold + - SV:S_CH:SQUELCH:THReshold? + ``` + + Info: + - ``NR3`` sets the threshold value, in volts, applied to the Magnitude vs. Time trace that + determines whether or not to show the Frequency and Phase vs. Time traces for the same + channel. + """ + + +class SvSItemChannelSquelchState(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SQUELCH:STATE`` command. + + Description: + - This command sets or queries whether Squelch is enabled for the RF vs Time traces for the + specified channel. The frequency vs. time and phase vs. time traces aren't meaningful when + the transmitting signal is turned off, as they just show broadband noise that clutters up + the display. With squelch, a threshold may be defined for the magnitude vs. time trace to + indicate when the transmitter is on/off. Then the frequency and phase vs. time traces are + shown only when the magnitude vs. time trace is above the threshold and they are blanked + out when it's below the threshold. S is the remote scope number and Ch is the + channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SQUELCH:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SQUELCH:STATE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SQUELCH:STATE value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:SQUELCH:STATE {ON|OFF} + - SV:S_CH:SQUELCH:STATE? + ``` + + Info: + - ``ON`` enables (turns on) Squelch calculations. + - ``OFF`` disables (turns off) Squelch calculations. + """ + + +class SvSItemChannelSquelch(SCPICmdRead): + """The ``SV:S_CH:SQUELCH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SQUELCH?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SQUELCH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.state``: The ``SV:S_CH:SQUELCH:STATE`` command. + - ``.threshold``: The ``SV:S_CH:SQUELCH:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._state = SvSItemChannelSquelchState(device, f"{self._cmd_syntax}:STATE") + self._threshold = SvSItemChannelSquelchThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def state(self) -> SvSItemChannelSquelchState: + """Return the ``SV:S_CH:SQUELCH:STATE`` command. + + Description: + - This command sets or queries whether Squelch is enabled for the RF vs Time traces for + the specified channel. The frequency vs. time and phase vs. time traces aren't + meaningful when the transmitting signal is turned off, as they just show broadband + noise that clutters up the display. With squelch, a threshold may be defined for the + magnitude vs. time trace to indicate when the transmitter is on/off. Then the + frequency and phase vs. time traces are shown only when the magnitude vs. time trace + is above the threshold and they are blanked out when it's below the threshold. S is + the remote scope number and Ch is the channel number to use as the Spectrum View + source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SQUELCH:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SQUELCH:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SQUELCH:STATE value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:SQUELCH:STATE {ON|OFF} + - SV:S_CH:SQUELCH:STATE? + ``` + + Info: + - ``ON`` enables (turns on) Squelch calculations. + - ``OFF`` disables (turns off) Squelch calculations. + """ + return self._state + + @property + def threshold(self) -> SvSItemChannelSquelchThreshold: + """Return the ``SV:S_CH:SQUELCH:THReshold`` command. + + Description: + - This command sets or queries the Squelch threshold value for the RF vs Time traces for + the specified channel. S is the remote scope number and Ch is the channel number + to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SQUELCH:THReshold?`` + query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SQUELCH:THReshold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SQUELCH:THReshold value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SQUELCH:THReshold + - SV:S_CH:SQUELCH:THReshold? + ``` + + Info: + - ``NR3`` sets the threshold value, in volts, applied to the Magnitude vs. Time trace + that determines whether or not to show the Frequency and Phase vs. Time traces for the + same channel. + """ + return self._threshold + + +class SvSItemChannelSelectSpectrogram(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SELect:SPECtrogram`` command. + + Description: + - This command sets or queries whether the spectrogram plot for the specified channel is + displayed in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:SPECtrogram?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:SPECtrogram?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:SPECtrogram value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:SPECtrogram {ON|OFF} + - SV:S_CH:SELect:SPECtrogram? + ``` + + Info: + - ``S`` is the remote scope number and CH specifies the analog channel as source. + - ``ON`` turns on spectrogram. + - ``OFF`` turns of spectrogram. + """ + + +class SvSItemChannelSelectRfPhase(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SELect:RF_PHASe`` command. + + Description: + - This command sets or queries whether the Phase vs. Time trace for the specified channel is + displayed in the Waveform View. S is the remote scope number and Ch is the channel + number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_PHASe?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_PHASe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SELect:RF_PHASe value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_PHASe {ON|OFF} + - SV:S_CH:SELect:RF_PHASe? + ``` + + Info: + - ``ON`` enables display of the Phase vs. Time trace. + - ``OFF`` disables display of the Phase vs. Time trace. + """ + + +class SvSItemChannelSelectRfNormal(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SELect:RF_NORMal`` command. + + Description: + - This command sets or queries whether the Normal trace is displayed for the specified + spectrum trace channel in the Spectrum View. S is the remote scope number and Ch is + the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_NORMal?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_NORMal?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SELect:RF_NORMal value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_NORMal {ON|1|OFF|0} + - SV:S_CH:SELect:RF_NORMal? + ``` + + Info: + - ``ON, 1`` enables the display of the Normal trace for the specified spectrum trace + channel. + - ``OFF, 0`` disables the display of the Normal trace for the specified spectrum trace + channel. + """ + + +class SvSItemChannelSelectRfMinhold(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SELect:RF_MINHold`` command. + + Description: + - This command sets or queries whether the Min Hold trace is displayed for the specified + spectrum trace channel in the Spectrum View. S is the remote scope number and Ch is + the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_MINHold?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_MINHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SELect:RF_MINHold value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_MINHold {ON|1|OFF|0} + - SV:S_CH:SELect:RF_MINHold? + ``` + + Info: + - ``ON, 1`` enables the display of the Min Hold trace for the specified spectrum trace + channel. + - ``OFF, 0`` disables the display of the Min Hold trace for the specified spectrum trace + channel. + """ + + +class SvSItemChannelSelectRfMaxhold(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SELect:RF_MAXHold`` command. + + Description: + - This command sets or queries whether the Max Hold trace is displayed for the specified + spectrum trace channel in the Spectrum View. S is the remote scope number and Ch is + the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_MAXHold?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_MAXHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SELect:RF_MAXHold value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_MAXHold {ON|1|OFF|0} + - SV:S_CH:SELect:RF_MAXHold? + ``` + + Info: + - ``ON, 1`` enables the display of the Max Hold trace for the specified spectrum trace + channel. + - ``OFF, 0`` disables the display of the Max Hold trace for the specified spectrum trace + channel. + """ + + +class SvSItemChannelSelectRfMagnitude(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SELect:RF_MAGnitude`` command. + + Description: + - This command sets or queries whether the Magnitude vs. Time trace for the specified + channel is displayed in the Waveform View. S is the remote scope number and Ch is + the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_MAGnitude?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_MAGnitude?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:RF_MAGnitude value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_MAGnitude {ON|OFF} + - SV:S_CH:SELect:RF_MAGnitude? + ``` + + Info: + - ``ON`` enables display of the Magnitude vs. Time trace. + - ``OFF`` disables display of the Magnitude vs. Time trace. + """ + + +class SvSItemChannelSelectRfFrequency(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SELect:RF_FREQuency`` command. + + Description: + - This command sets or queries whether the Frequency vs. Time trace for the specified + channel is displayed in the Waveform View. S is the remote scope number and Ch is + the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_FREQuency?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_FREQuency?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:RF_FREQuency value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_FREQuency {ON|OFF} + - SV:S_CH:SELect:RF_FREQuency? + ``` + + Info: + - ``ON`` enables display of the Frequency vs. Time trace. + - ``OFF`` disables display of the Frequency vs. Time trace. + """ + + +class SvSItemChannelSelectRfAverage(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SELect:RF_AVErage`` command. + + Description: + - This command sets or queries whether the Average trace is displayed for the specified + spectrum trace channel in the Spectrum View. S is the remote scope number and Ch is + the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_AVErage?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_AVErage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SELect:RF_AVErage value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_AVErage {ON|1|OFF|0} + - SV:S_CH:SELect:RF_AVErage? + ``` + + Info: + - ``ON, 1`` enables the display of the Average trace for the specified spectrum trace + channel. + - ``OFF, 0`` disables the display of the Average trace for the specified spectrum trace + channel. + """ + + +class SvSItemChannelSelectRf(SCPICmdRead): + """The ``SV:S_CH:SELect:RF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.average``: The ``SV:S_CH:SELect:RF_AVErage`` command. + - ``.frequency``: The ``SV:S_CH:SELect:RF_FREQuency`` command. + - ``.magnitude``: The ``SV:S_CH:SELect:RF_MAGnitude`` command. + - ``.maxhold``: The ``SV:S_CH:SELect:RF_MAXHold`` command. + - ``.minhold``: The ``SV:S_CH:SELect:RF_MINHold`` command. + - ``.normal``: The ``SV:S_CH:SELect:RF_NORMal`` command. + - ``.phase``: The ``SV:S_CH:SELect:RF_PHASe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._average = SvSItemChannelSelectRfAverage(device, f"{self._cmd_syntax}_AVErage") + self._frequency = SvSItemChannelSelectRfFrequency(device, f"{self._cmd_syntax}_FREQuency") + self._magnitude = SvSItemChannelSelectRfMagnitude(device, f"{self._cmd_syntax}_MAGnitude") + self._maxhold = SvSItemChannelSelectRfMaxhold(device, f"{self._cmd_syntax}_MAXHold") + self._minhold = SvSItemChannelSelectRfMinhold(device, f"{self._cmd_syntax}_MINHold") + self._normal = SvSItemChannelSelectRfNormal(device, f"{self._cmd_syntax}_NORMal") + self._phase = SvSItemChannelSelectRfPhase(device, f"{self._cmd_syntax}_PHASe") + + @property + def average(self) -> SvSItemChannelSelectRfAverage: + """Return the ``SV:S_CH:SELect:RF_AVErage`` command. + + Description: + - This command sets or queries whether the Average trace is displayed for the specified + spectrum trace channel in the Spectrum View. S is the remote scope number and Ch + is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_AVErage?`` + query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_AVErage?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:RF_AVErage value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_AVErage {ON|1|OFF|0} + - SV:S_CH:SELect:RF_AVErage? + ``` + + Info: + - ``ON, 1`` enables the display of the Average trace for the specified spectrum trace + channel. + - ``OFF, 0`` disables the display of the Average trace for the specified spectrum trace + channel. + """ + return self._average + + @property + def frequency(self) -> SvSItemChannelSelectRfFrequency: + """Return the ``SV:S_CH:SELect:RF_FREQuency`` command. + + Description: + - This command sets or queries whether the Frequency vs. Time trace for the specified + channel is displayed in the Waveform View. S is the remote scope number and Ch + is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_FREQuency?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:SELect:RF_FREQuency?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:RF_FREQuency value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_FREQuency {ON|OFF} + - SV:S_CH:SELect:RF_FREQuency? + ``` + + Info: + - ``ON`` enables display of the Frequency vs. Time trace. + - ``OFF`` disables display of the Frequency vs. Time trace. + """ + return self._frequency + + @property + def magnitude(self) -> SvSItemChannelSelectRfMagnitude: + """Return the ``SV:S_CH:SELect:RF_MAGnitude`` command. + + Description: + - This command sets or queries whether the Magnitude vs. Time trace for the specified + channel is displayed in the Waveform View. S is the remote scope number and Ch + is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_MAGnitude?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:SELect:RF_MAGnitude?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:RF_MAGnitude value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_MAGnitude {ON|OFF} + - SV:S_CH:SELect:RF_MAGnitude? + ``` + + Info: + - ``ON`` enables display of the Magnitude vs. Time trace. + - ``OFF`` disables display of the Magnitude vs. Time trace. + """ + return self._magnitude + + @property + def maxhold(self) -> SvSItemChannelSelectRfMaxhold: + """Return the ``SV:S_CH:SELect:RF_MAXHold`` command. + + Description: + - This command sets or queries whether the Max Hold trace is displayed for the specified + spectrum trace channel in the Spectrum View. S is the remote scope number and Ch + is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_MAXHold?`` + query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_MAXHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:RF_MAXHold value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_MAXHold {ON|1|OFF|0} + - SV:S_CH:SELect:RF_MAXHold? + ``` + + Info: + - ``ON, 1`` enables the display of the Max Hold trace for the specified spectrum trace + channel. + - ``OFF, 0`` disables the display of the Max Hold trace for the specified spectrum trace + channel. + """ + return self._maxhold + + @property + def minhold(self) -> SvSItemChannelSelectRfMinhold: + """Return the ``SV:S_CH:SELect:RF_MINHold`` command. + + Description: + - This command sets or queries whether the Min Hold trace is displayed for the specified + spectrum trace channel in the Spectrum View. S is the remote scope number and Ch + is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_MINHold?`` + query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_MINHold?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:RF_MINHold value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_MINHold {ON|1|OFF|0} + - SV:S_CH:SELect:RF_MINHold? + ``` + + Info: + - ``ON, 1`` enables the display of the Min Hold trace for the specified spectrum trace + channel. + - ``OFF, 0`` disables the display of the Min Hold trace for the specified spectrum trace + channel. + """ + return self._minhold + + @property + def normal(self) -> SvSItemChannelSelectRfNormal: + """Return the ``SV:S_CH:SELect:RF_NORMal`` command. + + Description: + - This command sets or queries whether the Normal trace is displayed for the specified + spectrum trace channel in the Spectrum View. S is the remote scope number and Ch + is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_NORMal?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_NORMal?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:RF_NORMal value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_NORMal {ON|1|OFF|0} + - SV:S_CH:SELect:RF_NORMal? + ``` + + Info: + - ``ON, 1`` enables the display of the Normal trace for the specified spectrum trace + channel. + - ``OFF, 0`` disables the display of the Normal trace for the specified spectrum trace + channel. + """ + return self._normal + + @property + def phase(self) -> SvSItemChannelSelectRfPhase: + """Return the ``SV:S_CH:SELect:RF_PHASe`` command. + + Description: + - This command sets or queries whether the Phase vs. Time trace for the specified + channel is displayed in the Waveform View. S is the remote scope number and Ch + is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF_PHASe?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF_PHASe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:RF_PHASe value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:RF_PHASe {ON|OFF} + - SV:S_CH:SELect:RF_PHASe? + ``` + + Info: + - ``ON`` enables display of the Phase vs. Time trace. + - ``OFF`` disables display of the Phase vs. Time trace. + """ + return self._phase + + +class SvSItemChannelSelect(SCPICmdRead): + """The ``SV:S_CH:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.rf``: The ``SV:S_CH:SELect:RF`` command tree. + - ``.spectrogram``: The ``SV:S_CH:SELect:SPECtrogram`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._rf = SvSItemChannelSelectRf(device, f"{self._cmd_syntax}:RF") + self._spectrogram = SvSItemChannelSelectSpectrogram( + device, f"{self._cmd_syntax}:SPECtrogram" + ) + + @property + def rf(self) -> SvSItemChannelSelectRf: + """Return the ``SV:S_CH:SELect:RF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:RF?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect:RF?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.average``: The ``SV:S_CH:SELect:RF_AVErage`` command. + - ``.frequency``: The ``SV:S_CH:SELect:RF_FREQuency`` command. + - ``.magnitude``: The ``SV:S_CH:SELect:RF_MAGnitude`` command. + - ``.maxhold``: The ``SV:S_CH:SELect:RF_MAXHold`` command. + - ``.minhold``: The ``SV:S_CH:SELect:RF_MINHold`` command. + - ``.normal``: The ``SV:S_CH:SELect:RF_NORMal`` command. + - ``.phase``: The ``SV:S_CH:SELect:RF_PHASe`` command. + """ + return self._rf + + @property + def spectrogram(self) -> SvSItemChannelSelectSpectrogram: + """Return the ``SV:S_CH:SELect:SPECtrogram`` command. + + Description: + - This command sets or queries whether the spectrogram plot for the specified channel is + displayed in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect:SPECtrogram?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:SELect:SPECtrogram?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:SELect:SPECtrogram value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELect:SPECtrogram {ON|OFF} + - SV:S_CH:SELect:SPECtrogram? + ``` + + Info: + - ``S`` is the remote scope number and CH specifies the analog channel as source. + - ``ON`` turns on spectrogram. + - ``OFF`` turns of spectrogram. + """ + return self._spectrogram + + +class SvSItemChannelSeltrace(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:SELTrace`` command. + + Description: + - This command sets or queries the spectrum trace type to show for the specified channel in + the Spectrum View. Each channel's spectrum trace can display up to four traces; a Normal + trace (default), a Max Hold trace, a Min Hold trace and an Average trace. S is the + remote scope number and Ch is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELTrace?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELTrace?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SELTrace value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:SELTrace {NORMal|MAXHold|MINHold|AVErage} + - SV:S_CH:SELTrace? + ``` + + Info: + - ``NORMal`` selects the Normal trace for the specified spectrum trace channel. If the + specified spectrum trace channel does not have a Normal trace, this command is ignored. + - ``MAXHold`` selects the Max Hold trace for the specified spectrum trace channel. If the + specified spectrum trace channel does not have a Max Hold trace, this command is ignored. + - ``MINHold`` selects the Min Hold trace for the specified spectrum trace channel. If the + specified spectrum trace channel does not have a Min Hold trace, this command is ignored. + - ``AVErage`` selects the Average trace for the specified spectrum trace channel. If the + specified spectrum trace channel does not have an Average trace, this command is ignored. + """ + + +class SvSItemChannelRfPhaseWrapState(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:RF_PHASe:WRAP:STATE`` command. + + Description: + - This command sets or queries whether Phase Wrap is applied to the Phase vs. Time trace for + the specified channel. S is the remote scope number and Ch is the channel number to + use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:WRAP:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_PHASe:WRAP:STATE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:WRAP:STATE value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:WRAP:STATE {ON|OFF} + - SV:S_CH:RF_PHASe:WRAP:STATE? + ``` + + Info: + - ``ON`` enables applying phase wrap on the specified Phase vs. Time channel trace. + - ``OFF`` disables applying phase wrap on the specified Phase vs. Time channel trace. + """ + + +class SvSItemChannelRfPhaseWrapDegrees(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:RF_PHASe:WRAP:DEGrees`` command. + + Description: + - This command sets or queries the Phase Wrap limit for the Phase vs. Time trace for the + specified channel. S is the remote scope number and Ch is the channel number to use + as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:WRAP:DEGrees?`` + query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_PHASe:WRAP:DEGrees?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:WRAP:DEGrees value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:WRAP:DEGrees + - SV:S_CH:RF_PHASe:WRAP:DEGrees? + ``` + + Info: + - ``CH`` is the channel number of the Phase vs. Time trace. + - ``NR3`` sets the number of wrap degrees, from 180 degrees to infinity. When Phase Wrap is + enabled, the phase values in the Phase vs Time waveform are constrained to be within ± the + specified limit. Phase values below or above the limit are wrapped by repeatedly adding or + subtracting 360 degrees until they are within range. + """ + + +class SvSItemChannelRfPhaseWrap(SCPICmdRead): + """The ``SV:S_CH:RF_PHASe:WRAP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:WRAP?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_PHASe:WRAP?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number of the Phase vs. Time trace. + + Properties: + - ``.degrees``: The ``SV:S_CH:RF_PHASe:WRAP:DEGrees`` command. + - ``.state``: The ``SV:S_CH:RF_PHASe:WRAP:STATE`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._degrees = SvSItemChannelRfPhaseWrapDegrees(device, f"{self._cmd_syntax}:DEGrees") + self._state = SvSItemChannelRfPhaseWrapState(device, f"{self._cmd_syntax}:STATE") + + @property + def degrees(self) -> SvSItemChannelRfPhaseWrapDegrees: + """Return the ``SV:S_CH:RF_PHASe:WRAP:DEGrees`` command. + + Description: + - This command sets or queries the Phase Wrap limit for the Phase vs. Time trace for the + specified channel. S is the remote scope number and Ch is the channel number to + use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:WRAP:DEGrees?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_PHASe:WRAP:DEGrees?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:WRAP:DEGrees value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:WRAP:DEGrees + - SV:S_CH:RF_PHASe:WRAP:DEGrees? + ``` + + Info: + - ``CH`` is the channel number of the Phase vs. Time trace. + - ``NR3`` sets the number of wrap degrees, from 180 degrees to infinity. When Phase Wrap + is enabled, the phase values in the Phase vs Time waveform are constrained to be + within ± the specified limit. Phase values below or above the limit are wrapped by + repeatedly adding or subtracting 360 degrees until they are within range. + """ + return self._degrees + + @property + def state(self) -> SvSItemChannelRfPhaseWrapState: + """Return the ``SV:S_CH:RF_PHASe:WRAP:STATE`` command. + + Description: + - This command sets or queries whether Phase Wrap is applied to the Phase vs. Time trace + for the specified channel. S is the remote scope number and Ch is the channel + number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:WRAP:STATE?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_PHASe:WRAP:STATE?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:WRAP:STATE value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:WRAP:STATE {ON|OFF} + - SV:S_CH:RF_PHASe:WRAP:STATE? + ``` + + Info: + - ``ON`` enables applying phase wrap on the specified Phase vs. Time channel trace. + - ``OFF`` disables applying phase wrap on the specified Phase vs. Time channel trace. + """ + return self._state + + +class SvSItemChannelRfPhaseReferenceTime(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:RF_PHASe:REFerence:TIMe`` command. + + Description: + - This command sets or queries the channel Phase Reference time in seconds. S is the + remote scope number and Ch is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:REFerence:TIMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:TIMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:TIMe value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:REFerence:TIMe + - SV:S_CH:RF_PHASe:REFerence:TIMe? + ``` + + Info: + - ``NR3`` is the Phase Reference time, in seconds. This indicates the time at which the + phase value set by ``SV:S_CH:RF_PHASe:REFerence:DEGrees`` is applied. If the phase + position set by ``SV:S_CH:RF_PHASe:REFerence:POSition`` is TRIGger, then the phase + time is fixed at 0 seconds and cannot be changed. If the phase position is CURSor, then + the phase time may be set to any value, and is initialized to the position of Cursor A. If + CH is the master phase reference, then the time is used to calculate the phase values + of all other channels. + """ + + +class SvSItemChannelRfPhaseReferencePosition(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:RF_PHASe:REFerence:POSition`` command. + + Description: + - This command sets or queries whether the channel Phase Reference is located at the Trigger + position or at the Cursor A position. S is the remote scope number and Ch is the + channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:REFerence:POSition?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:POSition?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:POSition value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:REFerence:POSition {TRIGger|CURSor} + - SV:S_CH:RF_PHASe:REFerence:POSition? + ``` + + Info: + - ``TRIGger`` sets the Phase Reference location to the Trigger position. + - ``CURSor`` sets the channel Phase Reference location to the phase time set by + ``SV:S_CH:RF_PHASe:REFerence:TIMe``, which defaults to the Cursor A position. + """ + + +class SvSItemChannelRfPhaseReferenceDegrees(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:RF_PHASe:REFerence:DEGrees`` command. + + Description: + - This command sets or queries the channel Phase Reference value in degrees. S is the + remote scope number and Ch is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:REFerence:DEGrees?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:DEGrees?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:DEGrees value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:REFerence:DEGrees + - SV:S_CH:RF_PHASe:REFerence:DEGrees? + ``` + + Info: + - ``NR3`` is the Phase Reference value, in degrees. This indicates a fixed phase value at + the phase time set by ``SV:S_CH:RF_PHASe:REFerence:TIMe``. If CH is the master + phase reference, then the value is used to calculate the phase values of all other + channels. + """ + + +class SvSItemChannelRfPhaseReference(SCPICmdRead): + """The ``SV:S_CH:RF_PHASe:REFerence`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:REFerence?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_PHASe:REFerence?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.degrees``: The ``SV:S_CH:RF_PHASe:REFerence:DEGrees`` command. + - ``.position``: The ``SV:S_CH:RF_PHASe:REFerence:POSition`` command. + - ``.time``: The ``SV:S_CH:RF_PHASe:REFerence:TIMe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._degrees = SvSItemChannelRfPhaseReferenceDegrees(device, f"{self._cmd_syntax}:DEGrees") + self._position = SvSItemChannelRfPhaseReferencePosition( + device, f"{self._cmd_syntax}:POSition" + ) + self._time = SvSItemChannelRfPhaseReferenceTime(device, f"{self._cmd_syntax}:TIMe") + + @property + def degrees(self) -> SvSItemChannelRfPhaseReferenceDegrees: + """Return the ``SV:S_CH:RF_PHASe:REFerence:DEGrees`` command. + + Description: + - This command sets or queries the channel Phase Reference value in degrees. S is the + remote scope number and Ch is the channel number to use as the Spectrum View + source. + + Usage: + - Using the ``.query()`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:DEGrees?`` query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:DEGrees?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:DEGrees value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:REFerence:DEGrees + - SV:S_CH:RF_PHASe:REFerence:DEGrees? + ``` + + Info: + - ``NR3`` is the Phase Reference value, in degrees. This indicates a fixed phase value + at the phase time set by ``SV:S_CH:RF_PHASe:REFerence:TIMe``. If CH is the + master phase reference, then the value is used to calculate the phase values of all + other channels. + """ + return self._degrees + + @property + def position(self) -> SvSItemChannelRfPhaseReferencePosition: + """Return the ``SV:S_CH:RF_PHASe:REFerence:POSition`` command. + + Description: + - This command sets or queries whether the channel Phase Reference is located at the + Trigger position or at the Cursor A position. S is the remote scope number and + Ch is the channel number to use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:POSition?`` query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:POSition?`` query and raise an AssertionError if + the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:POSition value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:REFerence:POSition {TRIGger|CURSor} + - SV:S_CH:RF_PHASe:REFerence:POSition? + ``` + + Info: + - ``TRIGger`` sets the Phase Reference location to the Trigger position. + - ``CURSor`` sets the channel Phase Reference location to the phase time set by + ``SV:S_CH:RF_PHASe:REFerence:TIMe``, which defaults to the Cursor A position. + """ + return self._position + + @property + def time(self) -> SvSItemChannelRfPhaseReferenceTime: + """Return the ``SV:S_CH:RF_PHASe:REFerence:TIMe`` command. + + Description: + - This command sets or queries the channel Phase Reference time in seconds. S is the + remote scope number and Ch is the channel number to use as the Spectrum View + source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:REFerence:TIMe?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:TIMe?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence:TIMe value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_PHASe:REFerence:TIMe + - SV:S_CH:RF_PHASe:REFerence:TIMe? + ``` + + Info: + - ``NR3`` is the Phase Reference time, in seconds. This indicates the time at which the + phase value set by ``SV:S_CH:RF_PHASe:REFerence:DEGrees`` is applied. If the + phase position set by ``SV:S_CH:RF_PHASe:REFerence:POSition`` is TRIGger, then + the phase time is fixed at 0 seconds and cannot be changed. If the phase position is + CURSor, then the phase time may be set to any value, and is initialized to the + position of Cursor A. If CH is the master phase reference, then the time is used to + calculate the phase values of all other channels. + """ + return self._time + + +class SvSItemChannelRfPhase(SCPICmdRead): + """The ``SV:S_CH:RF_PHASe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_PHASe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.reference``: The ``SV:S_CH:RF_PHASe:REFerence`` command tree. + - ``.wrap``: The ``SV:S_CH:RF_PHASe:WRAP`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._reference = SvSItemChannelRfPhaseReference(device, f"{self._cmd_syntax}:REFerence") + self._wrap = SvSItemChannelRfPhaseWrap(device, f"{self._cmd_syntax}:WRAP") + + @property + def reference(self) -> SvSItemChannelRfPhaseReference: + """Return the ``SV:S_CH:RF_PHASe:REFerence`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:REFerence?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_PHASe:REFerence?`` query and raise an AssertionError if the + returned value does not match ``value``. + + Sub-properties: + - ``.degrees``: The ``SV:S_CH:RF_PHASe:REFerence:DEGrees`` command. + - ``.position``: The ``SV:S_CH:RF_PHASe:REFerence:POSition`` command. + - ``.time``: The ``SV:S_CH:RF_PHASe:REFerence:TIMe`` command. + """ + return self._reference + + @property + def wrap(self) -> SvSItemChannelRfPhaseWrap: + """Return the ``SV:S_CH:RF_PHASe:WRAP`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe:WRAP?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_PHASe:WRAP?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``CH`` is the channel number of the Phase vs. Time trace. + + Sub-properties: + - ``.degrees``: The ``SV:S_CH:RF_PHASe:WRAP:DEGrees`` command. + - ``.state``: The ``SV:S_CH:RF_PHASe:WRAP:STATE`` command. + """ + return self._wrap + + +class SvSItemChannelRfMagnitudeFormat(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:RF_MAGnitude:FORMat`` command. + + Description: + - This command sets or queries the format of the Magnitude vs. Time trace for the specified + channel. S is the remote scope number and Ch is the channel number to use as the + Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_MAGnitude:FORMat?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_MAGnitude:FORMat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_MAGnitude:FORMat value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_MAGnitude:FORMat {AMPLINear|POWLINear|POWLOG} + - SV:S_CH:RF_MAGnitude:FORMat? + ``` + + Info: + - ``AMPLINear`` (Amplitude (linear)) sets the magnitude in Volts with square root conversion + of linear power values. + - ``POWLINear`` (Power (linear) sets the magnitude in Watts with direct use of linear power + values. + - ``POWLOG`` (Power (log) sets the magnitude in dB using log conversion of linear power + values. + """ + + +class SvSItemChannelRfMagnitude(SCPICmdRead): + """The ``SV:S_CH:RF_MAGnitude`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_MAGnitude?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_MAGnitude?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.format``: The ``SV:S_CH:RF_MAGnitude:FORMat`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._format = SvSItemChannelRfMagnitudeFormat(device, f"{self._cmd_syntax}:FORMat") + + @property + def format(self) -> SvSItemChannelRfMagnitudeFormat: + """Return the ``SV:S_CH:RF_MAGnitude:FORMat`` command. + + Description: + - This command sets or queries the format of the Magnitude vs. Time trace for the + specified channel. S is the remote scope number and Ch is the channel number to + use as the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_MAGnitude:FORMat?`` + query. + - Using the ``.verify(value)`` method will send the + ``SV:S_CH:RF_MAGnitude:FORMat?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_MAGnitude:FORMat value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_MAGnitude:FORMat {AMPLINear|POWLINear|POWLOG} + - SV:S_CH:RF_MAGnitude:FORMat? + ``` + + Info: + - ``AMPLINear`` (Amplitude (linear)) sets the magnitude in Volts with square root + conversion of linear power values. + - ``POWLINear`` (Power (linear) sets the magnitude in Watts with direct use of linear + power values. + - ``POWLOG`` (Power (log) sets the magnitude in dB using log conversion of linear power + values. + """ + return self._format + + +class SvSItemChannelRfAverageNumavg(SCPICmdWrite, SCPICmdRead): + """The ``SV:S_CH:RF_AVErage:NUMAVg`` command. + + Description: + - This command sets or queries the number of acquisitions to be used when creating the + Average trace for the specified spectrum trace channel in the Spectrum View. The Average + spectrum trace shows the average of values from multiple acquisitions at each trace point. + S is the remote scope number and Ch is the channel number to use as the Spectrum + View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_AVErage:NUMAVg?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_AVErage:NUMAVg?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:RF_AVErage:NUMAVg value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_AVErage:NUMAVg + - SV:S_CH:RF_AVErage:NUMAVg? + ``` + + Info: + - ```` specifies the number of acquisitions to average. The range is 2 - 512, in + exponential increments. + """ + + +class SvSItemChannelRfAverage(SCPICmdRead): + """The ``SV:S_CH:RF_AVErage`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_AVErage?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_AVErage?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.numavg``: The ``SV:S_CH:RF_AVErage:NUMAVg`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._numavg = SvSItemChannelRfAverageNumavg(device, f"{self._cmd_syntax}:NUMAVg") + + @property + def numavg(self) -> SvSItemChannelRfAverageNumavg: + """Return the ``SV:S_CH:RF_AVErage:NUMAVg`` command. + + Description: + - This command sets or queries the number of acquisitions to be used when creating the + Average trace for the specified spectrum trace channel in the Spectrum View. The + Average spectrum trace shows the average of values from multiple acquisitions at each + trace point. S is the remote scope number and Ch is the channel number to use as + the Spectrum View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_AVErage:NUMAVg?`` + query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_AVErage:NUMAVg?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:S_CH:RF_AVErage:NUMAVg value`` command. + + SCPI Syntax: + ``` + - SV:S_CH:RF_AVErage:NUMAVg + - SV:S_CH:RF_AVErage:NUMAVg? + ``` + + Info: + - ```` specifies the number of acquisitions to average. The range is 2 - 512, in + exponential increments. + """ + return self._numavg + + +class SvSItemChannelRf(SCPICmdRead): + """The ``SV:S_CH:RF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.average``: The ``SV:S_CH:RF_AVErage`` command tree. + - ``.magnitude``: The ``SV:S_CH:RF_MAGnitude`` command tree. + - ``.phase``: The ``SV:S_CH:RF_PHASe`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._average = SvSItemChannelRfAverage(device, f"{self._cmd_syntax}_AVErage") + self._magnitude = SvSItemChannelRfMagnitude(device, f"{self._cmd_syntax}_MAGnitude") + self._phase = SvSItemChannelRfPhase(device, f"{self._cmd_syntax}_PHASe") + + @property + def average(self) -> SvSItemChannelRfAverage: + """Return the ``SV:S_CH:RF_AVErage`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_AVErage?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_AVErage?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.numavg``: The ``SV:S_CH:RF_AVErage:NUMAVg`` command. + """ + return self._average + + @property + def magnitude(self) -> SvSItemChannelRfMagnitude: + """Return the ``SV:S_CH:RF_MAGnitude`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_MAGnitude?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_MAGnitude?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.format``: The ``SV:S_CH:RF_MAGnitude:FORMat`` command. + """ + return self._magnitude + + @property + def phase(self) -> SvSItemChannelRfPhase: + """Return the ``SV:S_CH:RF_PHASe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF_PHASe?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF_PHASe?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.reference``: The ``SV:S_CH:RF_PHASe:REFerence`` command tree. + - ``.wrap``: The ``SV:S_CH:RF_PHASe:WRAP`` command tree. + """ + return self._phase + + +class SvSItemChannel(ValidatedChannel, SCPICmdRead): + """The ``SV:S_CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.rf``: The ``SV:S_CH:RF`` command tree. + - ``.seltrace``: The ``SV:S_CH:SELTrace`` command. + - ``.select``: The ``SV:S_CH:SELect`` command tree. + - ``.squelch``: The ``SV:S_CH:SQUELCH`` command tree. + - ``.units``: The ``SV:S_CH:UNIts`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._rf = SvSItemChannelRf(device, f"{self._cmd_syntax}:RF") + self._seltrace = SvSItemChannelSeltrace(device, f"{self._cmd_syntax}:SELTrace") + self._select = SvSItemChannelSelect(device, f"{self._cmd_syntax}:SELect") + self._squelch = SvSItemChannelSquelch(device, f"{self._cmd_syntax}:SQUELCH") + self._units = SvSItemChannelUnits(device, f"{self._cmd_syntax}:UNIts") + + @property + def rf(self) -> SvSItemChannelRf: + """Return the ``SV:S_CH:RF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:RF?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:RF?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.average``: The ``SV:S_CH:RF_AVErage`` command tree. + - ``.magnitude``: The ``SV:S_CH:RF_MAGnitude`` command tree. + - ``.phase``: The ``SV:S_CH:RF_PHASe`` command tree. + """ + return self._rf + + @property + def seltrace(self) -> SvSItemChannelSeltrace: + """Return the ``SV:S_CH:SELTrace`` command. + + Description: + - This command sets or queries the spectrum trace type to show for the specified channel + in the Spectrum View. Each channel's spectrum trace can display up to four traces; a + Normal trace (default), a Max Hold trace, a Min Hold trace and an Average trace. S + is the remote scope number and Ch is the channel number to use as the Spectrum View + source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELTrace?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELTrace?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:SELTrace value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:SELTrace {NORMal|MAXHold|MINHold|AVErage} + - SV:S_CH:SELTrace? + ``` + + Info: + - ``NORMal`` selects the Normal trace for the specified spectrum trace channel. If the + specified spectrum trace channel does not have a Normal trace, this command is + ignored. + - ``MAXHold`` selects the Max Hold trace for the specified spectrum trace channel. If + the specified spectrum trace channel does not have a Max Hold trace, this command is + ignored. + - ``MINHold`` selects the Min Hold trace for the specified spectrum trace channel. If + the specified spectrum trace channel does not have a Min Hold trace, this command is + ignored. + - ``AVErage`` selects the Average trace for the specified spectrum trace channel. If the + specified spectrum trace channel does not have an Average trace, this command is + ignored. + """ + return self._seltrace + + @property + def select(self) -> SvSItemChannelSelect: + """Return the ``SV:S_CH:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SELect?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.rf``: The ``SV:S_CH:SELect:RF`` command tree. + - ``.spectrogram``: The ``SV:S_CH:SELect:SPECtrogram`` command. + """ + return self._select + + @property + def squelch(self) -> SvSItemChannelSquelch: + """Return the ``SV:S_CH:SQUELCH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:SQUELCH?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:SQUELCH?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.state``: The ``SV:S_CH:SQUELCH:STATE`` command. + - ``.threshold``: The ``SV:S_CH:SQUELCH:THReshold`` command. + """ + return self._squelch + + @property + def units(self) -> SvSItemChannelUnits: + """Return the ``SV:S_CH:UNIts`` command. + + Description: + - This command sets or queries the absolute logarithmic amplitude vertical scale units + to show in the specified spectrum trace remote scope channel of the Spectrum View. + S is the remote scope number and Ch is the channel number to use as the Spectrum + View source. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH:UNIts?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH:UNIts?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:S_CH:UNIts value`` + command. + + SCPI Syntax: + ``` + - SV:S_CH:UNIts {DBM|DBUW|DBMV|DBUV|DBMA|DBUA} + - SV:S_CH:UNIts? + ``` + + Info: + - ``DBM`` specifies Decibel milliwatts (dBm). + - ``DBUW`` specifies Decibel microwatts (dBµW). + - ``DBMV`` specifies Decibel millivolts (dBmV). + - ``DBUV`` specifies Decibel microvolts (dBµV). + - ``DBMA`` specifies Decibel milliamperes (dBmA). + - ``DBUA`` specifies Decibel microamperes (dBµA). + """ + return self._units + + +class SvSItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``SV:S`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``SV:S_CH`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, SvSItemChannel] = DefaultDictPassKeyToFactory( + lambda x: SvSItemChannel(device, f"{self._cmd_syntax}_CH{x}") + ) + + @property + def ch(self) -> Dict[int, SvSItemChannel]: + """Return the ``SV:S_CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S_CH?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S_CH?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.rf``: The ``SV:S_CH:RF`` command tree. + - ``.seltrace``: The ``SV:S_CH:SELTrace`` command. + - ``.select``: The ``SV:S_CH:SELect`` command tree. + - ``.squelch``: The ``SV:S_CH:SQUELCH`` command tree. + - ``.units``: The ``SV:S_CH:UNIts`` command. + """ + return self._ch + + +class SvRfPhaseReferenceMaster(SCPICmdWrite, SCPICmdRead): + """The ``SV:RF_PHASe:REFerence:MASTer`` command. + + Description: + - This command sets or queries the channel used as the Master Phase Reference. + + Usage: + - Using the ``.query()`` method will send the ``SV:RF_PHASe:REFerence:MASTer?`` query. + - Using the ``.verify(value)`` method will send the ``SV:RF_PHASe:REFerence:MASTer?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:RF_PHASe:REFerence:MASTer value`` + command. + + SCPI Syntax: + ``` + - SV:RF_PHASe:REFerence:MASTer {CH|NONE} + - SV:RF_PHASe:REFerence:MASTer? + ``` + + Info: + - ``CH`` sets the specified channel as the Master Phase Reference source. + - ``NONE`` indicates that there is no Master Phase Reference. + """ + + +class SvRfPhaseReference(SCPICmdRead): + """The ``SV:RF_PHASe:REFerence`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:RF_PHASe:REFerence?`` query. + - Using the ``.verify(value)`` method will send the ``SV:RF_PHASe:REFerence?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.master``: The ``SV:RF_PHASe:REFerence:MASTer`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._master = SvRfPhaseReferenceMaster(device, f"{self._cmd_syntax}:MASTer") + + @property + def master(self) -> SvRfPhaseReferenceMaster: + """Return the ``SV:RF_PHASe:REFerence:MASTer`` command. + + Description: + - This command sets or queries the channel used as the Master Phase Reference. + + Usage: + - Using the ``.query()`` method will send the ``SV:RF_PHASe:REFerence:MASTer?`` query. + - Using the ``.verify(value)`` method will send the ``SV:RF_PHASe:REFerence:MASTer?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SV:RF_PHASe:REFerence:MASTer value`` command. + + SCPI Syntax: + ``` + - SV:RF_PHASe:REFerence:MASTer {CH|NONE} + - SV:RF_PHASe:REFerence:MASTer? + ``` + + Info: + - ``CH`` sets the specified channel as the Master Phase Reference source. + - ``NONE`` indicates that there is no Master Phase Reference. + """ + return self._master + + +class SvRfPhase(SCPICmdRead): + """The ``SV:RF_PHASe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:RF_PHASe?`` query. + - Using the ``.verify(value)`` method will send the ``SV:RF_PHASe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.reference``: The ``SV:RF_PHASe:REFerence`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._reference = SvRfPhaseReference(device, f"{self._cmd_syntax}:REFerence") + + @property + def reference(self) -> SvRfPhaseReference: + """Return the ``SV:RF_PHASe:REFerence`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:RF_PHASe:REFerence?`` query. + - Using the ``.verify(value)`` method will send the ``SV:RF_PHASe:REFerence?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.master``: The ``SV:RF_PHASe:REFerence:MASTer`` command. + """ + return self._reference + + +class SvMarkerType(SCPICmdWrite, SCPICmdRead): + """The ``SV:MARKER:TYPe`` command. + + Description: + - This command sets or queries the peak marker type (either DELTa or ABSolute). An Absolute + marker shows the frequency and amplitude at the location of the marker. A Delta marker + shows the frequency and amplitude of the marker relative to the Reference Marker. The + Reference Marker shows the absolute frequency and amplitude, regardless of this command. + The marker amplitude measurements are in dBm for Absolute, or in dBc (dB below carrier + amplitude) for Delta. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:TYPe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:TYPe value`` command. + + SCPI Syntax: + ``` + - SV:MARKER:TYPe {DELta|ABSolute} + - SV:MARKER:TYPe? + ``` + + Info: + - ``DELTa`` specifies to display the frequency and amplitude of the peak markers relative to + the Reference Marker. The relative amplitude is in dBc (dB below carrier amplitude); the + relative frequency is in Hz. + - ``ABSolute`` specifies to display the actual frequency and amplitude of each peak marker. + The absolute amplitude is in user-set units; the absolute frequency is in Hz. + """ + + +class SvMarkerReferenceFrequency(SCPICmdRead): + """The ``SV:MARKER:REFERence:FREQuency`` command. + + Description: + - This command queries the frequency of the Reference Marker, in Hz, when the Spectrum View + trace markers are on. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:REFERence:FREQuency?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:REFERence:FREQuency?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SV:MARKER:REFERence:FREQuency? + ``` + """ + + +class SvMarkerReferenceAmplitude(SCPICmdRead): + """The ``SV:MARKER:REFERence:AMPLITUDE`` command. + + Description: + - This command queries the amplitude (vertical) value of the Reference Marker in user-set + units. This value indicates the absolute amplitude of the Reference Marker, regardless of + whether the other markers are manual or automatic. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:REFERence:AMPLITUDE?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:REFERence:AMPLITUDE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SV:MARKER:REFERence:AMPLITUDE? + ``` + """ + + +class SvMarkerReference(SCPICmdWriteNoArguments, SCPICmdRead): + """The ``SV:MARKER:REFERence`` command. + + Description: + - This command sets the Center Frequency of the currently selected Spectrum View channel to + the frequency indicated by the Reference Marker, in effect moving the Reference Marker to + the center of the screen. + + Usage: + - Using the ``.write()`` method will send the ``SV:MARKER:REFERence`` command. + + SCPI Syntax: + ``` + - SV:MARKER:REFERence + ``` + + Properties: + - ``.amplitude``: The ``SV:MARKER:REFERence:AMPLITUDE`` command. + - ``.frequency``: The ``SV:MARKER:REFERence:FREQuency`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._amplitude = SvMarkerReferenceAmplitude(device, f"{self._cmd_syntax}:AMPLITUDE") + self._frequency = SvMarkerReferenceFrequency(device, f"{self._cmd_syntax}:FREQuency") + + @property + def amplitude(self) -> SvMarkerReferenceAmplitude: + """Return the ``SV:MARKER:REFERence:AMPLITUDE`` command. + + Description: + - This command queries the amplitude (vertical) value of the Reference Marker in + user-set units. This value indicates the absolute amplitude of the Reference Marker, + regardless of whether the other markers are manual or automatic. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:REFERence:AMPLITUDE?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:REFERence:AMPLITUDE?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SV:MARKER:REFERence:AMPLITUDE? + ``` + """ + return self._amplitude + + @property + def frequency(self) -> SvMarkerReferenceFrequency: + """Return the ``SV:MARKER:REFERence:FREQuency`` command. + + Description: + - This command queries the frequency of the Reference Marker, in Hz, when the Spectrum + View trace markers are on. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:REFERence:FREQuency?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:REFERence:FREQuency?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SV:MARKER:REFERence:FREQuency? + ``` + """ + return self._frequency + + +class SvMarkerPeaksFrequency(SCPICmdRead): + """The ``SV:MARKER:PEAKS:FREQuency`` command. + + Description: + - This command queries the peak frequencies for the Spectrum View trace peak markers. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAKS:FREQuency?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAKS:FREQuency?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SV:MARKER:PEAKS:FREQuency? + ``` + """ + + +class SvMarkerPeaksAmplitude(SCPICmdRead): + """The ``SV:MARKER:PEAKS:AMPLITUDE`` command. + + Description: + - This command queries the peak amplitudes for the Spectrum View trace peak markers. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAKS:AMPLITUDE?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAKS:AMPLITUDE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SV:MARKER:PEAKS:AMPLITUDE? + ``` + """ + + +class SvMarkerPeaks(SCPICmdRead): + """The ``SV:MARKER:PEAKS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAKS?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAKS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.amplitude``: The ``SV:MARKER:PEAKS:AMPLITUDE`` command. + - ``.frequency``: The ``SV:MARKER:PEAKS:FREQuency`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._amplitude = SvMarkerPeaksAmplitude(device, f"{self._cmd_syntax}:AMPLITUDE") + self._frequency = SvMarkerPeaksFrequency(device, f"{self._cmd_syntax}:FREQuency") + + @property + def amplitude(self) -> SvMarkerPeaksAmplitude: + """Return the ``SV:MARKER:PEAKS:AMPLITUDE`` command. + + Description: + - This command queries the peak amplitudes for the Spectrum View trace peak markers. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAKS:AMPLITUDE?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAKS:AMPLITUDE?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SV:MARKER:PEAKS:AMPLITUDE? + ``` + """ + return self._amplitude + + @property + def frequency(self) -> SvMarkerPeaksFrequency: + """Return the ``SV:MARKER:PEAKS:FREQuency`` command. + + Description: + - This command queries the peak frequencies for the Spectrum View trace peak markers. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAKS:FREQuency?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAKS:FREQuency?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SV:MARKER:PEAKS:FREQuency? + ``` + """ + return self._frequency + + +class SvMarkerPeakThreshold(SCPICmdWrite, SCPICmdRead): + """The ``SV:MARKER:PEAK:THReshold`` command. + + Description: + - This command sets or queries the minimum peak threshold value required to mark a peak. + Only peaks with an amplitude greater than the threshold value will qualify for peak marker + placement. Applies to all spectrum traces, and to each trace in its own vertical units. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK:THReshold?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:PEAK:THReshold value`` + command. + + SCPI Syntax: + ``` + - SV:MARKER:PEAK:THReshold + - SV:MARKER:PEAK:THReshold? + ``` + + Info: + - ```` specifies the peak marker threshold value. The range of values is -200.0 to + 200.0. + """ + + +class SvMarkerPeakState(SCPICmdWrite, SCPICmdRead): + """The ``SV:MARKER:PEAK:STATE`` command. + + Description: + - This command sets or queries showing peak markers on spectrum traces in the Spectrum View + window. There are up to 11 markers. The maximum number of markers can be set using the + command ``SV:MARKER:PEAK:MAXimum``. The peak markers find amplitude peaks based upon + threshold and excursion settings (set with the ``SV:MARKER:PEAK:EXCURsion`` and + ``SV:MARKER:PEAK:THReshold`` commands.) Each peak marker has a readout associated with it. + These can be absolute or delta readouts (set with the ``SV:MARKER:TYPe`` command.) + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK:STATE?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:PEAK:STATE value`` command. + + SCPI Syntax: + ``` + - SV:MARKER:PEAK:STATE {CH} + - SV:MARKER:PEAK:STATE? + ``` + + Info: + - ``ON, 1`` enables showing peak marker icons on spectrum trace waveforms. + - ``OFF, 0`` disables showing peak marker icons on spectrum trace waveforms. + """ + + +class SvMarkerPeakMaximum(SCPICmdWrite, SCPICmdRead): + """The ``SV:MARKER:PEAK:MAXimum`` command. + + Description: + - This command sets or queries the maximum number of Spectrum View peak markers that can be + placed on spectrum traces. the Spectrum View window can show between 1 and 11 peak markers + on all spectrum traces. The default is 5. To turn on the peak markers, use the command + ``SV:MARKER:PEAK:STATE``. The actual number of peak markers may be less than the maximum, + depending on the threshold and excursion values and the spectral content of the RF signal. + If more peaks than the maximum are detected that meet the threshold and excursion + criteria, only the highest amplitude peaks will have markers placed on them. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK:MAXimum?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:PEAK:MAXimum value`` command. + + SCPI Syntax: + ``` + - SV:MARKER:PEAK:MAXimum + - SV:MARKER:PEAK:MAXimum? + ``` + + Info: + - ```` is an integer value that specifies the maximum number of peak markers to display + on spectrum traces. he range of values is 1 to 11. + """ + + +class SvMarkerPeakExcursion(SCPICmdWrite, SCPICmdRead): + """The ``SV:MARKER:PEAK:EXCURsion`` command. + + Description: + - This command sets or queries the minimum peak excursion value, in dB, for the Spectrum + View trace peak markers. Peak excursion refers to the minimum amount a spectrum signal + needs to fall in amplitude between marked peaks to be considered another valid peak. If + the peak excursion value is low, more peaks will tend to qualify as valid peaks and have + associated markers. If the peak excursion value is high, fewer peaks will have associated + markers. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK:EXCURsion?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK:EXCURsion?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:PEAK:EXCURsion value`` + command. + + SCPI Syntax: + ``` + - SV:MARKER:PEAK:EXCURsion + - SV:MARKER:PEAK:EXCURsion? + ``` + + Info: + - ```` specifies the peak marker excursion value in dB. The range of values is 0.0 dB + to 200.0 dB. + """ + + +class SvMarkerPeak(SCPICmdRead): + """The ``SV:MARKER:PEAK`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.excursion``: The ``SV:MARKER:PEAK:EXCURsion`` command. + - ``.maximum``: The ``SV:MARKER:PEAK:MAXimum`` command. + - ``.state``: The ``SV:MARKER:PEAK:STATE`` command. + - ``.threshold``: The ``SV:MARKER:PEAK:THReshold`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._excursion = SvMarkerPeakExcursion(device, f"{self._cmd_syntax}:EXCURsion") + self._maximum = SvMarkerPeakMaximum(device, f"{self._cmd_syntax}:MAXimum") + self._state = SvMarkerPeakState(device, f"{self._cmd_syntax}:STATE") + self._threshold = SvMarkerPeakThreshold(device, f"{self._cmd_syntax}:THReshold") + + @property + def excursion(self) -> SvMarkerPeakExcursion: + """Return the ``SV:MARKER:PEAK:EXCURsion`` command. + + Description: + - This command sets or queries the minimum peak excursion value, in dB, for the Spectrum + View trace peak markers. Peak excursion refers to the minimum amount a spectrum signal + needs to fall in amplitude between marked peaks to be considered another valid peak. + If the peak excursion value is low, more peaks will tend to qualify as valid peaks and + have associated markers. If the peak excursion value is high, fewer peaks will have + associated markers. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK:EXCURsion?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK:EXCURsion?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:PEAK:EXCURsion value`` + command. + + SCPI Syntax: + ``` + - SV:MARKER:PEAK:EXCURsion + - SV:MARKER:PEAK:EXCURsion? + ``` + + Info: + - ```` specifies the peak marker excursion value in dB. The range of values is 0.0 + dB to 200.0 dB. + """ + return self._excursion + + @property + def maximum(self) -> SvMarkerPeakMaximum: + """Return the ``SV:MARKER:PEAK:MAXimum`` command. + + Description: + - This command sets or queries the maximum number of Spectrum View peak markers that can + be placed on spectrum traces. the Spectrum View window can show between 1 and 11 peak + markers on all spectrum traces. The default is 5. To turn on the peak markers, use the + command ``SV:MARKER:PEAK:STATE``. The actual number of peak markers may be less than + the maximum, depending on the threshold and excursion values and the spectral content + of the RF signal. If more peaks than the maximum are detected that meet the threshold + and excursion criteria, only the highest amplitude peaks will have markers placed on + them. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK:MAXimum?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:PEAK:MAXimum value`` + command. + + SCPI Syntax: + ``` + - SV:MARKER:PEAK:MAXimum + - SV:MARKER:PEAK:MAXimum? + ``` + + Info: + - ```` is an integer value that specifies the maximum number of peak markers to + display on spectrum traces. he range of values is 1 to 11. + """ + return self._maximum + + @property + def state(self) -> SvMarkerPeakState: + """Return the ``SV:MARKER:PEAK:STATE`` command. + + Description: + - This command sets or queries showing peak markers on spectrum traces in the Spectrum + View window. There are up to 11 markers. The maximum number of markers can be set + using the command ``SV:MARKER:PEAK:MAXimum``. The peak markers find amplitude peaks + based upon threshold and excursion settings (set with the ``SV:MARKER:PEAK:EXCURsion`` + and ``SV:MARKER:PEAK:THReshold`` commands.) Each peak marker has a readout associated + with it. These can be absolute or delta readouts (set with the ``SV:MARKER:TYPe`` + command.) + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK:STATE?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:PEAK:STATE value`` + command. + + SCPI Syntax: + ``` + - SV:MARKER:PEAK:STATE {CH} + - SV:MARKER:PEAK:STATE? + ``` + + Info: + - ``ON, 1`` enables showing peak marker icons on spectrum trace waveforms. + - ``OFF, 0`` disables showing peak marker icons on spectrum trace waveforms. + """ + return self._state + + @property + def threshold(self) -> SvMarkerPeakThreshold: + """Return the ``SV:MARKER:PEAK:THReshold`` command. + + Description: + - This command sets or queries the minimum peak threshold value required to mark a peak. + Only peaks with an amplitude greater than the threshold value will qualify for peak + marker placement. Applies to all spectrum traces, and to each trace in its own + vertical units. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK:THReshold?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:PEAK:THReshold value`` + command. + + SCPI Syntax: + ``` + - SV:MARKER:PEAK:THReshold + - SV:MARKER:PEAK:THReshold? + ``` + + Info: + - ```` specifies the peak marker threshold value. The range of values is -200.0 to + 200.0. + """ + return self._threshold + + +class SvMarker(SCPICmdRead): + """The ``SV:MARKER`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.peak``: The ``SV:MARKER:PEAK`` command tree. + - ``.peaks``: The ``SV:MARKER:PEAKS`` command tree. + - ``.reference``: The ``SV:MARKER:REFERence`` command. + - ``.type``: The ``SV:MARKER:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._peak = SvMarkerPeak(device, f"{self._cmd_syntax}:PEAK") + self._peaks = SvMarkerPeaks(device, f"{self._cmd_syntax}:PEAKS") + self._reference = SvMarkerReference(device, f"{self._cmd_syntax}:REFERence") + self._type = SvMarkerType(device, f"{self._cmd_syntax}:TYPe") + + @property + def peak(self) -> SvMarkerPeak: + """Return the ``SV:MARKER:PEAK`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAK?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAK?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.excursion``: The ``SV:MARKER:PEAK:EXCURsion`` command. + - ``.maximum``: The ``SV:MARKER:PEAK:MAXimum`` command. + - ``.state``: The ``SV:MARKER:PEAK:STATE`` command. + - ``.threshold``: The ``SV:MARKER:PEAK:THReshold`` command. + """ + return self._peak + + @property + def peaks(self) -> SvMarkerPeaks: + """Return the ``SV:MARKER:PEAKS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:PEAKS?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:PEAKS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.amplitude``: The ``SV:MARKER:PEAKS:AMPLITUDE`` command. + - ``.frequency``: The ``SV:MARKER:PEAKS:FREQuency`` command. + """ + return self._peaks + + @property + def reference(self) -> SvMarkerReference: + """Return the ``SV:MARKER:REFERence`` command. + + Description: + - This command sets the Center Frequency of the currently selected Spectrum View channel + to the frequency indicated by the Reference Marker, in effect moving the Reference + Marker to the center of the screen. + + Usage: + - Using the ``.write()`` method will send the ``SV:MARKER:REFERence`` command. + + SCPI Syntax: + ``` + - SV:MARKER:REFERence + ``` + + Sub-properties: + - ``.amplitude``: The ``SV:MARKER:REFERence:AMPLITUDE`` command. + - ``.frequency``: The ``SV:MARKER:REFERence:FREQuency`` command. + """ + return self._reference + + @property + def type(self) -> SvMarkerType: + """Return the ``SV:MARKER:TYPe`` command. + + Description: + - This command sets or queries the peak marker type (either DELTa or ABSolute). An + Absolute marker shows the frequency and amplitude at the location of the marker. A + Delta marker shows the frequency and amplitude of the marker relative to the Reference + Marker. The Reference Marker shows the absolute frequency and amplitude, regardless of + this command. The marker amplitude measurements are in dBm for Absolute, or in dBc (dB + below carrier amplitude) for Delta. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER:TYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:MARKER:TYPe value`` command. + + SCPI Syntax: + ``` + - SV:MARKER:TYPe {DELta|ABSolute} + - SV:MARKER:TYPe? + ``` + + Info: + - ``DELTa`` specifies to display the frequency and amplitude of the peak markers + relative to the Reference Marker. The relative amplitude is in dBc (dB below carrier + amplitude); the relative frequency is in Hz. + - ``ABSolute`` specifies to display the actual frequency and amplitude of each peak + marker. The absolute amplitude is in user-set units; the absolute frequency is in Hz. + """ + return self._type + + +class SvLockspectrum(SCPICmdWrite, SCPICmdRead): + """The ``SV:LOCKSpectrum`` command. + + Description: + - This command sets or queries whether the Spectrum Time value is locked across all spectrum + trace channels in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``SV:LOCKSpectrum?`` query. + - Using the ``.verify(value)`` method will send the ``SV:LOCKSpectrum?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:LOCKSpectrum value`` command. + + SCPI Syntax: + ``` + - SV:LOCKSpectrum {ON|1|OFF|0} + - SV:LOCKSpectrum? + ``` + + Info: + - ``ON`` sets all spectrum traces channels in the Spectrum View window to use the same + Spectrum Time value. When the Spectrum Time of any channel is changed, the Spectrum Time + of all other channels is automatically changed to match that value. + - ``1`` sets all spectrum traces channels in the Spectrum View window to use the same + Spectrum Time value. When the Spectrum Time of any channel is changed, the Spectrum Time + of all other channels is automatically changed to match that value. + - ``0`` enables use of different Spectrum Time values for each spectrum trace channel. The + Spectrum Time of all channels are independent. + - ``OFF`` enables use of different Spectrum Time values for each spectrum trace channel. The + Spectrum Time of all channels are independent. + """ + + +class SvLockcenter(SCPICmdWrite, SCPICmdRead): + """The ``SV:LOCKCenter`` command. + + Description: + - This command sets or queries whether the Center Frequency setting is locked across all + channels in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``SV:LOCKCenter?`` query. + - Using the ``.verify(value)`` method will send the ``SV:LOCKCenter?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:LOCKCenter value`` command. + + SCPI Syntax: + ``` + - SV:LOCKCenter {ON|1|OFF|0} + - SV:LOCKCenter? + ``` + + Info: + - ``ON`` sets all spectrum traces channels in the Spectrum View window to use the same + center frequency value. When the center frequency of any channel is changed, the center + frequency of all other channels is automatically changed to match that value. + - ``1`` sets all spectrum traces channels in the Spectrum View window to use the same center + frequency value. When the center frequency of any channel is changed, the center frequency + of all other channels is automatically changed to match that value. + - ``0`` enables use of different center frequency values for each spectrum trace channel. + The center frequencies of all channels are independent. + - ``OFF`` enables use of different center frequency values for each spectrum trace channel. + The center frequencies of all channels are independent. + """ + + +class SvChannelSelectSpectrogram(SCPICmdWrite, SCPICmdRead): + """The ``SV:CH:SELect:SPECtrogram`` command. + + Description: + - This command sets or queries whether the spectrogram plot for the specified channel is + displayed in the Spectrum View. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SV:CH:SELect:SPECtrogram?`` query. + - Using the ``.verify(value)`` method will send the ``SV:CH:SELect:SPECtrogram?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:CH:SELect:SPECtrogram value`` + command. + + SCPI Syntax: + ``` + - SV:CH:SELect:SPECtrogram {ON|OFF} + - SV:CH:SELect:SPECtrogram? + ``` + + Info: + - ``ON`` turns on spectrogram. + - ``OFF`` turns of spectrogram. + """ + + +class SvChannelSelect(SCPICmdRead): + """The ``SV:CH:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:CH:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``SV:CH:SELect?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.spectrogram``: The ``SV:CH:SELect:SPECtrogram`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._spectrogram = SvChannelSelectSpectrogram(device, f"{self._cmd_syntax}:SPECtrogram") + + @property + def spectrogram(self) -> SvChannelSelectSpectrogram: + """Return the ``SV:CH:SELect:SPECtrogram`` command. + + Description: + - This command sets or queries whether the spectrogram plot for the specified channel is + displayed in the Spectrum View. The channel number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``SV:CH:SELect:SPECtrogram?`` query. + - Using the ``.verify(value)`` method will send the ``SV:CH:SELect:SPECtrogram?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:CH:SELect:SPECtrogram value`` + command. + + SCPI Syntax: + ``` + - SV:CH:SELect:SPECtrogram {ON|OFF} + - SV:CH:SELect:SPECtrogram? + ``` + + Info: + - ``ON`` turns on spectrogram. + - ``OFF`` turns of spectrogram. + """ + return self._spectrogram + + +class SvChannel(ValidatedChannel, SCPICmdRead): + """The ``SV:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:CH?`` query. + - Using the ``.verify(value)`` method will send the ``SV:CH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.select``: The ``SV:CH:SELect`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._select = SvChannelSelect(device, f"{self._cmd_syntax}:SELect") + + @property + def select(self) -> SvChannelSelect: + """Return the ``SV:CH:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:CH:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``SV:CH:SELect?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.spectrogram``: The ``SV:CH:SELect:SPECtrogram`` command. + """ + return self._select + + +class Sv(SCPICmdRead): + """The ``SV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV?`` query. + - Using the ``.verify(value)`` method will send the ``SV?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``SV:CH`` command tree. + - ``.lockcenter``: The ``SV:LOCKCenter`` command. + - ``.lockspectrum``: The ``SV:LOCKSpectrum`` command. + - ``.marker``: The ``SV:MARKER`` command tree. + - ``.rf_phase``: The ``SV:RF_PHASe`` command tree. + - ``.s``: The ``SV:S`` command tree. + - ``.spectrogram``: The ``SV:SPECtrogram`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "SV") -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, SvChannel] = DefaultDictPassKeyToFactory( + lambda x: SvChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._lockcenter = SvLockcenter(device, f"{self._cmd_syntax}:LOCKCenter") + self._lockspectrum = SvLockspectrum(device, f"{self._cmd_syntax}:LOCKSpectrum") + self._marker = SvMarker(device, f"{self._cmd_syntax}:MARKER") + self._rf_phase = SvRfPhase(device, f"{self._cmd_syntax}:RF_PHASe") + self._s: Dict[int, SvSItem] = DefaultDictPassKeyToFactory( + lambda x: SvSItem(device, f"{self._cmd_syntax}:S{x}") + ) + self._spectrogram = SvSpectrogram(device, f"{self._cmd_syntax}:SPECtrogram") + + @property + def ch(self) -> Dict[int, SvChannel]: + """Return the ``SV:CH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:CH?`` query. + - Using the ``.verify(value)`` method will send the ``SV:CH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.select``: The ``SV:CH:SELect`` command tree. + """ + return self._ch + + @property + def lockcenter(self) -> SvLockcenter: + """Return the ``SV:LOCKCenter`` command. + + Description: + - This command sets or queries whether the Center Frequency setting is locked across all + channels in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``SV:LOCKCenter?`` query. + - Using the ``.verify(value)`` method will send the ``SV:LOCKCenter?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:LOCKCenter value`` command. + + SCPI Syntax: + ``` + - SV:LOCKCenter {ON|1|OFF|0} + - SV:LOCKCenter? + ``` + + Info: + - ``ON`` sets all spectrum traces channels in the Spectrum View window to use the same + center frequency value. When the center frequency of any channel is changed, the + center frequency of all other channels is automatically changed to match that value. + - ``1`` sets all spectrum traces channels in the Spectrum View window to use the same + center frequency value. When the center frequency of any channel is changed, the + center frequency of all other channels is automatically changed to match that value. + - ``0`` enables use of different center frequency values for each spectrum trace + channel. The center frequencies of all channels are independent. + - ``OFF`` enables use of different center frequency values for each spectrum trace + channel. The center frequencies of all channels are independent. + """ + return self._lockcenter + + @property + def lockspectrum(self) -> SvLockspectrum: + """Return the ``SV:LOCKSpectrum`` command. + + Description: + - This command sets or queries whether the Spectrum Time value is locked across all + spectrum trace channels in the Spectrum View. + + Usage: + - Using the ``.query()`` method will send the ``SV:LOCKSpectrum?`` query. + - Using the ``.verify(value)`` method will send the ``SV:LOCKSpectrum?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SV:LOCKSpectrum value`` command. + + SCPI Syntax: + ``` + - SV:LOCKSpectrum {ON|1|OFF|0} + - SV:LOCKSpectrum? + ``` + + Info: + - ``ON`` sets all spectrum traces channels in the Spectrum View window to use the same + Spectrum Time value. When the Spectrum Time of any channel is changed, the Spectrum + Time of all other channels is automatically changed to match that value. + - ``1`` sets all spectrum traces channels in the Spectrum View window to use the same + Spectrum Time value. When the Spectrum Time of any channel is changed, the Spectrum + Time of all other channels is automatically changed to match that value. + - ``0`` enables use of different Spectrum Time values for each spectrum trace channel. + The Spectrum Time of all channels are independent. + - ``OFF`` enables use of different Spectrum Time values for each spectrum trace channel. + The Spectrum Time of all channels are independent. + """ + return self._lockspectrum + + @property + def marker(self) -> SvMarker: + """Return the ``SV:MARKER`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:MARKER?`` query. + - Using the ``.verify(value)`` method will send the ``SV:MARKER?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.peak``: The ``SV:MARKER:PEAK`` command tree. + - ``.peaks``: The ``SV:MARKER:PEAKS`` command tree. + - ``.reference``: The ``SV:MARKER:REFERence`` command. + - ``.type``: The ``SV:MARKER:TYPe`` command. + """ + return self._marker + + @property + def rf_phase(self) -> SvRfPhase: + """Return the ``SV:RF_PHASe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:RF_PHASe?`` query. + - Using the ``.verify(value)`` method will send the ``SV:RF_PHASe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.reference``: The ``SV:RF_PHASe:REFerence`` command tree. + """ + return self._rf_phase + + @property + def s(self) -> Dict[int, SvSItem]: + """Return the ``SV:S`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:S?`` query. + - Using the ``.verify(value)`` method will send the ``SV:S?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``SV:S_CH`` command tree. + """ + return self._s + + @property + def spectrogram(self) -> SvSpectrogram: + """Return the ``SV:SPECtrogram`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV:SPECtrogram?`` query. + - Using the ``.verify(value)`` method will send the ``SV:SPECtrogram?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.cscale``: The ``SV:SPECtrogram:CSCale`` command tree. + - ``.cursor``: The ``SV:SPECtrogram:CURSor`` command tree. + """ + return self._spectrogram diff --git a/src/tm_devices/commands/gen_c3g61_tekscopepc/trigger.py b/src/tm_devices/commands/gen_c3g61_tekscopepc/trigger.py new file mode 100644 index 00000000..6691811c --- /dev/null +++ b/src/tm_devices/commands/gen_c3g61_tekscopepc/trigger.py @@ -0,0 +1,901 @@ +"""The trigger commands module. + +These commands are used in the following models: +TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - TRIGger:A:EDGE:COUPling {DC|HFRej|LFRej|NOISErej} + - TRIGger:A:EDGE:COUPling? + - TRIGger:A:EDGE:SLOpe {RISe|FALL|EITher} + - TRIGger:A:EDGE:SLOpe? + - TRIGger:A:EDGE:SOUrce {CH|CH_D|LINE|AUXiliary} + - TRIGger:A:EDGE:SOUrce? + - TRIGger:A:LEVel:CH + - TRIGger:A:LEVel:CH? + - TRIGger:A:TYPe {EDGE|WIDth|TIMEOut|RUNt|WINdow|LOGIc|SETHold|TRANsition|BUS} + - TRIGger:A:TYPe? + - TRIGger:B:EDGE:COUPling {DC|HFRej|LFRej|NOISErej} + - TRIGger:B:EDGE:COUPling? + - TRIGger:B:EDGE:SLOpe {RISe|FALL|EITher} + - TRIGger:B:EDGE:SLOpe? + - TRIGger:B:EDGE:SOUrce {CH|CH_D|LINE|AUXiliary} + - TRIGger:B:EDGE:SOUrce? + - TRIGger:B:LEVel:CH + - TRIGger:B:LEVel:CH? + - TRIGger:B:TYPe {EDGE|WIDth|TIMEOut|RUNt|WINdow|LOGIc|SETHold|TRANsition|BUS} + - TRIGger:B:TYPe? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import DefaultDictPassKeyToFactory, SCPICmdRead, SCPICmdWrite, ValidatedChannel + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class TriggerBType(SCPICmdWrite, SCPICmdRead): + r"""The ``TRIGger:B:TYPe`` command. + + Description: + - This command sets or queries the type of A or B trigger. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:TYPe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:TYPe value`` command. + + SCPI Syntax: + ``` + - TRIGger:B:TYPe {EDGE|WIDth|TIMEOut|RUNt|WINdow|LOGIc|SETHold|TRANsition|BUS} + - TRIGger:B:TYPe? + ``` + + Info: + - ``EDGE`` is a normal trigger. A trigger event occurs when a signal passes through a + specified voltage level in a specified direction and is controlled by the + ``TRIGger:A:EDGE`` commands. + - ``WIDth`` specifies that the trigger occurs when a pulse with a specified with is found. + - ``TIMEOut`` specifies that a trigger occurs when a pulse with the specified timeout is + found. + - ``RUNt`` specifies that a trigger occurs when a pulse with the specified parameters is + found. + - ``WINdow`` specifies that a trigger occurs when a signal with the specified window + parameters is found. + - ``LOGIc`` specifies that a trigger occurs when specified conditions are met and is + controlled by the TRIGger:{A\|B}``:LOGIc`` commands. + - ``SETHold`` specifies that a trigger occurs when a signal is found that meets the setup + and hold parameters. + - ``BUS`` specifies that a trigger occurs when a signal is found that meets the specified + bus setup parameters. + """ + + +class TriggerBLevelChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``TRIGger:B:LEVel:CH`` command. + + Description: + - This command sets or queries the CH trigger level for an Edge, Pulse Width, Runt or + Rise/Fall (Transition and Slew Rate) trigger when triggering on an analog channel + waveform. Each channel can have an independent trigger level. The is the channel + number. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:LEVel:CH?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:LEVel:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:LEVel:CH value`` command. + + SCPI Syntax: + ``` + - TRIGger:B:LEVel:CH + - TRIGger:B:LEVel:CH? + ``` + + Info: + - ```` specifies the trigger level in user units (usually volts). + """ + + +class TriggerBLevel(SCPICmdRead): + """The ``TRIGger:B:LEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:LEVel?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:LEVel?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``TRIGger:B:LEVel:CH`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, TriggerBLevelChannel] = DefaultDictPassKeyToFactory( + lambda x: TriggerBLevelChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + + @property + def ch(self) -> Dict[int, TriggerBLevelChannel]: + """Return the ``TRIGger:B:LEVel:CH`` command. + + Description: + - This command sets or queries the CH trigger level for an Edge, Pulse Width, Runt or + Rise/Fall (Transition and Slew Rate) trigger when triggering on an analog channel + waveform. Each channel can have an independent trigger level. The is the channel + number. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:LEVel:CH?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:LEVel:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:LEVel:CH value`` + command. + + SCPI Syntax: + ``` + - TRIGger:B:LEVel:CH + - TRIGger:B:LEVel:CH? + ``` + + Info: + - ```` specifies the trigger level in user units (usually volts). + """ + return self._ch + + +class TriggerBEdgeSource(SCPICmdWrite, SCPICmdRead): + """The ``TRIGger:B:EDGE:SOUrce`` command. + + Description: + - This command sets or queries the source for the edge trigger. For instruments that have an + Auxiliary Input (such as the MSO58LP), AUXiliary can be selected as trigger source. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:EDGE:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:EDGE:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:EDGE:SOUrce value`` command. + + SCPI Syntax: + ``` + - TRIGger:B:EDGE:SOUrce {CH|CH_D|LINE|AUXiliary} + - TRIGger:B:EDGE:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the edge trigger source. + - ``CH_D`` specifies a digital channel as the edge trigger source. + - ``LINE`` specifies AC line voltage, and is a valid source when B trigger is inactive. + - ``AUXiliary`` specifies the Auxiliary Input. + """ + + +class TriggerBEdgeSlope(SCPICmdWrite, SCPICmdRead): + """The ``TRIGger:B:EDGE:SLOpe`` command. + + Description: + - This command sets or queries the slope for the edge trigger. This command is equivalent to + selecting Edge from the Trigger Type drop-down in the Trigger setup context menu, and then + choosing the desired Slope. This command is also equivalent to pressing the front-panel + Slope button. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:EDGE:SLOpe?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:EDGE:SLOpe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:EDGE:SLOpe value`` command. + + SCPI Syntax: + ``` + - TRIGger:B:EDGE:SLOpe {RISe|FALL|EITher} + - TRIGger:B:EDGE:SLOpe? + ``` + + Info: + - ``RISe`` specifies to trigger on the rising or positive edge of a signal. + - ``FALL`` specifies to trigger on the falling or negative edge of a signal. + """ + + +class TriggerBEdgeCoupling(SCPICmdWrite, SCPICmdRead): + """The ``TRIGger:B:EDGE:COUPling`` command. + + Description: + - This command sets or queries the type of coupling for the edge trigger. This command is + equivalent to selecting Edge from the Trigger Type drop-down in the Trigger setup context + menu, and choosing from the Coupling drop-down list. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:EDGE:COUPling?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:EDGE:COUPling?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:EDGE:COUPling value`` + command. + + SCPI Syntax: + ``` + - TRIGger:B:EDGE:COUPling {DC|HFRej|LFRej|NOISErej} + - TRIGger:B:EDGE:COUPling? + ``` + + Info: + - ``DC`` selects DC trigger coupling, which passes all input signals to the trigger + circuitry. + - ``HFRej`` coupling attenuates signals above 50 kHz before passing the signals to the + trigger circuitry. + - ``LFRej`` coupling attenuates signals below 80 kHz before passing the signals to the + trigger circuitry. + - ``NOISErej`` coupling provides stable triggering by increasing the trigger hysteresis. + Increased hysteresis reduces the trigger sensitivity to noise but can require greater + trigger signal amplitude. + """ + + +class TriggerBEdge(SCPICmdRead): + """The ``TRIGger:B:EDGE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:EDGE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.coupling``: The ``TRIGger:B:EDGE:COUPling`` command. + - ``.slope``: The ``TRIGger:B:EDGE:SLOpe`` command. + - ``.source``: The ``TRIGger:B:EDGE:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._coupling = TriggerBEdgeCoupling(device, f"{self._cmd_syntax}:COUPling") + self._slope = TriggerBEdgeSlope(device, f"{self._cmd_syntax}:SLOpe") + self._source = TriggerBEdgeSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def coupling(self) -> TriggerBEdgeCoupling: + """Return the ``TRIGger:B:EDGE:COUPling`` command. + + Description: + - This command sets or queries the type of coupling for the edge trigger. This command + is equivalent to selecting Edge from the Trigger Type drop-down in the Trigger setup + context menu, and choosing from the Coupling drop-down list. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:EDGE:COUPling?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:EDGE:COUPling?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:EDGE:COUPling value`` + command. + + SCPI Syntax: + ``` + - TRIGger:B:EDGE:COUPling {DC|HFRej|LFRej|NOISErej} + - TRIGger:B:EDGE:COUPling? + ``` + + Info: + - ``DC`` selects DC trigger coupling, which passes all input signals to the trigger + circuitry. + - ``HFRej`` coupling attenuates signals above 50 kHz before passing the signals to the + trigger circuitry. + - ``LFRej`` coupling attenuates signals below 80 kHz before passing the signals to the + trigger circuitry. + - ``NOISErej`` coupling provides stable triggering by increasing the trigger hysteresis. + Increased hysteresis reduces the trigger sensitivity to noise but can require greater + trigger signal amplitude. + """ + return self._coupling + + @property + def slope(self) -> TriggerBEdgeSlope: + """Return the ``TRIGger:B:EDGE:SLOpe`` command. + + Description: + - This command sets or queries the slope for the edge trigger. This command is + equivalent to selecting Edge from the Trigger Type drop-down in the Trigger setup + context menu, and then choosing the desired Slope. This command is also equivalent to + pressing the front-panel Slope button. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:EDGE:SLOpe?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:EDGE:SLOpe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:EDGE:SLOpe value`` + command. + + SCPI Syntax: + ``` + - TRIGger:B:EDGE:SLOpe {RISe|FALL|EITher} + - TRIGger:B:EDGE:SLOpe? + ``` + + Info: + - ``RISe`` specifies to trigger on the rising or positive edge of a signal. + - ``FALL`` specifies to trigger on the falling or negative edge of a signal. + """ + return self._slope + + @property + def source(self) -> TriggerBEdgeSource: + """Return the ``TRIGger:B:EDGE:SOUrce`` command. + + Description: + - This command sets or queries the source for the edge trigger. For instruments that + have an Auxiliary Input (such as the MSO58LP), AUXiliary can be selected as trigger + source. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:EDGE:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:EDGE:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:EDGE:SOUrce value`` + command. + + SCPI Syntax: + ``` + - TRIGger:B:EDGE:SOUrce {CH|CH_D|LINE|AUXiliary} + - TRIGger:B:EDGE:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the edge trigger source. + - ``CH_D`` specifies a digital channel as the edge trigger source. + - ``LINE`` specifies AC line voltage, and is a valid source when B trigger is inactive. + - ``AUXiliary`` specifies the Auxiliary Input. + """ + return self._source + + +class TriggerB(SCPICmdRead): + """The ``TRIGger:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.edge``: The ``TRIGger:B:EDGE`` command tree. + - ``.level``: The ``TRIGger:B:LEVel`` command tree. + - ``.type``: The ``TRIGger:B:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edge = TriggerBEdge(device, f"{self._cmd_syntax}:EDGE") + self._level = TriggerBLevel(device, f"{self._cmd_syntax}:LEVel") + self._type = TriggerBType(device, f"{self._cmd_syntax}:TYPe") + + @property + def edge(self) -> TriggerBEdge: + """Return the ``TRIGger:B:EDGE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:EDGE?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.coupling``: The ``TRIGger:B:EDGE:COUPling`` command. + - ``.slope``: The ``TRIGger:B:EDGE:SLOpe`` command. + - ``.source``: The ``TRIGger:B:EDGE:SOUrce`` command. + """ + return self._edge + + @property + def level(self) -> TriggerBLevel: + """Return the ``TRIGger:B:LEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:LEVel?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:LEVel?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``TRIGger:B:LEVel:CH`` command. + """ + return self._level + + @property + def type(self) -> TriggerBType: + r"""Return the ``TRIGger:B:TYPe`` command. + + Description: + - This command sets or queries the type of A or B trigger. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B:TYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:B:TYPe value`` command. + + SCPI Syntax: + ``` + - TRIGger:B:TYPe {EDGE|WIDth|TIMEOut|RUNt|WINdow|LOGIc|SETHold|TRANsition|BUS} + - TRIGger:B:TYPe? + ``` + + Info: + - ``EDGE`` is a normal trigger. A trigger event occurs when a signal passes through a + specified voltage level in a specified direction and is controlled by the + ``TRIGger:A:EDGE`` commands. + - ``WIDth`` specifies that the trigger occurs when a pulse with a specified with is + found. + - ``TIMEOut`` specifies that a trigger occurs when a pulse with the specified timeout is + found. + - ``RUNt`` specifies that a trigger occurs when a pulse with the specified parameters is + found. + - ``WINdow`` specifies that a trigger occurs when a signal with the specified window + parameters is found. + - ``LOGIc`` specifies that a trigger occurs when specified conditions are met and is + controlled by the TRIGger:{A\|B}``:LOGIc`` commands. + - ``SETHold`` specifies that a trigger occurs when a signal is found that meets the + setup and hold parameters. + - ``BUS`` specifies that a trigger occurs when a signal is found that meets the + specified bus setup parameters. + """ + return self._type + + +class TriggerAType(SCPICmdWrite, SCPICmdRead): + r"""The ``TRIGger:A:TYPe`` command. + + Description: + - This command sets or queries the type of A or B trigger. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:TYPe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:TYPe value`` command. + + SCPI Syntax: + ``` + - TRIGger:A:TYPe {EDGE|WIDth|TIMEOut|RUNt|WINdow|LOGIc|SETHold|TRANsition|BUS} + - TRIGger:A:TYPe? + ``` + + Info: + - ``EDGE`` is a normal trigger. A trigger event occurs when a signal passes through a + specified voltage level in a specified direction and is controlled by the + ``TRIGger:A:EDGE`` commands. + - ``WIDth`` specifies that the trigger occurs when a pulse with a specified with is found. + - ``TIMEOut`` specifies that a trigger occurs when a pulse with the specified timeout is + found. + - ``RUNt`` specifies that a trigger occurs when a pulse with the specified parameters is + found. + - ``WINdow`` specifies that a trigger occurs when a signal with the specified window + parameters is found. + - ``LOGIc`` specifies that a trigger occurs when specified conditions are met and is + controlled by the TRIGger:{A\|B}``:LOGIc`` commands. + - ``SETHold`` specifies that a trigger occurs when a signal is found that meets the setup + and hold parameters. + - ``BUS`` specifies that a trigger occurs when a signal is found that meets the specified + bus setup parameters. + """ + + +class TriggerALevelChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``TRIGger:A:LEVel:CH`` command. + + Description: + - This command sets or queries the CH trigger level for an Edge, Pulse Width, Runt or + Rise/Fall (Transition and Slew Rate) trigger when triggering on an analog channel + waveform. Each channel can have an independent trigger level. The is the channel + number. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:LEVel:CH?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:LEVel:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:LEVel:CH value`` command. + + SCPI Syntax: + ``` + - TRIGger:A:LEVel:CH + - TRIGger:A:LEVel:CH? + ``` + + Info: + - ```` specifies the trigger level in user units (usually volts). + """ + + +class TriggerALevel(SCPICmdRead): + """The ``TRIGger:A:LEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:LEVel?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:LEVel?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``TRIGger:A:LEVel:CH`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, TriggerALevelChannel] = DefaultDictPassKeyToFactory( + lambda x: TriggerALevelChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + + @property + def ch(self) -> Dict[int, TriggerALevelChannel]: + """Return the ``TRIGger:A:LEVel:CH`` command. + + Description: + - This command sets or queries the CH trigger level for an Edge, Pulse Width, Runt or + Rise/Fall (Transition and Slew Rate) trigger when triggering on an analog channel + waveform. Each channel can have an independent trigger level. The is the channel + number. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:LEVel:CH?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:LEVel:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:LEVel:CH value`` + command. + + SCPI Syntax: + ``` + - TRIGger:A:LEVel:CH + - TRIGger:A:LEVel:CH? + ``` + + Info: + - ```` specifies the trigger level in user units (usually volts). + """ + return self._ch + + +class TriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): + """The ``TRIGger:A:EDGE:SOUrce`` command. + + Description: + - This command sets or queries the source for the edge trigger. For instruments that have an + Auxiliary Input (such as the MSO58LP), AUXiliary can be selected as trigger source. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:EDGE:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:EDGE:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:EDGE:SOUrce value`` command. + + SCPI Syntax: + ``` + - TRIGger:A:EDGE:SOUrce {CH|CH_D|LINE|AUXiliary} + - TRIGger:A:EDGE:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the edge trigger source. + - ``CH_D`` specifies a digital channel as the edge trigger source. + - ``LINE`` specifies AC line voltage, and is a valid source when B trigger is inactive. + - ``AUXiliary`` specifies the Auxiliary Input. + """ + + +class TriggerAEdgeSlope(SCPICmdWrite, SCPICmdRead): + """The ``TRIGger:A:EDGE:SLOpe`` command. + + Description: + - This command sets or queries the slope for the edge trigger. This command is equivalent to + selecting Edge from the Trigger Type drop-down in the Trigger setup context menu, and then + choosing the desired Slope. This command is also equivalent to pressing the front-panel + Slope button. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:EDGE:SLOpe?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:EDGE:SLOpe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:EDGE:SLOpe value`` command. + + SCPI Syntax: + ``` + - TRIGger:A:EDGE:SLOpe {RISe|FALL|EITher} + - TRIGger:A:EDGE:SLOpe? + ``` + + Info: + - ``RISe`` specifies to trigger on the rising or positive edge of a signal. + - ``FALL`` specifies to trigger on the falling or negative edge of a signal. + """ + + +class TriggerAEdgeCoupling(SCPICmdWrite, SCPICmdRead): + """The ``TRIGger:A:EDGE:COUPling`` command. + + Description: + - This command sets or queries the type of coupling for the edge trigger. This command is + equivalent to selecting Edge from the Trigger Type drop-down in the Trigger setup context + menu, and choosing from the Coupling drop-down list. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:EDGE:COUPling?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:EDGE:COUPling?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:EDGE:COUPling value`` + command. + + SCPI Syntax: + ``` + - TRIGger:A:EDGE:COUPling {DC|HFRej|LFRej|NOISErej} + - TRIGger:A:EDGE:COUPling? + ``` + + Info: + - ``DC`` selects DC trigger coupling, which passes all input signals to the trigger + circuitry. + - ``HFRej`` coupling attenuates signals above 50 kHz before passing the signals to the + trigger circuitry. + - ``LFRej`` coupling attenuates signals below 80 kHz before passing the signals to the + trigger circuitry. + - ``NOISErej`` coupling provides stable triggering by increasing the trigger hysteresis. + Increased hysteresis reduces the trigger sensitivity to noise but can require greater + trigger signal amplitude. + """ + + +class TriggerAEdge(SCPICmdRead): + """The ``TRIGger:A:EDGE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:EDGE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.coupling``: The ``TRIGger:A:EDGE:COUPling`` command. + - ``.slope``: The ``TRIGger:A:EDGE:SLOpe`` command. + - ``.source``: The ``TRIGger:A:EDGE:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._coupling = TriggerAEdgeCoupling(device, f"{self._cmd_syntax}:COUPling") + self._slope = TriggerAEdgeSlope(device, f"{self._cmd_syntax}:SLOpe") + self._source = TriggerAEdgeSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def coupling(self) -> TriggerAEdgeCoupling: + """Return the ``TRIGger:A:EDGE:COUPling`` command. + + Description: + - This command sets or queries the type of coupling for the edge trigger. This command + is equivalent to selecting Edge from the Trigger Type drop-down in the Trigger setup + context menu, and choosing from the Coupling drop-down list. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:EDGE:COUPling?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:EDGE:COUPling?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:EDGE:COUPling value`` + command. + + SCPI Syntax: + ``` + - TRIGger:A:EDGE:COUPling {DC|HFRej|LFRej|NOISErej} + - TRIGger:A:EDGE:COUPling? + ``` + + Info: + - ``DC`` selects DC trigger coupling, which passes all input signals to the trigger + circuitry. + - ``HFRej`` coupling attenuates signals above 50 kHz before passing the signals to the + trigger circuitry. + - ``LFRej`` coupling attenuates signals below 80 kHz before passing the signals to the + trigger circuitry. + - ``NOISErej`` coupling provides stable triggering by increasing the trigger hysteresis. + Increased hysteresis reduces the trigger sensitivity to noise but can require greater + trigger signal amplitude. + """ + return self._coupling + + @property + def slope(self) -> TriggerAEdgeSlope: + """Return the ``TRIGger:A:EDGE:SLOpe`` command. + + Description: + - This command sets or queries the slope for the edge trigger. This command is + equivalent to selecting Edge from the Trigger Type drop-down in the Trigger setup + context menu, and then choosing the desired Slope. This command is also equivalent to + pressing the front-panel Slope button. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:EDGE:SLOpe?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:EDGE:SLOpe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:EDGE:SLOpe value`` + command. + + SCPI Syntax: + ``` + - TRIGger:A:EDGE:SLOpe {RISe|FALL|EITher} + - TRIGger:A:EDGE:SLOpe? + ``` + + Info: + - ``RISe`` specifies to trigger on the rising or positive edge of a signal. + - ``FALL`` specifies to trigger on the falling or negative edge of a signal. + """ + return self._slope + + @property + def source(self) -> TriggerAEdgeSource: + """Return the ``TRIGger:A:EDGE:SOUrce`` command. + + Description: + - This command sets or queries the source for the edge trigger. For instruments that + have an Auxiliary Input (such as the MSO58LP), AUXiliary can be selected as trigger + source. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:EDGE:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:EDGE:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:EDGE:SOUrce value`` + command. + + SCPI Syntax: + ``` + - TRIGger:A:EDGE:SOUrce {CH|CH_D|LINE|AUXiliary} + - TRIGger:A:EDGE:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the edge trigger source. + - ``CH_D`` specifies a digital channel as the edge trigger source. + - ``LINE`` specifies AC line voltage, and is a valid source when B trigger is inactive. + - ``AUXiliary`` specifies the Auxiliary Input. + """ + return self._source + + +class TriggerA(SCPICmdRead): + """The ``TRIGger:A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.edge``: The ``TRIGger:A:EDGE`` command tree. + - ``.level``: The ``TRIGger:A:LEVel`` command tree. + - ``.type``: The ``TRIGger:A:TYPe`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edge = TriggerAEdge(device, f"{self._cmd_syntax}:EDGE") + self._level = TriggerALevel(device, f"{self._cmd_syntax}:LEVel") + self._type = TriggerAType(device, f"{self._cmd_syntax}:TYPe") + + @property + def edge(self) -> TriggerAEdge: + """Return the ``TRIGger:A:EDGE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:EDGE?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.coupling``: The ``TRIGger:A:EDGE:COUPling`` command. + - ``.slope``: The ``TRIGger:A:EDGE:SLOpe`` command. + - ``.source``: The ``TRIGger:A:EDGE:SOUrce`` command. + """ + return self._edge + + @property + def level(self) -> TriggerALevel: + """Return the ``TRIGger:A:LEVel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:LEVel?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:LEVel?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``TRIGger:A:LEVel:CH`` command. + """ + return self._level + + @property + def type(self) -> TriggerAType: + r"""Return the ``TRIGger:A:TYPe`` command. + + Description: + - This command sets or queries the type of A or B trigger. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A:TYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TRIGger:A:TYPe value`` command. + + SCPI Syntax: + ``` + - TRIGger:A:TYPe {EDGE|WIDth|TIMEOut|RUNt|WINdow|LOGIc|SETHold|TRANsition|BUS} + - TRIGger:A:TYPe? + ``` + + Info: + - ``EDGE`` is a normal trigger. A trigger event occurs when a signal passes through a + specified voltage level in a specified direction and is controlled by the + ``TRIGger:A:EDGE`` commands. + - ``WIDth`` specifies that the trigger occurs when a pulse with a specified with is + found. + - ``TIMEOut`` specifies that a trigger occurs when a pulse with the specified timeout is + found. + - ``RUNt`` specifies that a trigger occurs when a pulse with the specified parameters is + found. + - ``WINdow`` specifies that a trigger occurs when a signal with the specified window + parameters is found. + - ``LOGIc`` specifies that a trigger occurs when specified conditions are met and is + controlled by the TRIGger:{A\|B}``:LOGIc`` commands. + - ``SETHold`` specifies that a trigger occurs when a signal is found that meets the + setup and hold parameters. + - ``BUS`` specifies that a trigger occurs when a signal is found that meets the + specified bus setup parameters. + """ + return self._type + + +class Trigger(SCPICmdRead): + """The ``TRIGger`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.a``: The ``TRIGger:A`` command tree. + - ``.b``: The ``TRIGger:B`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "TRIGger") -> None: + super().__init__(device, cmd_syntax) + self._a = TriggerA(device, f"{self._cmd_syntax}:A") + self._b = TriggerB(device, f"{self._cmd_syntax}:B") + + @property + def a(self) -> TriggerA: + """Return the ``TRIGger:A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:A?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:A?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.edge``: The ``TRIGger:A:EDGE`` command tree. + - ``.level``: The ``TRIGger:A:LEVel`` command tree. + - ``.type``: The ``TRIGger:A:TYPe`` command. + """ + return self._a + + @property + def b(self) -> TriggerB: + """Return the ``TRIGger:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger:B?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger:B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.edge``: The ``TRIGger:B:EDGE`` command tree. + - ``.level``: The ``TRIGger:B:LEVel`` command tree. + - ``.type``: The ``TRIGger:B:TYPe`` command. + """ + return self._b diff --git a/src/tm_devices/commands/gen_e6lgg1_lpdmsodpomdo/__init__.py b/src/tm_devices/commands/gen_c69az_msotekscopepc/__init__.py similarity index 100% rename from src/tm_devices/commands/gen_e6lgg1_lpdmsodpomdo/__init__.py rename to src/tm_devices/commands/gen_c69az_msotekscopepc/__init__.py diff --git a/src/tm_devices/commands/gen_1zn03_mso/lic.py b/src/tm_devices/commands/gen_c69az_msotekscopepc/lic.py similarity index 99% rename from src/tm_devices/commands/gen_1zn03_mso/lic.py rename to src/tm_devices/commands/gen_c69az_msotekscopepc/lic.py index 3bf0a7a0..149252b1 100644 --- a/src/tm_devices/commands/gen_1zn03_mso/lic.py +++ b/src/tm_devices/commands/gen_c69az_msotekscopepc/lic.py @@ -1,7 +1,7 @@ """The lic commands module. These commands are used in the following models: -MSO2 +MSO2, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_1zn03_mso/license.py b/src/tm_devices/commands/gen_c69az_msotekscopepc/license.py similarity index 99% rename from src/tm_devices/commands/gen_1zn03_mso/license.py rename to src/tm_devices/commands/gen_c69az_msotekscopepc/license.py index 29523f53..ca16b434 100644 --- a/src/tm_devices/commands/gen_1zn03_mso/license.py +++ b/src/tm_devices/commands/gen_c69az_msotekscopepc/license.py @@ -1,7 +1,7 @@ """The license commands module. These commands are used in the following models: -MSO2 +MSO2, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3e9uu_lpdmso/ref.py b/src/tm_devices/commands/gen_e3e9uu_lpdmso/ref.py index ed677b6b..c99673a1 100644 --- a/src/tm_devices/commands/gen_e3e9uu_lpdmso/ref.py +++ b/src/tm_devices/commands/gen_e3e9uu_lpdmso/ref.py @@ -32,42 +32,6 @@ - REF:REF:LABel:YPOS - REF:REF:LABel:YPOS? - REF:REF:SOUrce - - REF_D:LABel:COLor - - REF_D:LABel:COLor? - - REF_D:LABel:FONT:BOLD {ON|OFF|} - - REF_D:LABel:FONT:BOLD? - - REF_D:LABel:FONT:ITALic {ON|OFF|} - - REF_D:LABel:FONT:ITALic? - - REF_D:LABel:FONT:SIZE - - REF_D:LABel:FONT:SIZE? - - REF_D:LABel:FONT:TYPE - - REF_D:LABel:FONT:TYPE? - - REF_D:LABel:FONT:UNDERline {ON|OFF|} - - REF_D:LABel:FONT:UNDERline? - - REF_D:LABel:NAMe - - REF_D:LABel:NAMe? - - REF_D:LABel:XPOS - - REF_D:LABel:XPOS? - - REF_D:LABel:YPOS - - REF_D:LABel:YPOS? - - REF_DALL:LABel:COLor - - REF_DALL:LABel:COLor? - - REF_DALL:LABel:FONT:BOLD {ON|OFF|} - - REF_DALL:LABel:FONT:BOLD? - - REF_DALL:LABel:FONT:ITALic {ON|OFF|} - - REF_DALL:LABel:FONT:ITALic? - - REF_DALL:LABel:FONT:SIZE - - REF_DALL:LABel:FONT:SIZE? - - REF_DALL:LABel:FONT:TYPE - - REF_DALL:LABel:FONT:TYPE? - - REF_DALL:LABel:FONT:UNDERline {ON|OFF|} - - REF_DALL:LABel:FONT:UNDERline? - - REF_DALL:LABel:NAMe - - REF_DALL:LABel:NAMe? - - REF_DALL:LABel:XPOS - - REF_DALL:LABel:XPOS? - - REF_DALL:LABel:YPOS - - REF_DALL:LABel:YPOS? ``` """ @@ -77,7 +41,6 @@ DefaultDictPassKeyToFactory, SCPICmdRead, SCPICmdWrite, - ValidatedDigitalBit, ValidatedDynamicNumberCmd, ) @@ -85,1225 +48,6 @@ from tm_devices.drivers.pi.pi_device import PIDevice -class RefItemDallLabelYpos(SCPICmdWrite, SCPICmdRead): - """The ``REF_DALL:LABel:YPOS`` command. - - Description: - - This command sets or queries the y-position of the label of the specified digital group. - The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:YPOS?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:YPOS?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:YPOS value`` command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:YPOS - - REF_DALL:LABel:YPOS? - ``` - - Info: - - ```` is the y-position, in pixels relative to the baseline of the waveform, of the - group. - """ - - -class RefItemDallLabelXpos(SCPICmdWrite, SCPICmdRead): - """The ``REF_DALL:LABel:XPOS`` command. - - Description: - - This command sets or queries the x-position of the label of the specified digital group. - The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:XPOS?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:XPOS?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:XPOS value`` command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:XPOS - - REF_DALL:LABel:XPOS? - ``` - - Info: - - ```` is the x-position, in pixels relative to the left edge of the display, of the - group. - """ - - -class RefItemDallLabelName(SCPICmdWrite, SCPICmdRead): - """The ``REF_DALL:LABel:NAMe`` command. - - Description: - - This command sets or queries the label of the specified digital group. The reference is - specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:NAMe?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:NAMe?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:NAMe value`` command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:NAMe - - REF_DALL:LABel:NAMe? - ``` - - Info: - - ```` is the name of the group. - """ - - _WRAP_ARG_WITH_QUOTES = True - - -class RefItemDallLabelFontUnderline(SCPICmdWrite, SCPICmdRead): - """The ``REF_DALL:LABel:FONT:UNDERline`` command. - - Description: - - This command sets or queries the underline state of the specified digital group. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:UNDERline?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:UNDERline?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``REF_DALL:LABel:FONT:UNDERline value`` command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:UNDERline {ON|OFF|} - - REF_DALL:LABel:FONT:UNDERline? - ``` - - Info: - - ``OFF`` argument turns off underline font. - - ``ON`` argument turns on underline font. - - ```` = 0 turns off underline font; any other value turns on underline font. - """ - - -class RefItemDallLabelFontType(SCPICmdWrite, SCPICmdRead): - """The ``REF_DALL:LABel:FONT:TYPE`` command. - - Description: - - This command sets or queries the font type of the specified digital group, such as Arial - or Times New Roman. The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:TYPE?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:TYPE?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:TYPE value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:TYPE - - REF_DALL:LABel:FONT:TYPE? - ``` - - Info: - - ```` is the font type. - """ - - _WRAP_ARG_WITH_QUOTES = True - - -class RefItemDallLabelFontSize(SCPICmdWrite, SCPICmdRead): - """The ``REF_DALL:LABel:FONT:SIZE`` command. - - Description: - - This command sets or queries the font size of the specified digital group. The reference - is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:SIZE?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:SIZE?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:SIZE value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:SIZE - - REF_DALL:LABel:FONT:SIZE? - ``` - - Info: - - ```` is the font size. - """ - - -class RefItemDallLabelFontItalic(SCPICmdWrite, SCPICmdRead): - """The ``REF_DALL:LABel:FONT:ITALic`` command. - - Description: - - This command sets or queries the italic state of the specified digital group. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:ITALic?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:ITALic?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:ITALic value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:ITALic {ON|OFF|} - - REF_DALL:LABel:FONT:ITALic? - ``` - - Info: - - ``OFF`` argument turns off italic font. - - ``ON`` argument turns on italic font. - - ```` = 0 turns off italic font; any other value turns on italic font. - """ - - -class RefItemDallLabelFontBold(SCPICmdWrite, SCPICmdRead): - """The ``REF_DALL:LABel:FONT:BOLD`` command. - - Description: - - This command sets or queries the bold state of the specified digital group. The reference - is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:BOLD?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:BOLD?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:BOLD value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:BOLD {ON|OFF|} - - REF_DALL:LABel:FONT:BOLD? - ``` - - Info: - - ``OFF`` argument turns off bold font. - - ``ON`` argument turns on bold font. - - ```` = 0 turns off bold font; any other value turns on bold font. - """ - - -class RefItemDallLabelFont(SCPICmdRead): - """The ``REF_DALL:LABel:FONT`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Properties: - - ``.bold``: The ``REF_DALL:LABel:FONT:BOLD`` command. - - ``.italic``: The ``REF_DALL:LABel:FONT:ITALic`` command. - - ``.size``: The ``REF_DALL:LABel:FONT:SIZE`` command. - - ``.type``: The ``REF_DALL:LABel:FONT:TYPE`` command. - - ``.underline``: The ``REF_DALL:LABel:FONT:UNDERline`` command. - """ - - def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: - super().__init__(device, cmd_syntax) - self._bold = RefItemDallLabelFontBold(device, f"{self._cmd_syntax}:BOLD") - self._italic = RefItemDallLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") - self._size = RefItemDallLabelFontSize(device, f"{self._cmd_syntax}:SIZE") - self._type = RefItemDallLabelFontType(device, f"{self._cmd_syntax}:TYPE") - self._underline = RefItemDallLabelFontUnderline(device, f"{self._cmd_syntax}:UNDERline") - - @property - def bold(self) -> RefItemDallLabelFontBold: - """Return the ``REF_DALL:LABel:FONT:BOLD`` command. - - Description: - - This command sets or queries the bold state of the specified digital group. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:BOLD?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:BOLD?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:BOLD value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:BOLD {ON|OFF|} - - REF_DALL:LABel:FONT:BOLD? - ``` - - Info: - - ``OFF`` argument turns off bold font. - - ``ON`` argument turns on bold font. - - ```` = 0 turns off bold font; any other value turns on bold font. - """ - return self._bold - - @property - def italic(self) -> RefItemDallLabelFontItalic: - """Return the ``REF_DALL:LABel:FONT:ITALic`` command. - - Description: - - This command sets or queries the italic state of the specified digital group. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:ITALic?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:ITALic?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``REF_DALL:LABel:FONT:ITALic value`` command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:ITALic {ON|OFF|} - - REF_DALL:LABel:FONT:ITALic? - ``` - - Info: - - ``OFF`` argument turns off italic font. - - ``ON`` argument turns on italic font. - - ```` = 0 turns off italic font; any other value turns on italic font. - """ - return self._italic - - @property - def size(self) -> RefItemDallLabelFontSize: - """Return the ``REF_DALL:LABel:FONT:SIZE`` command. - - Description: - - This command sets or queries the font size of the specified digital group. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:SIZE?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:SIZE?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:SIZE value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:SIZE - - REF_DALL:LABel:FONT:SIZE? - ``` - - Info: - - ```` is the font size. - """ - return self._size - - @property - def type(self) -> RefItemDallLabelFontType: - """Return the ``REF_DALL:LABel:FONT:TYPE`` command. - - Description: - - This command sets or queries the font type of the specified digital group, such as - Arial or Times New Roman. The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:TYPE?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:TYPE?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:TYPE value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:TYPE - - REF_DALL:LABel:FONT:TYPE? - ``` - - Info: - - ```` is the font type. - """ - return self._type - - @property - def underline(self) -> RefItemDallLabelFontUnderline: - """Return the ``REF_DALL:LABel:FONT:UNDERline`` command. - - Description: - - This command sets or queries the underline state of the specified digital group. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:UNDERline?`` - query. - - Using the ``.verify(value)`` method will send the - ``REF_DALL:LABel:FONT:UNDERline?`` query and raise an AssertionError if the - returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``REF_DALL:LABel:FONT:UNDERline value`` command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:FONT:UNDERline {ON|OFF|} - - REF_DALL:LABel:FONT:UNDERline? - ``` - - Info: - - ``OFF`` argument turns off underline font. - - ``ON`` argument turns on underline font. - - ```` = 0 turns off underline font; any other value turns on underline font. - """ - return self._underline - - -class RefItemDallLabelColor(SCPICmdWrite, SCPICmdRead): - """The ``REF_DALL:LABel:COLor`` command. - - Description: - - This command sets or queries the color of the specified digital group. The reference is - specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:COLor?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:COLor?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:COLor value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:COLor - - REF_DALL:LABel:COLor? - ``` - - Info: - - ```` is the color of the digital group label. To return the color to the default - color, send an empty string as in this example: ``:REF5_DALL:LABEL:COLOR`` ''. - """ - - _WRAP_ARG_WITH_QUOTES = True - - -class RefItemDallLabel(SCPICmdRead): - """The ``REF_DALL:LABel`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel?`` query and raise - an AssertionError if the returned value does not match ``value``. - - Properties: - - ``.color``: The ``REF_DALL:LABel:COLor`` command. - - ``.font``: The ``REF_DALL:LABel:FONT`` command tree. - - ``.name``: The ``REF_DALL:LABel:NAMe`` command. - - ``.xpos``: The ``REF_DALL:LABel:XPOS`` command. - - ``.ypos``: The ``REF_DALL:LABel:YPOS`` command. - """ - - def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: - super().__init__(device, cmd_syntax) - self._color = RefItemDallLabelColor(device, f"{self._cmd_syntax}:COLor") - self._font = RefItemDallLabelFont(device, f"{self._cmd_syntax}:FONT") - self._name = RefItemDallLabelName(device, f"{self._cmd_syntax}:NAMe") - self._xpos = RefItemDallLabelXpos(device, f"{self._cmd_syntax}:XPOS") - self._ypos = RefItemDallLabelYpos(device, f"{self._cmd_syntax}:YPOS") - - @property - def color(self) -> RefItemDallLabelColor: - """Return the ``REF_DALL:LABel:COLor`` command. - - Description: - - This command sets or queries the color of the specified digital group. The reference - is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:COLor?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:COLor?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:COLor value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:COLor - - REF_DALL:LABel:COLor? - ``` - - Info: - - ```` is the color of the digital group label. To return the color to the - default color, send an empty string as in this example: ``:REF5_DALL:LABEL:COLOR`` ''. - """ - return self._color - - @property - def font(self) -> RefItemDallLabelFont: - """Return the ``REF_DALL:LABel:FONT`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Sub-properties: - - ``.bold``: The ``REF_DALL:LABel:FONT:BOLD`` command. - - ``.italic``: The ``REF_DALL:LABel:FONT:ITALic`` command. - - ``.size``: The ``REF_DALL:LABel:FONT:SIZE`` command. - - ``.type``: The ``REF_DALL:LABel:FONT:TYPE`` command. - - ``.underline``: The ``REF_DALL:LABel:FONT:UNDERline`` command. - """ - return self._font - - @property - def name(self) -> RefItemDallLabelName: - """Return the ``REF_DALL:LABel:NAMe`` command. - - Description: - - This command sets or queries the label of the specified digital group. The reference - is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:NAMe?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:NAMe?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:NAMe value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:NAMe - - REF_DALL:LABel:NAMe? - ``` - - Info: - - ```` is the name of the group. - """ - return self._name - - @property - def xpos(self) -> RefItemDallLabelXpos: - """Return the ``REF_DALL:LABel:XPOS`` command. - - Description: - - This command sets or queries the x-position of the label of the specified digital - group. The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:XPOS?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:XPOS?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:XPOS value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:XPOS - - REF_DALL:LABel:XPOS? - ``` - - Info: - - ```` is the x-position, in pixels relative to the left edge of the display, of - the group. - """ - return self._xpos - - @property - def ypos(self) -> RefItemDallLabelYpos: - """Return the ``REF_DALL:LABel:YPOS`` command. - - Description: - - This command sets or queries the y-position of the label of the specified digital - group. The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel:YPOS?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:YPOS?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:YPOS value`` - command. - - SCPI Syntax: - ``` - - REF_DALL:LABel:YPOS - - REF_DALL:LABel:YPOS? - ``` - - Info: - - ```` is the y-position, in pixels relative to the baseline of the waveform, of - the group. - """ - return self._ypos - - -class RefItemDall(SCPICmdRead): - """The ``REF_DALL`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL?`` query and raise an - AssertionError if the returned value does not match ``value``. - - Properties: - - ``.label``: The ``REF_DALL:LABel`` command tree. - """ - - def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: - super().__init__(device, cmd_syntax) - self._label = RefItemDallLabel(device, f"{self._cmd_syntax}:LABel") - - @property - def label(self) -> RefItemDallLabel: - """Return the ``REF_DALL:LABel`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL:LABel?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Sub-properties: - - ``.color``: The ``REF_DALL:LABel:COLor`` command. - - ``.font``: The ``REF_DALL:LABel:FONT`` command tree. - - ``.name``: The ``REF_DALL:LABel:NAMe`` command. - - ``.xpos``: The ``REF_DALL:LABel:XPOS`` command. - - ``.ypos``: The ``REF_DALL:LABel:YPOS`` command. - """ - return self._label - - -class RefItemDigitalBitLabelYpos(SCPICmdWrite, SCPICmdRead): - """The ``REF_D:LABel:YPOS`` command. - - Description: - - This command sets or queries the y-position of the label of the specified digital bit. The - channel is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:YPOS?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:YPOS?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:YPOS value`` command. - - SCPI Syntax: - ``` - - REF_D:LABel:YPOS - - REF_D:LABel:YPOS? - ``` - - Info: - - ```` is the y-position, in pixels relative to the baseline of the waveform, of the - label. - """ - - -class RefItemDigitalBitLabelXpos(SCPICmdWrite, SCPICmdRead): - """The ``REF_D:LABel:XPOS`` command. - - Description: - - This command sets or queries the x-position of the label of the specified digital bit. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:XPOS?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:XPOS?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:XPOS value`` command. - - SCPI Syntax: - ``` - - REF_D:LABel:XPOS - - REF_D:LABel:XPOS? - ``` - - Info: - - ```` is the x-position, in pixels relative to the left edge of the display, of the - label. - """ - - -class RefItemDigitalBitLabelName(SCPICmdWrite, SCPICmdRead): - """The ``REF_D:LABel:NAMe`` command. - - Description: - - Sets or queries the label of the specified digital bit. The channel is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:NAMe?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:NAMe?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:NAMe value`` command. - - SCPI Syntax: - ``` - - REF_D:LABel:NAMe - - REF_D:LABel:NAMe? - ``` - - Info: - - ```` is the label. - """ - - _WRAP_ARG_WITH_QUOTES = True - - -class RefItemDigitalBitLabelFontUnderline(SCPICmdWrite, SCPICmdRead): - """The ``REF_D:LABel:FONT:UNDERline`` command. - - Description: - - This command sets or queries the underline state of the label of the specified digital - bit. The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:UNDERline?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:UNDERline?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``REF_D:LABel:FONT:UNDERline value`` command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:UNDERline {ON|OFF|} - - REF_D:LABel:FONT:UNDERline? - ``` - - Info: - - ``OFF`` argument turns off underline font. - - ``ON`` argument turns on underline font. - - ```` = 0 turns off underline font; any other value turns on underline font. - """ - - -class RefItemDigitalBitLabelFontType(SCPICmdWrite, SCPICmdRead): - """The ``REF_D:LABel:FONT:TYPE`` command. - - Description: - - This command sets or queries the font type of the label of the specified digital bit, such - as Arial or Times New Roman. The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:TYPE?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:TYPE?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:TYPE value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:TYPE - - REF_D:LABel:FONT:TYPE? - ``` - - Info: - - ```` is the font type of the label. - """ - - _WRAP_ARG_WITH_QUOTES = True - - -class RefItemDigitalBitLabelFontSize(SCPICmdWrite, SCPICmdRead): - """The ``REF_D:LABel:FONT:SIZE`` command. - - Description: - - This command sets or queries the font size of the label of the specified digital bit. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:SIZE?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:SIZE?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:SIZE value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:SIZE - - REF_D:LABel:FONT:SIZE? - ``` - - Info: - - ```` is the font size. - """ - - -class RefItemDigitalBitLabelFontItalic(SCPICmdWrite, SCPICmdRead): - """The ``REF_D:LABel:FONT:ITALic`` command. - - Description: - - This command sets or queries the italic state of the label of the specified digital bit. - The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:ITALic?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:ITALic?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:ITALic value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:ITALic {ON|OFF|} - - REF_D:LABel:FONT:ITALic? - ``` - - Info: - - ``OFF`` argument turns off italic font. - - ``ON`` argument turns on italic font. - - ```` = 0 turns off italic font; any other value turns on italic font. - """ - - -class RefItemDigitalBitLabelFontBold(SCPICmdWrite, SCPICmdRead): - """The ``REF_D:LABel:FONT:BOLD`` command. - - Description: - - This command sets or queries the bold state of the label of the specified digital bit. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:BOLD?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:BOLD?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:BOLD value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:BOLD {ON|OFF|} - - REF_D:LABel:FONT:BOLD? - ``` - - Info: - - ``OFF`` argument turns off bold font. - - ``ON`` argument turns on bold font. - - ```` = 0 turns off bold font; any other value turns on bold font. - """ - - -class RefItemDigitalBitLabelFont(SCPICmdRead): - """The ``REF_D:LABel:FONT`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Properties: - - ``.bold``: The ``REF_D:LABel:FONT:BOLD`` command. - - ``.italic``: The ``REF_D:LABel:FONT:ITALic`` command. - - ``.size``: The ``REF_D:LABel:FONT:SIZE`` command. - - ``.type``: The ``REF_D:LABel:FONT:TYPE`` command. - - ``.underline``: The ``REF_D:LABel:FONT:UNDERline`` command. - """ - - def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: - super().__init__(device, cmd_syntax) - self._bold = RefItemDigitalBitLabelFontBold(device, f"{self._cmd_syntax}:BOLD") - self._italic = RefItemDigitalBitLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") - self._size = RefItemDigitalBitLabelFontSize(device, f"{self._cmd_syntax}:SIZE") - self._type = RefItemDigitalBitLabelFontType(device, f"{self._cmd_syntax}:TYPE") - self._underline = RefItemDigitalBitLabelFontUnderline( - device, f"{self._cmd_syntax}:UNDERline" - ) - - @property - def bold(self) -> RefItemDigitalBitLabelFontBold: - """Return the ``REF_D:LABel:FONT:BOLD`` command. - - Description: - - This command sets or queries the bold state of the label of the specified digital bit. - The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:BOLD?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:BOLD?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:BOLD value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:BOLD {ON|OFF|} - - REF_D:LABel:FONT:BOLD? - ``` - - Info: - - ``OFF`` argument turns off bold font. - - ``ON`` argument turns on bold font. - - ```` = 0 turns off bold font; any other value turns on bold font. - """ - return self._bold - - @property - def italic(self) -> RefItemDigitalBitLabelFontItalic: - """Return the ``REF_D:LABel:FONT:ITALic`` command. - - Description: - - This command sets or queries the italic state of the label of the specified digital - bit. The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:ITALic?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:ITALic?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``REF_D:LABel:FONT:ITALic value`` command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:ITALic {ON|OFF|} - - REF_D:LABel:FONT:ITALic? - ``` - - Info: - - ``OFF`` argument turns off italic font. - - ``ON`` argument turns on italic font. - - ```` = 0 turns off italic font; any other value turns on italic font. - """ - return self._italic - - @property - def size(self) -> RefItemDigitalBitLabelFontSize: - """Return the ``REF_D:LABel:FONT:SIZE`` command. - - Description: - - This command sets or queries the font size of the label of the specified digital bit. - The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:SIZE?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:SIZE?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:SIZE value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:SIZE - - REF_D:LABel:FONT:SIZE? - ``` - - Info: - - ```` is the font size. - """ - return self._size - - @property - def type(self) -> RefItemDigitalBitLabelFontType: - """Return the ``REF_D:LABel:FONT:TYPE`` command. - - Description: - - This command sets or queries the font type of the label of the specified digital bit, - such as Arial or Times New Roman. The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:TYPE?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:TYPE?`` - query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:TYPE value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:TYPE - - REF_D:LABel:FONT:TYPE? - ``` - - Info: - - ```` is the font type of the label. - """ - return self._type - - @property - def underline(self) -> RefItemDigitalBitLabelFontUnderline: - """Return the ``REF_D:LABel:FONT:UNDERline`` command. - - Description: - - This command sets or queries the underline state of the label of the specified digital - bit. The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:UNDERline?`` - query. - - Using the ``.verify(value)`` method will send the - ``REF_D:LABel:FONT:UNDERline?`` query and raise an AssertionError if the - returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``REF_D:LABel:FONT:UNDERline value`` command. - - SCPI Syntax: - ``` - - REF_D:LABel:FONT:UNDERline {ON|OFF|} - - REF_D:LABel:FONT:UNDERline? - ``` - - Info: - - ``OFF`` argument turns off underline font. - - ``ON`` argument turns on underline font. - - ```` = 0 turns off underline font; any other value turns on underline font. - """ - return self._underline - - -class RefItemDigitalBitLabelColor(SCPICmdWrite, SCPICmdRead): - """The ``REF_D:LABel:COLor`` command. - - Description: - - This command sets or queries the color of the label of the specified digital bit. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:COLor?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:COLor?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:COLor value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:COLor - - REF_D:LABel:COLor? - ``` - - Info: - - ```` is the label color. To return the color to the default color, send an empty - string as in this example: ``:REF5_D1:LABEL:COLOR`` ''. - """ - - _WRAP_ARG_WITH_QUOTES = True - - -class RefItemDigitalBitLabel(SCPICmdRead): - """The ``REF_D:LABel`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel?`` query and raise - an AssertionError if the returned value does not match ``value``. - - Properties: - - ``.color``: The ``REF_D:LABel:COLor`` command. - - ``.font``: The ``REF_D:LABel:FONT`` command tree. - - ``.name``: The ``REF_D:LABel:NAMe`` command. - - ``.xpos``: The ``REF_D:LABel:XPOS`` command. - - ``.ypos``: The ``REF_D:LABel:YPOS`` command. - """ - - def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: - super().__init__(device, cmd_syntax) - self._color = RefItemDigitalBitLabelColor(device, f"{self._cmd_syntax}:COLor") - self._font = RefItemDigitalBitLabelFont(device, f"{self._cmd_syntax}:FONT") - self._name = RefItemDigitalBitLabelName(device, f"{self._cmd_syntax}:NAMe") - self._xpos = RefItemDigitalBitLabelXpos(device, f"{self._cmd_syntax}:XPOS") - self._ypos = RefItemDigitalBitLabelYpos(device, f"{self._cmd_syntax}:YPOS") - - @property - def color(self) -> RefItemDigitalBitLabelColor: - """Return the ``REF_D:LABel:COLor`` command. - - Description: - - This command sets or queries the color of the label of the specified digital bit. The - reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:COLor?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:COLor?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:COLor value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:COLor - - REF_D:LABel:COLor? - ``` - - Info: - - ```` is the label color. To return the color to the default color, send an - empty string as in this example: ``:REF5_D1:LABEL:COLOR`` ''. - """ - return self._color - - @property - def font(self) -> RefItemDigitalBitLabelFont: - """Return the ``REF_D:LABel:FONT`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:FONT?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Sub-properties: - - ``.bold``: The ``REF_D:LABel:FONT:BOLD`` command. - - ``.italic``: The ``REF_D:LABel:FONT:ITALic`` command. - - ``.size``: The ``REF_D:LABel:FONT:SIZE`` command. - - ``.type``: The ``REF_D:LABel:FONT:TYPE`` command. - - ``.underline``: The ``REF_D:LABel:FONT:UNDERline`` command. - """ - return self._font - - @property - def name(self) -> RefItemDigitalBitLabelName: - """Return the ``REF_D:LABel:NAMe`` command. - - Description: - - Sets or queries the label of the specified digital bit. The channel is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:NAMe?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:NAMe?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:NAMe value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:NAMe - - REF_D:LABel:NAMe? - ``` - - Info: - - ```` is the label. - """ - return self._name - - @property - def xpos(self) -> RefItemDigitalBitLabelXpos: - """Return the ``REF_D:LABel:XPOS`` command. - - Description: - - This command sets or queries the x-position of the label of the specified digital bit. - The reference is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:XPOS?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:XPOS?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:XPOS value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:XPOS - - REF_D:LABel:XPOS? - ``` - - Info: - - ```` is the x-position, in pixels relative to the left edge of the display, of - the label. - """ - return self._xpos - - @property - def ypos(self) -> RefItemDigitalBitLabelYpos: - """Return the ``REF_D:LABel:YPOS`` command. - - Description: - - This command sets or queries the y-position of the label of the specified digital bit. - The channel is specified by x. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel:YPOS?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel:YPOS?`` query - and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the ``REF_D:LABel:YPOS value`` - command. - - SCPI Syntax: - ``` - - REF_D:LABel:YPOS - - REF_D:LABel:YPOS? - ``` - - Info: - - ```` is the y-position, in pixels relative to the baseline of the waveform, of - the label. - """ - return self._ypos - - -class RefItemDigitalBit(ValidatedDigitalBit, SCPICmdRead): - """The ``REF_D`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_D?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D?`` query and raise an - AssertionError if the returned value does not match ``value``. - - Properties: - - ``.label``: The ``REF_D:LABel`` command tree. - """ - - def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: - super().__init__(device, cmd_syntax) - self._label = RefItemDigitalBitLabel(device, f"{self._cmd_syntax}:LABel") - - @property - def label(self) -> RefItemDigitalBitLabel: - """Return the ``REF_D:LABel`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_D:LABel?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D:LABel?`` query and - raise an AssertionError if the returned value does not match ``value``. - - Sub-properties: - - ``.color``: The ``REF_D:LABel:COLor`` command. - - ``.font``: The ``REF_D:LABel:FONT`` command tree. - - ``.name``: The ``REF_D:LABel:NAMe`` command. - - ``.xpos``: The ``REF_D:LABel:XPOS`` command. - - ``.ypos``: The ``REF_D:LABel:YPOS`` command. - """ - return self._label - - -class RefItem(ValidatedDynamicNumberCmd, SCPICmdRead): - """The ``REF`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF?`` query. - - Using the ``.verify(value)`` method will send the ``REF?`` query and raise an - AssertionError if the returned value does not match ``value``. - - Properties: - - ``.d``: The ``REF_D`` command tree. - - ``.dall``: The ``REF_DALL`` command tree. - """ - - def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "REF") -> None: - super().__init__(device, cmd_syntax) - self._d: Dict[int, RefItemDigitalBit] = DefaultDictPassKeyToFactory( - lambda x: RefItemDigitalBit(device, f"{self._cmd_syntax}_D{x}") - ) - self._dall = RefItemDall(device, f"{self._cmd_syntax}_DALL") - - @property - def d(self) -> Dict[int, RefItemDigitalBit]: - """Return the ``REF_D`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_D?`` query. - - Using the ``.verify(value)`` method will send the ``REF_D?`` query and raise an - AssertionError if the returned value does not match ``value``. - - Sub-properties: - - ``.label``: The ``REF_D:LABel`` command tree. - """ - return self._d - - @property - def dall(self) -> RefItemDall: - """Return the ``REF_DALL`` command tree. - - Usage: - - Using the ``.query()`` method will send the ``REF_DALL?`` query. - - Using the ``.verify(value)`` method will send the ``REF_DALL?`` query and raise an - AssertionError if the returned value does not match ``value``. - - Sub-properties: - - ``.label``: The ``REF_DALL:LABel`` command tree. - """ - return self._dall - - class RefRefItemSource(SCPICmdWrite): """The ``REF:REF:SOUrce`` command. diff --git a/src/tm_devices/commands/gen_fteabn_lpdmsomdodpoafgawgdsa/__init__.py b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/__init__.py similarity index 100% rename from src/tm_devices/commands/gen_fteabn_lpdmsomdodpoafgawgdsa/__init__.py rename to src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/__init__.py diff --git a/src/tm_devices/commands/gen_e3e9uu_lpdmso/data.py b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/data.py similarity index 99% rename from src/tm_devices/commands/gen_e3e9uu_lpdmso/data.py rename to src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/data.py index bf963d1a..cdeb1298 100644 --- a/src/tm_devices/commands/gen_e3e9uu_lpdmso/data.py +++ b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/data.py @@ -1,7 +1,7 @@ """The data commands module. These commands are used in the following models: -LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3e9uu_lpdmso/eyemask.py b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/eyemask.py similarity index 99% rename from src/tm_devices/commands/gen_e3e9uu_lpdmso/eyemask.py rename to src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/eyemask.py index 7eb9331e..72bd66f0 100644 --- a/src/tm_devices/commands/gen_e3e9uu_lpdmso/eyemask.py +++ b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/eyemask.py @@ -1,7 +1,7 @@ """The eyemask commands module. These commands are used in the following models: -LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3e9uu_lpdmso/matharbflt.py b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/matharbflt.py similarity index 98% rename from src/tm_devices/commands/gen_e3e9uu_lpdmso/matharbflt.py rename to src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/matharbflt.py index fdd7dd6a..47da0f48 100644 --- a/src/tm_devices/commands/gen_e3e9uu_lpdmso/matharbflt.py +++ b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/matharbflt.py @@ -1,7 +1,7 @@ """The matharbflt commands module. These commands are used in the following models: -LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3e9uu_lpdmso/peakstable.py b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/peakstable.py similarity index 99% rename from src/tm_devices/commands/gen_e3e9uu_lpdmso/peakstable.py rename to src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/peakstable.py index 2d6ebd8e..37b9e78d 100644 --- a/src/tm_devices/commands/gen_e3e9uu_lpdmso/peakstable.py +++ b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/peakstable.py @@ -1,7 +1,7 @@ """The peakstable commands module. These commands are used in the following models: -LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/ref.py b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/ref.py new file mode 100644 index 00000000..b2eb2ef3 --- /dev/null +++ b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/ref.py @@ -0,0 +1,1281 @@ +"""The ref commands module. + +These commands are used in the following models: +LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - REF_D:LABel:COLor + - REF_D:LABel:COLor? + - REF_D:LABel:FONT:BOLD {ON|OFF|} + - REF_D:LABel:FONT:BOLD? + - REF_D:LABel:FONT:ITALic {ON|OFF|} + - REF_D:LABel:FONT:ITALic? + - REF_D:LABel:FONT:SIZE + - REF_D:LABel:FONT:SIZE? + - REF_D:LABel:FONT:TYPE + - REF_D:LABel:FONT:TYPE? + - REF_D:LABel:FONT:UNDERline {ON|OFF|} + - REF_D:LABel:FONT:UNDERline? + - REF_D:LABel:NAMe + - REF_D:LABel:NAMe? + - REF_D:LABel:XPOS + - REF_D:LABel:XPOS? + - REF_D:LABel:YPOS + - REF_D:LABel:YPOS? + - REF_DALL:LABel:COLor + - REF_DALL:LABel:COLor? + - REF_DALL:LABel:FONT:BOLD {ON|OFF|} + - REF_DALL:LABel:FONT:BOLD? + - REF_DALL:LABel:FONT:ITALic {ON|OFF|} + - REF_DALL:LABel:FONT:ITALic? + - REF_DALL:LABel:FONT:SIZE + - REF_DALL:LABel:FONT:SIZE? + - REF_DALL:LABel:FONT:TYPE + - REF_DALL:LABel:FONT:TYPE? + - REF_DALL:LABel:FONT:UNDERline {ON|OFF|} + - REF_DALL:LABel:FONT:UNDERline? + - REF_DALL:LABel:NAMe + - REF_DALL:LABel:NAMe? + - REF_DALL:LABel:XPOS + - REF_DALL:LABel:XPOS? + - REF_DALL:LABel:YPOS + - REF_DALL:LABel:YPOS? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + ValidatedDigitalBit, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class RefItemDallLabelYpos(SCPICmdWrite, SCPICmdRead): + """The ``REF_DALL:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the label of the specified digital group. + The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:YPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:YPOS value`` command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:YPOS + - REF_DALL:LABel:YPOS? + ``` + + Info: + - ```` is the y-position, in pixels relative to the baseline of the waveform, of the + group. + """ + + +class RefItemDallLabelXpos(SCPICmdWrite, SCPICmdRead): + """The ``REF_DALL:LABel:XPOS`` command. + + Description: + - This command sets or queries the x-position of the label of the specified digital group. + The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:XPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:XPOS value`` command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:XPOS + - REF_DALL:LABel:XPOS? + ``` + + Info: + - ```` is the x-position, in pixels relative to the left edge of the display, of the + group. + """ + + +class RefItemDallLabelName(SCPICmdWrite, SCPICmdRead): + """The ``REF_DALL:LABel:NAMe`` command. + + Description: + - This command sets or queries the label of the specified digital group. The reference is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:NAMe value`` command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:NAMe + - REF_DALL:LABel:NAMe? + ``` + + Info: + - ```` is the name of the group. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefItemDallLabelFontUnderline(SCPICmdWrite, SCPICmdRead): + """The ``REF_DALL:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified digital group. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:UNDERline?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:UNDERline?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REF_DALL:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:UNDERline {ON|OFF|} + - REF_DALL:LABel:FONT:UNDERline? + ``` + + Info: + - ``OFF`` argument turns off underline font. + - ``ON`` argument turns on underline font. + - ```` = 0 turns off underline font; any other value turns on underline font. + """ + + +class RefItemDallLabelFontType(SCPICmdWrite, SCPICmdRead): + """The ``REF_DALL:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified digital group, such as Arial + or Times New Roman. The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:TYPE + - REF_DALL:LABel:FONT:TYPE? + ``` + + Info: + - ```` is the font type. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefItemDallLabelFontSize(SCPICmdWrite, SCPICmdRead): + """The ``REF_DALL:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified digital group. The reference + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:SIZE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:SIZE + - REF_DALL:LABel:FONT:SIZE? + ``` + + Info: + - ```` is the font size. + """ + + +class RefItemDallLabelFontItalic(SCPICmdWrite, SCPICmdRead): + """The ``REF_DALL:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified digital group. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:ITALic?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:ITALic {ON|OFF|} + - REF_DALL:LABel:FONT:ITALic? + ``` + + Info: + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + + +class RefItemDallLabelFontBold(SCPICmdWrite, SCPICmdRead): + """The ``REF_DALL:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified digital group. The reference + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:BOLD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:BOLD {ON|OFF|} + - REF_DALL:LABel:FONT:BOLD? + ``` + + Info: + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + + +class RefItemDallLabelFont(SCPICmdRead): + """The ``REF_DALL:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bold``: The ``REF_DALL:LABel:FONT:BOLD`` command. + - ``.italic``: The ``REF_DALL:LABel:FONT:ITALic`` command. + - ``.size``: The ``REF_DALL:LABel:FONT:SIZE`` command. + - ``.type``: The ``REF_DALL:LABel:FONT:TYPE`` command. + - ``.underline``: The ``REF_DALL:LABel:FONT:UNDERline`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = RefItemDallLabelFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = RefItemDallLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") + self._size = RefItemDallLabelFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = RefItemDallLabelFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = RefItemDallLabelFontUnderline(device, f"{self._cmd_syntax}:UNDERline") + + @property + def bold(self) -> RefItemDallLabelFontBold: + """Return the ``REF_DALL:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the specified digital group. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:BOLD?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:BOLD {ON|OFF|} + - REF_DALL:LABel:FONT:BOLD? + ``` + + Info: + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + return self._bold + + @property + def italic(self) -> RefItemDallLabelFontItalic: + """Return the ``REF_DALL:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the specified digital group. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:ITALic?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REF_DALL:LABel:FONT:ITALic value`` command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:ITALic {ON|OFF|} + - REF_DALL:LABel:FONT:ITALic? + ``` + + Info: + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + return self._italic + + @property + def size(self) -> RefItemDallLabelFontSize: + """Return the ``REF_DALL:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the specified digital group. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:SIZE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:SIZE + - REF_DALL:LABel:FONT:SIZE? + ``` + + Info: + - ```` is the font size. + """ + return self._size + + @property + def type(self) -> RefItemDallLabelFontType: + """Return the ``REF_DALL:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the specified digital group, such as + Arial or Times New Roman. The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:TYPE + - REF_DALL:LABel:FONT:TYPE? + ``` + + Info: + - ```` is the font type. + """ + return self._type + + @property + def underline(self) -> RefItemDallLabelFontUnderline: + """Return the ``REF_DALL:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the specified digital group. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT:UNDERline?`` + query. + - Using the ``.verify(value)`` method will send the + ``REF_DALL:LABel:FONT:UNDERline?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REF_DALL:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:FONT:UNDERline {ON|OFF|} + - REF_DALL:LABel:FONT:UNDERline? + ``` + + Info: + - ``OFF`` argument turns off underline font. + - ``ON`` argument turns on underline font. + - ```` = 0 turns off underline font; any other value turns on underline font. + """ + return self._underline + + +class RefItemDallLabelColor(SCPICmdWrite, SCPICmdRead): + """The ``REF_DALL:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified digital group. The reference is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:COLor?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:COLor + - REF_DALL:LABel:COLor? + ``` + + Info: + - ```` is the color of the digital group label. To return the color to the default + color, send an empty string as in this example: ``:REF5_DALL:LABEL:COLOR`` ''. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefItemDallLabel(SCPICmdRead): + """The ``REF_DALL:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.color``: The ``REF_DALL:LABel:COLor`` command. + - ``.font``: The ``REF_DALL:LABel:FONT`` command tree. + - ``.name``: The ``REF_DALL:LABel:NAMe`` command. + - ``.xpos``: The ``REF_DALL:LABel:XPOS`` command. + - ``.ypos``: The ``REF_DALL:LABel:YPOS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._color = RefItemDallLabelColor(device, f"{self._cmd_syntax}:COLor") + self._font = RefItemDallLabelFont(device, f"{self._cmd_syntax}:FONT") + self._name = RefItemDallLabelName(device, f"{self._cmd_syntax}:NAMe") + self._xpos = RefItemDallLabelXpos(device, f"{self._cmd_syntax}:XPOS") + self._ypos = RefItemDallLabelYpos(device, f"{self._cmd_syntax}:YPOS") + + @property + def color(self) -> RefItemDallLabelColor: + """Return the ``REF_DALL:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the specified digital group. The reference + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:COLor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:COLor + - REF_DALL:LABel:COLor? + ``` + + Info: + - ```` is the color of the digital group label. To return the color to the + default color, send an empty string as in this example: ``:REF5_DALL:LABEL:COLOR`` ''. + """ + return self._color + + @property + def font(self) -> RefItemDallLabelFont: + """Return the ``REF_DALL:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:FONT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bold``: The ``REF_DALL:LABel:FONT:BOLD`` command. + - ``.italic``: The ``REF_DALL:LABel:FONT:ITALic`` command. + - ``.size``: The ``REF_DALL:LABel:FONT:SIZE`` command. + - ``.type``: The ``REF_DALL:LABel:FONT:TYPE`` command. + - ``.underline``: The ``REF_DALL:LABel:FONT:UNDERline`` command. + """ + return self._font + + @property + def name(self) -> RefItemDallLabelName: + """Return the ``REF_DALL:LABel:NAMe`` command. + + Description: + - This command sets or queries the label of the specified digital group. The reference + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:NAMe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:NAMe + - REF_DALL:LABel:NAMe? + ``` + + Info: + - ```` is the name of the group. + """ + return self._name + + @property + def xpos(self) -> RefItemDallLabelXpos: + """Return the ``REF_DALL:LABel:XPOS`` command. + + Description: + - This command sets or queries the x-position of the label of the specified digital + group. The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:XPOS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:XPOS value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:XPOS + - REF_DALL:LABel:XPOS? + ``` + + Info: + - ```` is the x-position, in pixels relative to the left edge of the display, of + the group. + """ + return self._xpos + + @property + def ypos(self) -> RefItemDallLabelYpos: + """Return the ``REF_DALL:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the label of the specified digital + group. The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel:YPOS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_DALL:LABel:YPOS value`` + command. + + SCPI Syntax: + ``` + - REF_DALL:LABel:YPOS + - REF_DALL:LABel:YPOS? + ``` + + Info: + - ```` is the y-position, in pixels relative to the baseline of the waveform, of + the group. + """ + return self._ypos + + +class RefItemDall(SCPICmdRead): + """The ``REF_DALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.label``: The ``REF_DALL:LABel`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._label = RefItemDallLabel(device, f"{self._cmd_syntax}:LABel") + + @property + def label(self) -> RefItemDallLabel: + """Return the ``REF_DALL:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.color``: The ``REF_DALL:LABel:COLor`` command. + - ``.font``: The ``REF_DALL:LABel:FONT`` command tree. + - ``.name``: The ``REF_DALL:LABel:NAMe`` command. + - ``.xpos``: The ``REF_DALL:LABel:XPOS`` command. + - ``.ypos``: The ``REF_DALL:LABel:YPOS`` command. + """ + return self._label + + +class RefItemDigitalBitLabelYpos(SCPICmdWrite, SCPICmdRead): + """The ``REF_D:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the label of the specified digital bit. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:YPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:YPOS value`` command. + + SCPI Syntax: + ``` + - REF_D:LABel:YPOS + - REF_D:LABel:YPOS? + ``` + + Info: + - ```` is the y-position, in pixels relative to the baseline of the waveform, of the + label. + """ + + +class RefItemDigitalBitLabelXpos(SCPICmdWrite, SCPICmdRead): + """The ``REF_D:LABel:XPOS`` command. + + Description: + - This command sets or queries the x-position of the label of the specified digital bit. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:XPOS?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:XPOS value`` command. + + SCPI Syntax: + ``` + - REF_D:LABel:XPOS + - REF_D:LABel:XPOS? + ``` + + Info: + - ```` is the x-position, in pixels relative to the left edge of the display, of the + label. + """ + + +class RefItemDigitalBitLabelName(SCPICmdWrite, SCPICmdRead): + """The ``REF_D:LABel:NAMe`` command. + + Description: + - Sets or queries the label of the specified digital bit. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:NAMe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:NAMe value`` command. + + SCPI Syntax: + ``` + - REF_D:LABel:NAMe + - REF_D:LABel:NAMe? + ``` + + Info: + - ```` is the label. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefItemDigitalBitLabelFontUnderline(SCPICmdWrite, SCPICmdRead): + """The ``REF_D:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the label of the specified digital + bit. The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:UNDERline?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:UNDERline?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REF_D:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:UNDERline {ON|OFF|} + - REF_D:LABel:FONT:UNDERline? + ``` + + Info: + - ``OFF`` argument turns off underline font. + - ``ON`` argument turns on underline font. + - ```` = 0 turns off underline font; any other value turns on underline font. + """ + + +class RefItemDigitalBitLabelFontType(SCPICmdWrite, SCPICmdRead): + """The ``REF_D:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the label of the specified digital bit, such + as Arial or Times New Roman. The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:TYPE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:TYPE + - REF_D:LABel:FONT:TYPE? + ``` + + Info: + - ```` is the font type of the label. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefItemDigitalBitLabelFontSize(SCPICmdWrite, SCPICmdRead): + """The ``REF_D:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the label of the specified digital bit. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:SIZE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:SIZE + - REF_D:LABel:FONT:SIZE? + ``` + + Info: + - ```` is the font size. + """ + + +class RefItemDigitalBitLabelFontItalic(SCPICmdWrite, SCPICmdRead): + """The ``REF_D:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the label of the specified digital bit. + The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:ITALic?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:ITALic value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:ITALic {ON|OFF|} + - REF_D:LABel:FONT:ITALic? + ``` + + Info: + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + + +class RefItemDigitalBitLabelFontBold(SCPICmdWrite, SCPICmdRead): + """The ``REF_D:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the label of the specified digital bit. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:BOLD?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:BOLD {ON|OFF|} + - REF_D:LABel:FONT:BOLD? + ``` + + Info: + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + + +class RefItemDigitalBitLabelFont(SCPICmdRead): + """The ``REF_D:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bold``: The ``REF_D:LABel:FONT:BOLD`` command. + - ``.italic``: The ``REF_D:LABel:FONT:ITALic`` command. + - ``.size``: The ``REF_D:LABel:FONT:SIZE`` command. + - ``.type``: The ``REF_D:LABel:FONT:TYPE`` command. + - ``.underline``: The ``REF_D:LABel:FONT:UNDERline`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bold = RefItemDigitalBitLabelFontBold(device, f"{self._cmd_syntax}:BOLD") + self._italic = RefItemDigitalBitLabelFontItalic(device, f"{self._cmd_syntax}:ITALic") + self._size = RefItemDigitalBitLabelFontSize(device, f"{self._cmd_syntax}:SIZE") + self._type = RefItemDigitalBitLabelFontType(device, f"{self._cmd_syntax}:TYPE") + self._underline = RefItemDigitalBitLabelFontUnderline( + device, f"{self._cmd_syntax}:UNDERline" + ) + + @property + def bold(self) -> RefItemDigitalBitLabelFontBold: + """Return the ``REF_D:LABel:FONT:BOLD`` command. + + Description: + - This command sets or queries the bold state of the label of the specified digital bit. + The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:BOLD?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:BOLD?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:BOLD value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:BOLD {ON|OFF|} + - REF_D:LABel:FONT:BOLD? + ``` + + Info: + - ``OFF`` argument turns off bold font. + - ``ON`` argument turns on bold font. + - ```` = 0 turns off bold font; any other value turns on bold font. + """ + return self._bold + + @property + def italic(self) -> RefItemDigitalBitLabelFontItalic: + """Return the ``REF_D:LABel:FONT:ITALic`` command. + + Description: + - This command sets or queries the italic state of the label of the specified digital + bit. The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:ITALic?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:ITALic?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REF_D:LABel:FONT:ITALic value`` command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:ITALic {ON|OFF|} + - REF_D:LABel:FONT:ITALic? + ``` + + Info: + - ``OFF`` argument turns off italic font. + - ``ON`` argument turns on italic font. + - ```` = 0 turns off italic font; any other value turns on italic font. + """ + return self._italic + + @property + def size(self) -> RefItemDigitalBitLabelFontSize: + """Return the ``REF_D:LABel:FONT:SIZE`` command. + + Description: + - This command sets or queries the font size of the label of the specified digital bit. + The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:SIZE?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:SIZE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:SIZE value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:SIZE + - REF_D:LABel:FONT:SIZE? + ``` + + Info: + - ```` is the font size. + """ + return self._size + + @property + def type(self) -> RefItemDigitalBitLabelFontType: + """Return the ``REF_D:LABel:FONT:TYPE`` command. + + Description: + - This command sets or queries the font type of the label of the specified digital bit, + such as Arial or Times New Roman. The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:TYPE?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT:TYPE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:FONT:TYPE value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:TYPE + - REF_D:LABel:FONT:TYPE? + ``` + + Info: + - ```` is the font type of the label. + """ + return self._type + + @property + def underline(self) -> RefItemDigitalBitLabelFontUnderline: + """Return the ``REF_D:LABel:FONT:UNDERline`` command. + + Description: + - This command sets or queries the underline state of the label of the specified digital + bit. The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT:UNDERline?`` + query. + - Using the ``.verify(value)`` method will send the + ``REF_D:LABel:FONT:UNDERline?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``REF_D:LABel:FONT:UNDERline value`` command. + + SCPI Syntax: + ``` + - REF_D:LABel:FONT:UNDERline {ON|OFF|} + - REF_D:LABel:FONT:UNDERline? + ``` + + Info: + - ``OFF`` argument turns off underline font. + - ``ON`` argument turns on underline font. + - ```` = 0 turns off underline font; any other value turns on underline font. + """ + return self._underline + + +class RefItemDigitalBitLabelColor(SCPICmdWrite, SCPICmdRead): + """The ``REF_D:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the label of the specified digital bit. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:COLor?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:COLor + - REF_D:LABel:COLor? + ``` + + Info: + - ```` is the label color. To return the color to the default color, send an empty + string as in this example: ``:REF5_D1:LABEL:COLOR`` ''. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class RefItemDigitalBitLabel(SCPICmdRead): + """The ``REF_D:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.color``: The ``REF_D:LABel:COLor`` command. + - ``.font``: The ``REF_D:LABel:FONT`` command tree. + - ``.name``: The ``REF_D:LABel:NAMe`` command. + - ``.xpos``: The ``REF_D:LABel:XPOS`` command. + - ``.ypos``: The ``REF_D:LABel:YPOS`` command. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._color = RefItemDigitalBitLabelColor(device, f"{self._cmd_syntax}:COLor") + self._font = RefItemDigitalBitLabelFont(device, f"{self._cmd_syntax}:FONT") + self._name = RefItemDigitalBitLabelName(device, f"{self._cmd_syntax}:NAMe") + self._xpos = RefItemDigitalBitLabelXpos(device, f"{self._cmd_syntax}:XPOS") + self._ypos = RefItemDigitalBitLabelYpos(device, f"{self._cmd_syntax}:YPOS") + + @property + def color(self) -> RefItemDigitalBitLabelColor: + """Return the ``REF_D:LABel:COLor`` command. + + Description: + - This command sets or queries the color of the label of the specified digital bit. The + reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:COLor?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:COLor?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:COLor value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:COLor + - REF_D:LABel:COLor? + ``` + + Info: + - ```` is the label color. To return the color to the default color, send an + empty string as in this example: ``:REF5_D1:LABEL:COLOR`` ''. + """ + return self._color + + @property + def font(self) -> RefItemDigitalBitLabelFont: + """Return the ``REF_D:LABel:FONT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:FONT?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:FONT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bold``: The ``REF_D:LABel:FONT:BOLD`` command. + - ``.italic``: The ``REF_D:LABel:FONT:ITALic`` command. + - ``.size``: The ``REF_D:LABel:FONT:SIZE`` command. + - ``.type``: The ``REF_D:LABel:FONT:TYPE`` command. + - ``.underline``: The ``REF_D:LABel:FONT:UNDERline`` command. + """ + return self._font + + @property + def name(self) -> RefItemDigitalBitLabelName: + """Return the ``REF_D:LABel:NAMe`` command. + + Description: + - Sets or queries the label of the specified digital bit. The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:NAMe?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:NAMe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:NAMe value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:NAMe + - REF_D:LABel:NAMe? + ``` + + Info: + - ```` is the label. + """ + return self._name + + @property + def xpos(self) -> RefItemDigitalBitLabelXpos: + """Return the ``REF_D:LABel:XPOS`` command. + + Description: + - This command sets or queries the x-position of the label of the specified digital bit. + The reference is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:XPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:XPOS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:XPOS value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:XPOS + - REF_D:LABel:XPOS? + ``` + + Info: + - ```` is the x-position, in pixels relative to the left edge of the display, of + the label. + """ + return self._xpos + + @property + def ypos(self) -> RefItemDigitalBitLabelYpos: + """Return the ``REF_D:LABel:YPOS`` command. + + Description: + - This command sets or queries the y-position of the label of the specified digital bit. + The channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel:YPOS?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel:YPOS?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``REF_D:LABel:YPOS value`` + command. + + SCPI Syntax: + ``` + - REF_D:LABel:YPOS + - REF_D:LABel:YPOS? + ``` + + Info: + - ```` is the y-position, in pixels relative to the baseline of the waveform, of + the label. + """ + return self._ypos + + +class RefItemDigitalBit(ValidatedDigitalBit, SCPICmdRead): + """The ``REF_D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_D?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.label``: The ``REF_D:LABel`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._label = RefItemDigitalBitLabel(device, f"{self._cmd_syntax}:LABel") + + @property + def label(self) -> RefItemDigitalBitLabel: + """Return the ``REF_D:LABel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_D:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D:LABel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.color``: The ``REF_D:LABel:COLor`` command. + - ``.font``: The ``REF_D:LABel:FONT`` command tree. + - ``.name``: The ``REF_D:LABel:NAMe`` command. + - ``.xpos``: The ``REF_D:LABel:XPOS`` command. + - ``.ypos``: The ``REF_D:LABel:YPOS`` command. + """ + return self._label + + +class RefItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF?`` query. + - Using the ``.verify(value)`` method will send the ``REF?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.d``: The ``REF_D`` command tree. + - ``.dall``: The ``REF_DALL`` command tree. + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "REF") -> None: + super().__init__(device, cmd_syntax) + self._d: Dict[int, RefItemDigitalBit] = DefaultDictPassKeyToFactory( + lambda x: RefItemDigitalBit(device, f"{self._cmd_syntax}_D{x}") + ) + self._dall = RefItemDall(device, f"{self._cmd_syntax}_DALL") + + @property + def d(self) -> Dict[int, RefItemDigitalBit]: + """Return the ``REF_D`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_D?`` query. + - Using the ``.verify(value)`` method will send the ``REF_D?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.label``: The ``REF_D:LABel`` command tree. + """ + return self._d + + @property + def dall(self) -> RefItemDall: + """Return the ``REF_DALL`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF_DALL?`` query. + - Using the ``.verify(value)`` method will send the ``REF_DALL?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.label``: The ``REF_DALL:LABel`` command tree. + """ + return self._dall diff --git a/src/tm_devices/commands/gen_e3e9uu_lpdmso/visual.py b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/visual.py similarity index 99% rename from src/tm_devices/commands/gen_e3e9uu_lpdmso/visual.py rename to src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/visual.py index cd18304b..7d5d95b5 100644 --- a/src/tm_devices/commands/gen_e3e9uu_lpdmso/visual.py +++ b/src/tm_devices/commands/gen_e44yni_lpdmsotekscopepc/visual.py @@ -2,7 +2,7 @@ """The visual commands module. These commands are used in the following models: -LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_fug7nl_lpdmsodpomdoawgdsa/__init__.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/__init__.py similarity index 100% rename from src/tm_devices/commands/gen_fug7nl_lpdmsodpomdoawgdsa/__init__.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/__init__.py diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/autosavepitimeout.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/autosavepitimeout.py similarity index 95% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/autosavepitimeout.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/autosavepitimeout.py index d693053c..e955db92 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/autosavepitimeout.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/autosavepitimeout.py @@ -1,7 +1,7 @@ """The autosavepitimeout commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/autosaveuitimeout.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/autosaveuitimeout.py similarity index 95% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/autosaveuitimeout.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/autosaveuitimeout.py index eef72093..6b577f95 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/autosaveuitimeout.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/autosaveuitimeout.py @@ -1,7 +1,7 @@ """The autosaveuitimeout commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/bustable.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/bustable.py similarity index 98% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/bustable.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/bustable.py index 6c82de8e..53a8e1ff 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/bustable.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/bustable.py @@ -1,7 +1,7 @@ """The bustable commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/configuration.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/configuration.py similarity index 98% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/configuration.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/configuration.py index d7809659..df2d1389 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/configuration.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/configuration.py @@ -1,7 +1,7 @@ """The configuration commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/curve.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/curve.py similarity index 98% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/curve.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/curve.py index d640011c..b3bafbf2 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/curve.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/curve.py @@ -1,7 +1,7 @@ """The curve commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/curvestream.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/curvestream.py similarity index 97% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/curvestream.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/curvestream.py index 03287b4e..33504bb6 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/curvestream.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/curvestream.py @@ -1,7 +1,7 @@ """The curvestream commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/customtable.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/customtable.py similarity index 98% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/customtable.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/customtable.py index b2029b53..eac97db7 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/customtable.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/customtable.py @@ -1,7 +1,7 @@ """The customtable commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/date.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/date.py similarity index 93% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/date.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/date.py index bd69255f..3368d1d1 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/date.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/date.py @@ -1,7 +1,7 @@ """The date commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/filesystem.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/filesystem.py similarity index 99% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/filesystem.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/filesystem.py index 95d0cffb..f15c8025 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/filesystem.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/filesystem.py @@ -1,7 +1,7 @@ """The filesystem commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/mainwindow.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/mainwindow.py similarity index 98% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/mainwindow.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/mainwindow.py index 5101d0c4..a02a53e5 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/mainwindow.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/mainwindow.py @@ -1,7 +1,7 @@ """The mainwindow commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/meastable.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/meastable.py similarity index 98% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/meastable.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/meastable.py index 43b7e763..d97c6dbb 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/meastable.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/meastable.py @@ -1,7 +1,7 @@ """The meastable commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/recall.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/recall.py similarity index 99% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/recall.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/recall.py index fa0a69f3..1d5cab11 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/recall.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/recall.py @@ -1,7 +1,7 @@ """The recall commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/socketserver.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/socketserver.py similarity index 99% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/socketserver.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/socketserver.py index c88ce0f4..07612cdc 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/socketserver.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/socketserver.py @@ -1,7 +1,7 @@ """The socketserver commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/time.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/time.py similarity index 98% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/time.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/time.py index 59a80c7c..2376ca76 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/time.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/time.py @@ -1,7 +1,7 @@ """The time commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/undo.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/undo.py similarity index 92% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/undo.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/undo.py index a768d241..2219343d 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/undo.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/undo.py @@ -1,7 +1,7 @@ """The undo commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/vertical.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/vertical.py similarity index 99% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/vertical.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/vertical.py index d3bc7c99..2abe5448 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/vertical.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/vertical.py @@ -1,7 +1,7 @@ """The vertical commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e3h2zs_lpdmso/wfmoutpre.py b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/wfmoutpre.py similarity index 99% rename from src/tm_devices/commands/gen_e3h2zs_lpdmso/wfmoutpre.py rename to src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/wfmoutpre.py index 11f6bd9b..b8fc85bd 100644 --- a/src/tm_devices/commands/gen_e3h2zs_lpdmso/wfmoutpre.py +++ b/src/tm_devices/commands/gen_e47rsg_lpdmsotekscopepc/wfmoutpre.py @@ -1,7 +1,7 @@ """The wfmoutpre commands module. These commands are used in the following models: -LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +LPD6, MSO2, MSO4, MSO4B, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_fuzvln_lpdmsodpodsa/__init__.py b/src/tm_devices/commands/gen_e6bmgw_lpdmsotekscopepcdpomdo/__init__.py similarity index 100% rename from src/tm_devices/commands/gen_fuzvln_lpdmsodpodsa/__init__.py rename to src/tm_devices/commands/gen_e6bmgw_lpdmsotekscopepcdpomdo/__init__.py diff --git a/src/tm_devices/commands/gen_e6lgg1_lpdmsodpomdo/totaluptime.py b/src/tm_devices/commands/gen_e6bmgw_lpdmsotekscopepcdpomdo/totaluptime.py similarity index 94% rename from src/tm_devices/commands/gen_e6lgg1_lpdmsodpomdo/totaluptime.py rename to src/tm_devices/commands/gen_e6bmgw_lpdmsotekscopepcdpomdo/totaluptime.py index a2ccc0a5..1fb9bf45 100644 --- a/src/tm_devices/commands/gen_e6lgg1_lpdmsodpomdo/totaluptime.py +++ b/src/tm_devices/commands/gen_e6bmgw_lpdmsotekscopepcdpomdo/totaluptime.py @@ -2,7 +2,7 @@ These commands are used in the following models: DPO2K, DPO2KB, DPO4K, DPO4KB, LPD6, MDO3, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO2, MSO2K, MSO2KB, MSO4, -MSO4B, MSO4K, MSO4KB, MSO5, MSO5B, MSO5LP, MSO6, MSO6B +MSO4B, MSO4K, MSO4KB, MSO5, MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_e6wozn_lpdmsotekscopepcmdodpo/__init__.py b/src/tm_devices/commands/gen_e6wozn_lpdmsotekscopepcmdodpo/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_e6606z_lpdmsomdodpo/pause.py b/src/tm_devices/commands/gen_e6wozn_lpdmsotekscopepcmdodpo/pause.py similarity index 97% rename from src/tm_devices/commands/gen_e6606z_lpdmsomdodpo/pause.py rename to src/tm_devices/commands/gen_e6wozn_lpdmsotekscopepcmdodpo/pause.py index 6cede25d..63974945 100644 --- a/src/tm_devices/commands/gen_e6606z_lpdmsomdodpo/pause.py +++ b/src/tm_devices/commands/gen_e6wozn_lpdmsotekscopepcmdodpo/pause.py @@ -2,7 +2,7 @@ These commands are used in the following models: DPO4K, DPO4KB, LPD6, MDO3, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO2, MSO4, MSO4B, MSO4K, MSO4KB, MSO5, -MSO5B, MSO5LP, MSO6, MSO6B +MSO5B, MSO5LP, MSO6, MSO6B, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_fn2qbf_msodpo/errordetector.py b/src/tm_devices/commands/gen_fn2qbf_msodpo/errordetector.py index 4139d6b0..cfcbf771 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 {SATAGEN|PRBS7|PRBS11|USB3|PCIEGEN|PRBS23|CUSTOM|ANY8B10B|PRBS16|PRBS9} + - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} - ERRORDetector:SIGnaltype? - ERRORDetector:SSC {ON|OFF} - ERRORDetector:SSC? @@ -1391,7 +1391,7 @@ class ErrordetectorSignaltype(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {SATAGEN|PRBS7|PRBS11|USB3|PCIEGEN|PRBS23|CUSTOM|ANY8B10B|PRBS16|PRBS9} + - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} - ERRORDetector:SIGnaltype? ``` @@ -5654,7 +5654,7 @@ def signaltype(self) -> ErrordetectorSignaltype: SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {SATAGEN|PRBS7|PRBS11|USB3|PCIEGEN|PRBS23|CUSTOM|ANY8B10B|PRBS16|PRBS9} + - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} - 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 142617cf..69ff7356 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|ULTRAsync|INTERnal|TEKLink} + - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} - ROSc:SOUrce? - ROSc:STATE? - ROSc:TRACking {STABle|FAST} @@ -93,7 +93,7 @@ class RoscSource(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ROSc:SOUrce {EXTernal|ULTRAsync|INTERnal|TEKLink} + - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} - ROSc:SOUrce? ``` @@ -228,7 +228,7 @@ def source(self) -> RoscSource: SCPI Syntax: ``` - - ROSc:SOUrce {EXTernal|ULTRAsync|INTERnal|TEKLink} + - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} - ROSc:SOUrce? ``` diff --git a/src/tm_devices/commands/gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa/__init__.py b/src/tm_devices/commands/gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa/miscellaneous.py b/src/tm_devices/commands/gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa/miscellaneous.py new file mode 100644 index 00000000..06c1c786 --- /dev/null +++ b/src/tm_devices/commands/gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa/miscellaneous.py @@ -0,0 +1,67 @@ +"""The miscellaneous commands module. + +These commands are used in the following models: +AFG3K, AFG3KB, AFG3KC, AWG5200, AWG5K, AWG5KC, AWG70KA, AWG70KB, AWG7K, AWG7KC, 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, MSO4KB, MSO5, +MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX, TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - *IDN? + - *TST? + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class Tst(SCPICmdRead): + """The ``*TST`` command. + + Description: + - Tests (self-test) the interface and returns a 0. + + Usage: + - Using the ``.query()`` method will send the ``*TST?`` query. + - Using the ``.verify(value)`` method will send the ``*TST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - *TST? + ``` + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "*TST") -> None: + super().__init__(device, cmd_syntax) + + +class Idn(SCPICmdRead): + """The ``*IDN`` command. + + Description: + - This query-only command returns the instrument identification code. + + Usage: + - Using the ``.query()`` method will send the ``*IDN?`` query. + - Using the ``.verify(value)`` method will send the ``*IDN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - *IDN? + ``` + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "*IDN") -> None: + super().__init__(device, cmd_syntax) diff --git a/src/tm_devices/commands/gen_ft5uww_lpdmsodpomdoafgawgdsa/status_and_error.py b/src/tm_devices/commands/gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa/status_and_error.py similarity index 99% rename from src/tm_devices/commands/gen_ft5uww_lpdmsodpomdoafgawgdsa/status_and_error.py rename to src/tm_devices/commands/gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa/status_and_error.py index 9efe7250..0260f2ac 100644 --- a/src/tm_devices/commands/gen_ft5uww_lpdmsodpomdoafgawgdsa/status_and_error.py +++ b/src/tm_devices/commands/gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa/status_and_error.py @@ -4,7 +4,7 @@ AFG3K, AFG3KB, AFG3KC, AWG5200, AWG5K, AWG5KC, AWG70KA, AWG70KB, AWG7K, AWG7KC, 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, MSO4KB, MSO5, -MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa/__init__.py b/src/tm_devices/commands/gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_fteabn_lpdmsomdodpoafgawgdsa/status_and_error.py b/src/tm_devices/commands/gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa/status_and_error.py similarity index 97% rename from src/tm_devices/commands/gen_fteabn_lpdmsomdodpoafgawgdsa/status_and_error.py rename to src/tm_devices/commands/gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa/status_and_error.py index 03fc6bd8..12b13ca4 100644 --- a/src/tm_devices/commands/gen_fteabn_lpdmsomdodpoafgawgdsa/status_and_error.py +++ b/src/tm_devices/commands/gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa/status_and_error.py @@ -4,7 +4,7 @@ AFG3K, AFG3KB, AFG3KC, AWG5200, AWG5K, AWG5KC, AWG70KA, AWG70KB, AWG7K, AWG7KC, DPO4K, DPO4KB, DPO5K, DPO5KB, DPO70KC, DPO70KD, DPO70KDX, DPO70KSX, DPO7K, DPO7KC, DSA70KC, DSA70KD, LPD6, MDO3, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO2, MSO4, MSO4B, MSO4K, MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, -MSO6, MSO6B, MSO70KC, MSO70KDX +MSO6, MSO6B, MSO70KC, MSO70KDX, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_ft5uww_lpdmsodpomdoafgawgdsa/miscellaneous.py b/src/tm_devices/commands/gen_ft5uww_lpdmsodpomdoafgawgdsa/miscellaneous.py index f5d2aedd..2d08ebef 100644 --- a/src/tm_devices/commands/gen_ft5uww_lpdmsodpomdoafgawgdsa/miscellaneous.py +++ b/src/tm_devices/commands/gen_ft5uww_lpdmsodpomdoafgawgdsa/miscellaneous.py @@ -12,41 +12,18 @@ Commands and Queries: ``` - - *IDN? - *TRG - - *TST? ``` """ from typing import Optional, TYPE_CHECKING -from ..helpers import SCPICmdRead, SCPICmdWriteNoArguments +from ..helpers import SCPICmdWriteNoArguments if TYPE_CHECKING: from tm_devices.drivers.pi.pi_device import PIDevice -class Tst(SCPICmdRead): - """The ``*TST`` command. - - Description: - - Tests (self-test) the interface and returns a 0. - - Usage: - - Using the ``.query()`` method will send the ``*TST?`` query. - - Using the ``.verify(value)`` method will send the ``*TST?`` query and raise an - AssertionError if the returned value does not match ``value``. - - SCPI Syntax: - ``` - - *TST? - ``` - """ - - def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "*TST") -> None: - super().__init__(device, cmd_syntax) - - class Trg(SCPICmdWriteNoArguments): """The ``*TRG`` command. @@ -64,24 +41,3 @@ class Trg(SCPICmdWriteNoArguments): def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "*TRG") -> None: super().__init__(device, cmd_syntax) - - -class Idn(SCPICmdRead): - """The ``*IDN`` command. - - Description: - - This query-only command returns the instrument identification code. - - Usage: - - Using the ``.query()`` method will send the ``*IDN?`` query. - - Using the ``.verify(value)`` method will send the ``*IDN?`` query and raise an - AssertionError if the returned value does not match ``value``. - - SCPI Syntax: - ``` - - *IDN? - ``` - """ - - def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "*IDN") -> None: - super().__init__(device, cmd_syntax) diff --git a/src/tm_devices/commands/gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa/__init__.py b/src/tm_devices/commands/gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_fug7nl_lpdmsodpomdoawgdsa/status_and_error.py b/src/tm_devices/commands/gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa/status_and_error.py similarity index 98% rename from src/tm_devices/commands/gen_fug7nl_lpdmsodpomdoawgdsa/status_and_error.py rename to src/tm_devices/commands/gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa/status_and_error.py index 07ba1eb5..0e98ef82 100644 --- a/src/tm_devices/commands/gen_fug7nl_lpdmsodpomdoawgdsa/status_and_error.py +++ b/src/tm_devices/commands/gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa/status_and_error.py @@ -4,7 +4,7 @@ AWG5200, AWG5K, AWG5KC, AWG70KA, AWG70KB, AWG7K, AWG7KC, 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, MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, -MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fuq1mi_lpdmsotekscopepcdpodsa/__init__.py b/src/tm_devices/commands/gen_fuq1mi_lpdmsotekscopepcdpodsa/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_fuzvln_lpdmsodpodsa/alias.py b/src/tm_devices/commands/gen_fuq1mi_lpdmsotekscopepcdpodsa/alias.py similarity index 99% rename from src/tm_devices/commands/gen_fuzvln_lpdmsodpodsa/alias.py rename to src/tm_devices/commands/gen_fuq1mi_lpdmsotekscopepcdpodsa/alias.py index da090a2e..33448d26 100644 --- a/src/tm_devices/commands/gen_fuzvln_lpdmsodpodsa/alias.py +++ b/src/tm_devices/commands/gen_fuq1mi_lpdmsotekscopepcdpodsa/alias.py @@ -2,7 +2,7 @@ These commands are used in the following models: DPO5K, DPO5KB, DPO70KC, DPO70KD, DPO70KDX, DPO70KSX, DPO7K, DPO7KC, DSA70KC, DSA70KD, LPD6, MSO2, -MSO4, MSO4B, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +MSO4, MSO4B, 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_fuzvln_lpdmsodpodsa/status_and_error.py b/src/tm_devices/commands/gen_fuq1mi_lpdmsotekscopepcdpodsa/status_and_error.py similarity index 98% rename from src/tm_devices/commands/gen_fuzvln_lpdmsodpodsa/status_and_error.py rename to src/tm_devices/commands/gen_fuq1mi_lpdmsotekscopepcdpodsa/status_and_error.py index 1d8a9d8c..aee8720f 100644 --- a/src/tm_devices/commands/gen_fuzvln_lpdmsodpodsa/status_and_error.py +++ b/src/tm_devices/commands/gen_fuq1mi_lpdmsotekscopepcdpodsa/status_and_error.py @@ -2,7 +2,7 @@ These commands are used in the following models: DPO5K, DPO5KB, DPO70KC, DPO70KD, DPO70KDX, DPO70KSX, DPO7K, DPO7KC, DSA70KC, DSA70KD, LPD6, MSO2, -MSO4, MSO4B, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +MSO4, MSO4B, 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_fx54ua_lpdmsodpomdodsa/miscellaneous.py b/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/miscellaneous.py index fd9ee349..cf8a4e31 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/miscellaneous.py +++ b/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/miscellaneous.py @@ -13,7 +13,6 @@ ``` - *DDT {|} - *DDT? - - *LRN? ``` """ @@ -25,30 +24,6 @@ from tm_devices.drivers.pi.pi_device import PIDevice -class Lrn(SCPICmdRead): - """The ``*LRN`` command. - - Description: - - This query-only command returns the commands that list the instrument settings, allowing - you to record or 'learn' the current instrument settings. You can use these commands to - return the instrument to the state it was in when you made the ``*LRN?`` query. This - command is identical to the SET command. - - Usage: - - Using the ``.query()`` method will send the ``*LRN?`` query. - - Using the ``.verify(value)`` method will send the ``*LRN?`` query and raise an - AssertionError if the returned value does not match ``value``. - - SCPI Syntax: - ``` - - *LRN? - ``` - """ - - def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "*LRN") -> None: - super().__init__(device, cmd_syntax) - - class Ddt(SCPICmdWrite, SCPICmdRead): """The ``*DDT`` command. diff --git a/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/__init__.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/allev.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/allev.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/allev.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/allev.py index 5f3d616d..d118945e 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/allev.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/allev.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/busy.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/busy.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/busy.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/busy.py index af40267f..2731c532 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/busy.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/busy.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/dese.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/dese.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/dese.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/dese.py index d13f5f1e..00967374 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/dese.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/dese.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/event.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/event.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/event.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/event.py index 355eabb8..769d4f25 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/event.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/event.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/evmsg.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/evmsg.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/evmsg.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/evmsg.py index 6fbcc7b1..c8a3fced 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/evmsg.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/evmsg.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/evqty.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/evqty.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/evqty.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/evqty.py index 4fd91666..a0e7dfa3 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/evqty.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/evqty.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/factory.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/factory.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/factory.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/factory.py index b93efa4f..aba5456b 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/factory.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/factory.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/header.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/header.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/header.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/header.py index 90d4ebd3..0bd83d4b 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/header.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/header.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/id.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/id.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/id.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/id.py index 239903ef..7ae9c6d1 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/id.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/id.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fxvtmy_lpdmsotekscopepcdpomdodsa/miscellaneous.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/miscellaneous.py new file mode 100644 index 00000000..feca1dcb --- /dev/null +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/miscellaneous.py @@ -0,0 +1,47 @@ +"""The miscellaneous commands module. + +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, +MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX, TekScopePC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - *LRN? + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead + +if TYPE_CHECKING: + from tm_devices.drivers.pi.pi_device import PIDevice + + +class Lrn(SCPICmdRead): + """The ``*LRN`` command. + + Description: + - This query-only command returns the commands that list the instrument settings, allowing + you to record or 'learn' the current instrument settings. You can use these commands to + return the instrument to the state it was in when you made the ``*LRN?`` query. This + command is identical to the SET command. + + Usage: + - Using the ``.query()`` method will send the ``*LRN?`` query. + - Using the ``.verify(value)`` method will send the ``*LRN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - *LRN? + ``` + """ + + def __init__(self, device: Optional["PIDevice"] = None, cmd_syntax: str = "*LRN") -> None: + super().__init__(device, cmd_syntax) diff --git a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/rem.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/rem.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/rem.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/rem.py index 22777d9d..31367900 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/rem.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/rem.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/set.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/set.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/set.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/set.py index cc0ff030..5ca9cee2 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/set.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/set.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/status_and_error.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/status_and_error.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/status_and_error.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/status_and_error.py index d6239092..ef52288c 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/status_and_error.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/status_and_error.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/verbose.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/verbose.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/verbose.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/verbose.py index a4cbc3c1..ed569ce0 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/verbose.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/verbose.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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_fx54ua_lpdmsodpomdodsa/wavfrm.py b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/wavfrm.py similarity index 98% rename from src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/wavfrm.py rename to src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/wavfrm.py index 0753961e..766a9af8 100644 --- a/src/tm_devices/commands/gen_fx54ua_lpdmsodpomdodsa/wavfrm.py +++ b/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/wavfrm.py @@ -3,7 +3,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, -MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX +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/lpd6_commands.py b/src/tm_devices/commands/lpd6_commands.py index c9a6b3d2..005f75e4 100644 --- a/src/tm_devices/commands/lpd6_commands.py +++ b/src/tm_devices/commands/lpd6_commands.py @@ -16,25 +16,21 @@ from .gen_e3e9uu_lpdmso.bus import Bus from .gen_e3e9uu_lpdmso.callouts import Callouts from .gen_e3e9uu_lpdmso.ch import Channel -from .gen_e3e9uu_lpdmso.data import Data from .gen_e3e9uu_lpdmso.diag import Diag from .gen_e3e9uu_lpdmso.diggrp import DiggrpItem from .gen_e3e9uu_lpdmso.display import Display from .gen_e3e9uu_lpdmso.dvm import Dvm -from .gen_e3e9uu_lpdmso.eyemask import Eyemask from .gen_e3e9uu_lpdmso.fpanel import Fpanel from .gen_e3e9uu_lpdmso.histogram import Histogram from .gen_e3e9uu_lpdmso.horizontal import Horizontal from .gen_e3e9uu_lpdmso.license import License from .gen_e3e9uu_lpdmso.mask import Mask from .gen_e3e9uu_lpdmso.math import Math -from .gen_e3e9uu_lpdmso.matharbflt import MatharbfltItem from .gen_e3e9uu_lpdmso.measurement import Measurement -from .gen_e3e9uu_lpdmso.peakstable import Peakstable from .gen_e3e9uu_lpdmso.pilogger import Pilogger from .gen_e3e9uu_lpdmso.plot import Plot from .gen_e3e9uu_lpdmso.power import Power -from .gen_e3e9uu_lpdmso.ref import Ref, RefItem +from .gen_e3e9uu_lpdmso.ref import Ref from .gen_e3e9uu_lpdmso.rosc import Rosc from .gen_e3e9uu_lpdmso.save import Save from .gen_e3e9uu_lpdmso.saveon import Saveon @@ -46,58 +42,72 @@ from .gen_e3e9uu_lpdmso.touchscreen import Touchscreen from .gen_e3e9uu_lpdmso.trigger import Trigger from .gen_e3e9uu_lpdmso.tstamptable import Tstamptable -from .gen_e3e9uu_lpdmso.visual import Visual from .gen_e3h2zs_lpdmso.afg import Afg -from .gen_e3h2zs_lpdmso.autosavepitimeout import Autosavepitimeout -from .gen_e3h2zs_lpdmso.autosaveuitimeout import Autosaveuitimeout from .gen_e3h2zs_lpdmso.autoset import Autoset -from .gen_e3h2zs_lpdmso.bustable import Bustable from .gen_e3h2zs_lpdmso.calibrate import Calibrate -from .gen_e3h2zs_lpdmso.configuration import Configuration from .gen_e3h2zs_lpdmso.connected import Connected -from .gen_e3h2zs_lpdmso.curve import Curve -from .gen_e3h2zs_lpdmso.curvestream import Curvestream -from .gen_e3h2zs_lpdmso.customtable import Customtable -from .gen_e3h2zs_lpdmso.date import Date from .gen_e3h2zs_lpdmso.ethernet import Ethernet -from .gen_e3h2zs_lpdmso.filesystem import Filesystem -from .gen_e3h2zs_lpdmso.mainwindow import Mainwindow -from .gen_e3h2zs_lpdmso.meastable import Meastable -from .gen_e3h2zs_lpdmso.recall import Recall -from .gen_e3h2zs_lpdmso.socketserver import Socketserver -from .gen_e3h2zs_lpdmso.time import Time -from .gen_e3h2zs_lpdmso.undo import Undo from .gen_e3h2zs_lpdmso.usbdevice import Usbdevice -from .gen_e3h2zs_lpdmso.vertical import Vertical -from .gen_e3h2zs_lpdmso.wfmoutpre import Wfmoutpre from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e44yni_lpdmsotekscopepc.data import Data +from .gen_e44yni_lpdmsotekscopepc.eyemask import Eyemask +from .gen_e44yni_lpdmsotekscopepc.matharbflt import MatharbfltItem +from .gen_e44yni_lpdmsotekscopepc.peakstable import Peakstable +from .gen_e44yni_lpdmsotekscopepc.ref import RefItem +from .gen_e44yni_lpdmsotekscopepc.visual import Visual +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 76c87eb2..9e43c8ce 100644 --- a/src/tm_devices/commands/mdo3_commands.py +++ b/src/tm_devices/commands/mdo3_commands.py @@ -54,35 +54,44 @@ from .gen_1nmc1o_msodpomdo.usbdevice import Usbdevice from .gen_1nmc1o_msodpomdo.usbtmc import Usbtmc from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_ujuvb_mdo.acquire import Acquire from .gen_ujuvb_mdo.configuration import Configuration from .gen_ujuvb_mdo.cursor import Cursor diff --git a/src/tm_devices/commands/mdo3k_commands.py b/src/tm_devices/commands/mdo3k_commands.py index c3836b58..0e26ab6a 100644 --- a/src/tm_devices/commands/mdo3k_commands.py +++ b/src/tm_devices/commands/mdo3k_commands.py @@ -64,35 +64,44 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .gen_usaa3_mdo.rf import Rf diff --git a/src/tm_devices/commands/mdo4k_commands.py b/src/tm_devices/commands/mdo4k_commands.py index 0d2dafdf..9dcf0091 100644 --- a/src/tm_devices/commands/mdo4k_commands.py +++ b/src/tm_devices/commands/mdo4k_commands.py @@ -67,35 +67,44 @@ from .gen_1nmc1o_msodpomdo.usbdevice import Usbdevice from .gen_1nmc1o_msodpomdo.usbtmc import Usbtmc from .gen_163n04_mdo.search import Search -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mdo4kb_commands.py b/src/tm_devices/commands/mdo4kb_commands.py index bef0da4f..c1f78165 100644 --- a/src/tm_devices/commands/mdo4kb_commands.py +++ b/src/tm_devices/commands/mdo4kb_commands.py @@ -67,35 +67,44 @@ from .gen_1nmc1o_msodpomdo.usbdevice import Usbdevice from .gen_1nmc1o_msodpomdo.usbtmc import Usbtmc from .gen_16x4xq_mdo.search import Search -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 7cc15e33..153a4c0d 100644 --- a/src/tm_devices/commands/mdo4kc_commands.py +++ b/src/tm_devices/commands/mdo4kc_commands.py @@ -67,35 +67,44 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 743b80b7..f2eded87 100644 --- a/src/tm_devices/commands/mso2_commands.py +++ b/src/tm_devices/commands/mso2_commands.py @@ -23,8 +23,6 @@ from .gen_1zn03_mso.display import Display from .gen_1zn03_mso.fpanel import Fpanel from .gen_1zn03_mso.horizontal import Horizontal -from .gen_1zn03_mso.lic import Lic -from .gen_1zn03_mso.license import License from .gen_1zn03_mso.mask import Mask from .gen_1zn03_mso.math import Math from .gen_1zn03_mso.measurement import Measurement @@ -39,57 +37,68 @@ from .gen_1zn03_mso.select import Select from .gen_1zn03_mso.touchscreen import Touchscreen from .gen_1zn03_mso.trigger import Trigger +from .gen_c69az_msotekscopepc.lic import Lic +from .gen_c69az_msotekscopepc.license import License from .gen_e3h2zs_lpdmso.afg import Afg -from .gen_e3h2zs_lpdmso.autosavepitimeout import Autosavepitimeout -from .gen_e3h2zs_lpdmso.autosaveuitimeout import Autosaveuitimeout from .gen_e3h2zs_lpdmso.autoset import Autoset -from .gen_e3h2zs_lpdmso.bustable import Bustable from .gen_e3h2zs_lpdmso.calibrate import Calibrate -from .gen_e3h2zs_lpdmso.configuration import Configuration from .gen_e3h2zs_lpdmso.connected import Connected -from .gen_e3h2zs_lpdmso.curve import Curve -from .gen_e3h2zs_lpdmso.curvestream import Curvestream -from .gen_e3h2zs_lpdmso.customtable import Customtable -from .gen_e3h2zs_lpdmso.date import Date from .gen_e3h2zs_lpdmso.ethernet import Ethernet -from .gen_e3h2zs_lpdmso.filesystem import Filesystem -from .gen_e3h2zs_lpdmso.mainwindow import Mainwindow -from .gen_e3h2zs_lpdmso.meastable import Meastable -from .gen_e3h2zs_lpdmso.recall import Recall -from .gen_e3h2zs_lpdmso.socketserver import Socketserver -from .gen_e3h2zs_lpdmso.time import Time -from .gen_e3h2zs_lpdmso.undo import Undo from .gen_e3h2zs_lpdmso.usbdevice import Usbdevice -from .gen_e3h2zs_lpdmso.vertical import Vertical -from .gen_e3h2zs_lpdmso.wfmoutpre import Wfmoutpre from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 7c1200f1..cd1f02b9 100644 --- a/src/tm_devices/commands/mso2k_commands.py +++ b/src/tm_devices/commands/mso2k_commands.py @@ -18,34 +18,43 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav from .gen_fkjfe8_msodpodsa.time import Time +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 dc4c05bd..2bf6f44d 100644 --- a/src/tm_devices/commands/mso2kb_commands.py +++ b/src/tm_devices/commands/mso2kb_commands.py @@ -18,34 +18,43 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav from .gen_fkjfe8_msodpodsa.time import Time +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 28d70058..ac8d6310 100644 --- a/src/tm_devices/commands/mso4_commands.py +++ b/src/tm_devices/commands/mso4_commands.py @@ -16,25 +16,21 @@ from .gen_e3e9uu_lpdmso.bus import Bus from .gen_e3e9uu_lpdmso.callouts import Callouts from .gen_e3e9uu_lpdmso.ch import Channel -from .gen_e3e9uu_lpdmso.data import Data from .gen_e3e9uu_lpdmso.diag import Diag from .gen_e3e9uu_lpdmso.diggrp import DiggrpItem from .gen_e3e9uu_lpdmso.display import Display from .gen_e3e9uu_lpdmso.dvm import Dvm -from .gen_e3e9uu_lpdmso.eyemask import Eyemask from .gen_e3e9uu_lpdmso.fpanel import Fpanel from .gen_e3e9uu_lpdmso.histogram import Histogram from .gen_e3e9uu_lpdmso.horizontal import Horizontal from .gen_e3e9uu_lpdmso.license import License from .gen_e3e9uu_lpdmso.mask import Mask from .gen_e3e9uu_lpdmso.math import Math -from .gen_e3e9uu_lpdmso.matharbflt import MatharbfltItem from .gen_e3e9uu_lpdmso.measurement import Measurement -from .gen_e3e9uu_lpdmso.peakstable import Peakstable from .gen_e3e9uu_lpdmso.pilogger import Pilogger from .gen_e3e9uu_lpdmso.plot import Plot from .gen_e3e9uu_lpdmso.power import Power -from .gen_e3e9uu_lpdmso.ref import Ref, RefItem +from .gen_e3e9uu_lpdmso.ref import Ref from .gen_e3e9uu_lpdmso.rosc import Rosc from .gen_e3e9uu_lpdmso.save import Save from .gen_e3e9uu_lpdmso.saveon import Saveon @@ -46,58 +42,72 @@ from .gen_e3e9uu_lpdmso.touchscreen import Touchscreen from .gen_e3e9uu_lpdmso.trigger import Trigger from .gen_e3e9uu_lpdmso.tstamptable import Tstamptable -from .gen_e3e9uu_lpdmso.visual import Visual from .gen_e3h2zs_lpdmso.afg import Afg -from .gen_e3h2zs_lpdmso.autosavepitimeout import Autosavepitimeout -from .gen_e3h2zs_lpdmso.autosaveuitimeout import Autosaveuitimeout from .gen_e3h2zs_lpdmso.autoset import Autoset -from .gen_e3h2zs_lpdmso.bustable import Bustable from .gen_e3h2zs_lpdmso.calibrate import Calibrate -from .gen_e3h2zs_lpdmso.configuration import Configuration from .gen_e3h2zs_lpdmso.connected import Connected -from .gen_e3h2zs_lpdmso.curve import Curve -from .gen_e3h2zs_lpdmso.curvestream import Curvestream -from .gen_e3h2zs_lpdmso.customtable import Customtable -from .gen_e3h2zs_lpdmso.date import Date from .gen_e3h2zs_lpdmso.ethernet import Ethernet -from .gen_e3h2zs_lpdmso.filesystem import Filesystem -from .gen_e3h2zs_lpdmso.mainwindow import Mainwindow -from .gen_e3h2zs_lpdmso.meastable import Meastable -from .gen_e3h2zs_lpdmso.recall import Recall -from .gen_e3h2zs_lpdmso.socketserver import Socketserver -from .gen_e3h2zs_lpdmso.time import Time -from .gen_e3h2zs_lpdmso.undo import Undo from .gen_e3h2zs_lpdmso.usbdevice import Usbdevice -from .gen_e3h2zs_lpdmso.vertical import Vertical -from .gen_e3h2zs_lpdmso.wfmoutpre import Wfmoutpre from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e44yni_lpdmsotekscopepc.data import Data +from .gen_e44yni_lpdmsotekscopepc.eyemask import Eyemask +from .gen_e44yni_lpdmsotekscopepc.matharbflt import MatharbfltItem +from .gen_e44yni_lpdmsotekscopepc.peakstable import Peakstable +from .gen_e44yni_lpdmsotekscopepc.ref import RefItem +from .gen_e44yni_lpdmsotekscopepc.visual import Visual +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 9a082595..f01d2f91 100644 --- a/src/tm_devices/commands/mso4b_commands.py +++ b/src/tm_devices/commands/mso4b_commands.py @@ -16,25 +16,21 @@ from .gen_e3e9uu_lpdmso.bus import Bus from .gen_e3e9uu_lpdmso.callouts import Callouts from .gen_e3e9uu_lpdmso.ch import Channel -from .gen_e3e9uu_lpdmso.data import Data from .gen_e3e9uu_lpdmso.diag import Diag from .gen_e3e9uu_lpdmso.diggrp import DiggrpItem from .gen_e3e9uu_lpdmso.display import Display from .gen_e3e9uu_lpdmso.dvm import Dvm -from .gen_e3e9uu_lpdmso.eyemask import Eyemask from .gen_e3e9uu_lpdmso.fpanel import Fpanel from .gen_e3e9uu_lpdmso.histogram import Histogram from .gen_e3e9uu_lpdmso.horizontal import Horizontal from .gen_e3e9uu_lpdmso.license import License from .gen_e3e9uu_lpdmso.mask import Mask from .gen_e3e9uu_lpdmso.math import Math -from .gen_e3e9uu_lpdmso.matharbflt import MatharbfltItem from .gen_e3e9uu_lpdmso.measurement import Measurement -from .gen_e3e9uu_lpdmso.peakstable import Peakstable from .gen_e3e9uu_lpdmso.pilogger import Pilogger from .gen_e3e9uu_lpdmso.plot import Plot from .gen_e3e9uu_lpdmso.power import Power -from .gen_e3e9uu_lpdmso.ref import Ref, RefItem +from .gen_e3e9uu_lpdmso.ref import Ref from .gen_e3e9uu_lpdmso.rosc import Rosc from .gen_e3e9uu_lpdmso.save import Save from .gen_e3e9uu_lpdmso.saveon import Saveon @@ -46,58 +42,72 @@ from .gen_e3e9uu_lpdmso.touchscreen import Touchscreen from .gen_e3e9uu_lpdmso.trigger import Trigger from .gen_e3e9uu_lpdmso.tstamptable import Tstamptable -from .gen_e3e9uu_lpdmso.visual import Visual from .gen_e3h2zs_lpdmso.afg import Afg -from .gen_e3h2zs_lpdmso.autosavepitimeout import Autosavepitimeout -from .gen_e3h2zs_lpdmso.autosaveuitimeout import Autosaveuitimeout from .gen_e3h2zs_lpdmso.autoset import Autoset -from .gen_e3h2zs_lpdmso.bustable import Bustable from .gen_e3h2zs_lpdmso.calibrate import Calibrate -from .gen_e3h2zs_lpdmso.configuration import Configuration from .gen_e3h2zs_lpdmso.connected import Connected -from .gen_e3h2zs_lpdmso.curve import Curve -from .gen_e3h2zs_lpdmso.curvestream import Curvestream -from .gen_e3h2zs_lpdmso.customtable import Customtable -from .gen_e3h2zs_lpdmso.date import Date from .gen_e3h2zs_lpdmso.ethernet import Ethernet -from .gen_e3h2zs_lpdmso.filesystem import Filesystem -from .gen_e3h2zs_lpdmso.mainwindow import Mainwindow -from .gen_e3h2zs_lpdmso.meastable import Meastable -from .gen_e3h2zs_lpdmso.recall import Recall -from .gen_e3h2zs_lpdmso.socketserver import Socketserver -from .gen_e3h2zs_lpdmso.time import Time -from .gen_e3h2zs_lpdmso.undo import Undo from .gen_e3h2zs_lpdmso.usbdevice import Usbdevice -from .gen_e3h2zs_lpdmso.vertical import Vertical -from .gen_e3h2zs_lpdmso.wfmoutpre import Wfmoutpre from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e44yni_lpdmsotekscopepc.data import Data +from .gen_e44yni_lpdmsotekscopepc.eyemask import Eyemask +from .gen_e44yni_lpdmsotekscopepc.matharbflt import MatharbfltItem +from .gen_e44yni_lpdmsotekscopepc.peakstable import Peakstable +from .gen_e44yni_lpdmsotekscopepc.ref import RefItem +from .gen_e44yni_lpdmsotekscopepc.visual import Visual +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 dc34be04..a9a4f079 100644 --- a/src/tm_devices/commands/mso4k_commands.py +++ b/src/tm_devices/commands/mso4k_commands.py @@ -67,35 +67,44 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso4kb_commands.py b/src/tm_devices/commands/mso4kb_commands.py index 39911192..2cdb6357 100644 --- a/src/tm_devices/commands/mso4kb_commands.py +++ b/src/tm_devices/commands/mso4kb_commands.py @@ -67,35 +67,44 @@ 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_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve from .gen_fhrp27_msodpomdodsa.date import Date from .gen_fhrp27_msodpomdodsa.mathvar import Mathvar from .gen_fhrp27_msodpomdodsa.save_and_recall import Rcl, Sav +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso5_commands.py b/src/tm_devices/commands/mso5_commands.py index 24dad760..1223a7b7 100644 --- a/src/tm_devices/commands/mso5_commands.py +++ b/src/tm_devices/commands/mso5_commands.py @@ -16,25 +16,21 @@ from .gen_e3e9uu_lpdmso.bus import Bus from .gen_e3e9uu_lpdmso.callouts import Callouts from .gen_e3e9uu_lpdmso.ch import Channel -from .gen_e3e9uu_lpdmso.data import Data from .gen_e3e9uu_lpdmso.diag import Diag from .gen_e3e9uu_lpdmso.diggrp import DiggrpItem from .gen_e3e9uu_lpdmso.display import Display from .gen_e3e9uu_lpdmso.dvm import Dvm -from .gen_e3e9uu_lpdmso.eyemask import Eyemask from .gen_e3e9uu_lpdmso.fpanel import Fpanel from .gen_e3e9uu_lpdmso.histogram import Histogram from .gen_e3e9uu_lpdmso.horizontal import Horizontal from .gen_e3e9uu_lpdmso.license import License from .gen_e3e9uu_lpdmso.mask import Mask from .gen_e3e9uu_lpdmso.math import Math -from .gen_e3e9uu_lpdmso.matharbflt import MatharbfltItem from .gen_e3e9uu_lpdmso.measurement import Measurement -from .gen_e3e9uu_lpdmso.peakstable import Peakstable from .gen_e3e9uu_lpdmso.pilogger import Pilogger from .gen_e3e9uu_lpdmso.plot import Plot from .gen_e3e9uu_lpdmso.power import Power -from .gen_e3e9uu_lpdmso.ref import Ref, RefItem +from .gen_e3e9uu_lpdmso.ref import Ref from .gen_e3e9uu_lpdmso.rosc import Rosc from .gen_e3e9uu_lpdmso.save import Save from .gen_e3e9uu_lpdmso.saveon import Saveon @@ -46,58 +42,72 @@ from .gen_e3e9uu_lpdmso.touchscreen import Touchscreen from .gen_e3e9uu_lpdmso.trigger import Trigger from .gen_e3e9uu_lpdmso.tstamptable import Tstamptable -from .gen_e3e9uu_lpdmso.visual import Visual from .gen_e3h2zs_lpdmso.afg import Afg -from .gen_e3h2zs_lpdmso.autosavepitimeout import Autosavepitimeout -from .gen_e3h2zs_lpdmso.autosaveuitimeout import Autosaveuitimeout from .gen_e3h2zs_lpdmso.autoset import Autoset -from .gen_e3h2zs_lpdmso.bustable import Bustable from .gen_e3h2zs_lpdmso.calibrate import Calibrate -from .gen_e3h2zs_lpdmso.configuration import Configuration from .gen_e3h2zs_lpdmso.connected import Connected -from .gen_e3h2zs_lpdmso.curve import Curve -from .gen_e3h2zs_lpdmso.curvestream import Curvestream -from .gen_e3h2zs_lpdmso.customtable import Customtable -from .gen_e3h2zs_lpdmso.date import Date from .gen_e3h2zs_lpdmso.ethernet import Ethernet -from .gen_e3h2zs_lpdmso.filesystem import Filesystem -from .gen_e3h2zs_lpdmso.mainwindow import Mainwindow -from .gen_e3h2zs_lpdmso.meastable import Meastable -from .gen_e3h2zs_lpdmso.recall import Recall -from .gen_e3h2zs_lpdmso.socketserver import Socketserver -from .gen_e3h2zs_lpdmso.time import Time -from .gen_e3h2zs_lpdmso.undo import Undo from .gen_e3h2zs_lpdmso.usbdevice import Usbdevice -from .gen_e3h2zs_lpdmso.vertical import Vertical -from .gen_e3h2zs_lpdmso.wfmoutpre import Wfmoutpre from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e44yni_lpdmsotekscopepc.data import Data +from .gen_e44yni_lpdmsotekscopepc.eyemask import Eyemask +from .gen_e44yni_lpdmsotekscopepc.matharbflt import MatharbfltItem +from .gen_e44yni_lpdmsotekscopepc.peakstable import Peakstable +from .gen_e44yni_lpdmsotekscopepc.ref import RefItem +from .gen_e44yni_lpdmsotekscopepc.visual import Visual +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 aea78549..445f954e 100644 --- a/src/tm_devices/commands/mso5b_commands.py +++ b/src/tm_devices/commands/mso5b_commands.py @@ -16,25 +16,21 @@ from .gen_e3e9uu_lpdmso.bus import Bus from .gen_e3e9uu_lpdmso.callouts import Callouts from .gen_e3e9uu_lpdmso.ch import Channel -from .gen_e3e9uu_lpdmso.data import Data from .gen_e3e9uu_lpdmso.diag import Diag from .gen_e3e9uu_lpdmso.diggrp import DiggrpItem from .gen_e3e9uu_lpdmso.display import Display from .gen_e3e9uu_lpdmso.dvm import Dvm -from .gen_e3e9uu_lpdmso.eyemask import Eyemask from .gen_e3e9uu_lpdmso.fpanel import Fpanel from .gen_e3e9uu_lpdmso.histogram import Histogram from .gen_e3e9uu_lpdmso.horizontal import Horizontal from .gen_e3e9uu_lpdmso.license import License from .gen_e3e9uu_lpdmso.mask import Mask from .gen_e3e9uu_lpdmso.math import Math -from .gen_e3e9uu_lpdmso.matharbflt import MatharbfltItem from .gen_e3e9uu_lpdmso.measurement import Measurement -from .gen_e3e9uu_lpdmso.peakstable import Peakstable from .gen_e3e9uu_lpdmso.pilogger import Pilogger from .gen_e3e9uu_lpdmso.plot import Plot from .gen_e3e9uu_lpdmso.power import Power -from .gen_e3e9uu_lpdmso.ref import Ref, RefItem +from .gen_e3e9uu_lpdmso.ref import Ref from .gen_e3e9uu_lpdmso.rosc import Rosc from .gen_e3e9uu_lpdmso.save import Save from .gen_e3e9uu_lpdmso.saveon import Saveon @@ -46,58 +42,72 @@ from .gen_e3e9uu_lpdmso.touchscreen import Touchscreen from .gen_e3e9uu_lpdmso.trigger import Trigger from .gen_e3e9uu_lpdmso.tstamptable import Tstamptable -from .gen_e3e9uu_lpdmso.visual import Visual from .gen_e3h2zs_lpdmso.afg import Afg -from .gen_e3h2zs_lpdmso.autosavepitimeout import Autosavepitimeout -from .gen_e3h2zs_lpdmso.autosaveuitimeout import Autosaveuitimeout from .gen_e3h2zs_lpdmso.autoset import Autoset -from .gen_e3h2zs_lpdmso.bustable import Bustable from .gen_e3h2zs_lpdmso.calibrate import Calibrate -from .gen_e3h2zs_lpdmso.configuration import Configuration from .gen_e3h2zs_lpdmso.connected import Connected -from .gen_e3h2zs_lpdmso.curve import Curve -from .gen_e3h2zs_lpdmso.curvestream import Curvestream -from .gen_e3h2zs_lpdmso.customtable import Customtable -from .gen_e3h2zs_lpdmso.date import Date from .gen_e3h2zs_lpdmso.ethernet import Ethernet -from .gen_e3h2zs_lpdmso.filesystem import Filesystem -from .gen_e3h2zs_lpdmso.mainwindow import Mainwindow -from .gen_e3h2zs_lpdmso.meastable import Meastable -from .gen_e3h2zs_lpdmso.recall import Recall -from .gen_e3h2zs_lpdmso.socketserver import Socketserver -from .gen_e3h2zs_lpdmso.time import Time -from .gen_e3h2zs_lpdmso.undo import Undo from .gen_e3h2zs_lpdmso.usbdevice import Usbdevice -from .gen_e3h2zs_lpdmso.vertical import Vertical -from .gen_e3h2zs_lpdmso.wfmoutpre import Wfmoutpre from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e44yni_lpdmsotekscopepc.data import Data +from .gen_e44yni_lpdmsotekscopepc.eyemask import Eyemask +from .gen_e44yni_lpdmsotekscopepc.matharbflt import MatharbfltItem +from .gen_e44yni_lpdmsotekscopepc.peakstable import Peakstable +from .gen_e44yni_lpdmsotekscopepc.ref import RefItem +from .gen_e44yni_lpdmsotekscopepc.visual import Visual +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 47ba3e41..264fdb12 100644 --- a/src/tm_devices/commands/mso5k_commands.py +++ b/src/tm_devices/commands/mso5k_commands.py @@ -79,31 +79,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 42837fcb..eaf9535d 100644 --- a/src/tm_devices/commands/mso5kb_commands.py +++ b/src/tm_devices/commands/mso5kb_commands.py @@ -81,31 +81,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 cacd1a41..64851b2a 100644 --- a/src/tm_devices/commands/mso5lp_commands.py +++ b/src/tm_devices/commands/mso5lp_commands.py @@ -16,25 +16,21 @@ from .gen_e3e9uu_lpdmso.bus import Bus from .gen_e3e9uu_lpdmso.callouts import Callouts from .gen_e3e9uu_lpdmso.ch import Channel -from .gen_e3e9uu_lpdmso.data import Data from .gen_e3e9uu_lpdmso.diag import Diag from .gen_e3e9uu_lpdmso.diggrp import DiggrpItem from .gen_e3e9uu_lpdmso.display import Display from .gen_e3e9uu_lpdmso.dvm import Dvm -from .gen_e3e9uu_lpdmso.eyemask import Eyemask from .gen_e3e9uu_lpdmso.fpanel import Fpanel from .gen_e3e9uu_lpdmso.histogram import Histogram from .gen_e3e9uu_lpdmso.horizontal import Horizontal from .gen_e3e9uu_lpdmso.license import License from .gen_e3e9uu_lpdmso.mask import Mask from .gen_e3e9uu_lpdmso.math import Math -from .gen_e3e9uu_lpdmso.matharbflt import MatharbfltItem from .gen_e3e9uu_lpdmso.measurement import Measurement -from .gen_e3e9uu_lpdmso.peakstable import Peakstable from .gen_e3e9uu_lpdmso.pilogger import Pilogger from .gen_e3e9uu_lpdmso.plot import Plot from .gen_e3e9uu_lpdmso.power import Power -from .gen_e3e9uu_lpdmso.ref import Ref, RefItem +from .gen_e3e9uu_lpdmso.ref import Ref from .gen_e3e9uu_lpdmso.rosc import Rosc from .gen_e3e9uu_lpdmso.save import Save from .gen_e3e9uu_lpdmso.saveon import Saveon @@ -46,58 +42,72 @@ from .gen_e3e9uu_lpdmso.touchscreen import Touchscreen from .gen_e3e9uu_lpdmso.trigger import Trigger from .gen_e3e9uu_lpdmso.tstamptable import Tstamptable -from .gen_e3e9uu_lpdmso.visual import Visual from .gen_e3h2zs_lpdmso.afg import Afg -from .gen_e3h2zs_lpdmso.autosavepitimeout import Autosavepitimeout -from .gen_e3h2zs_lpdmso.autosaveuitimeout import Autosaveuitimeout from .gen_e3h2zs_lpdmso.autoset import Autoset -from .gen_e3h2zs_lpdmso.bustable import Bustable from .gen_e3h2zs_lpdmso.calibrate import Calibrate -from .gen_e3h2zs_lpdmso.configuration import Configuration from .gen_e3h2zs_lpdmso.connected import Connected -from .gen_e3h2zs_lpdmso.curve import Curve -from .gen_e3h2zs_lpdmso.curvestream import Curvestream -from .gen_e3h2zs_lpdmso.customtable import Customtable -from .gen_e3h2zs_lpdmso.date import Date from .gen_e3h2zs_lpdmso.ethernet import Ethernet -from .gen_e3h2zs_lpdmso.filesystem import Filesystem -from .gen_e3h2zs_lpdmso.mainwindow import Mainwindow -from .gen_e3h2zs_lpdmso.meastable import Meastable -from .gen_e3h2zs_lpdmso.recall import Recall -from .gen_e3h2zs_lpdmso.socketserver import Socketserver -from .gen_e3h2zs_lpdmso.time import Time -from .gen_e3h2zs_lpdmso.undo import Undo from .gen_e3h2zs_lpdmso.usbdevice import Usbdevice -from .gen_e3h2zs_lpdmso.vertical import Vertical -from .gen_e3h2zs_lpdmso.wfmoutpre import Wfmoutpre from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e44yni_lpdmsotekscopepc.data import Data +from .gen_e44yni_lpdmsotekscopepc.eyemask import Eyemask +from .gen_e44yni_lpdmsotekscopepc.matharbflt import MatharbfltItem +from .gen_e44yni_lpdmsotekscopepc.peakstable import Peakstable +from .gen_e44yni_lpdmsotekscopepc.ref import RefItem +from .gen_e44yni_lpdmsotekscopepc.visual import Visual +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 4a8327fd..4c41d39c 100644 --- a/src/tm_devices/commands/mso6_commands.py +++ b/src/tm_devices/commands/mso6_commands.py @@ -16,25 +16,21 @@ from .gen_e3e9uu_lpdmso.bus import Bus from .gen_e3e9uu_lpdmso.callouts import Callouts from .gen_e3e9uu_lpdmso.ch import Channel -from .gen_e3e9uu_lpdmso.data import Data from .gen_e3e9uu_lpdmso.diag import Diag from .gen_e3e9uu_lpdmso.diggrp import DiggrpItem from .gen_e3e9uu_lpdmso.display import Display from .gen_e3e9uu_lpdmso.dvm import Dvm -from .gen_e3e9uu_lpdmso.eyemask import Eyemask from .gen_e3e9uu_lpdmso.fpanel import Fpanel from .gen_e3e9uu_lpdmso.histogram import Histogram from .gen_e3e9uu_lpdmso.horizontal import Horizontal from .gen_e3e9uu_lpdmso.license import License from .gen_e3e9uu_lpdmso.mask import Mask from .gen_e3e9uu_lpdmso.math import Math -from .gen_e3e9uu_lpdmso.matharbflt import MatharbfltItem from .gen_e3e9uu_lpdmso.measurement import Measurement -from .gen_e3e9uu_lpdmso.peakstable import Peakstable from .gen_e3e9uu_lpdmso.pilogger import Pilogger from .gen_e3e9uu_lpdmso.plot import Plot from .gen_e3e9uu_lpdmso.power import Power -from .gen_e3e9uu_lpdmso.ref import Ref, RefItem +from .gen_e3e9uu_lpdmso.ref import Ref from .gen_e3e9uu_lpdmso.rosc import Rosc from .gen_e3e9uu_lpdmso.save import Save from .gen_e3e9uu_lpdmso.saveon import Saveon @@ -46,58 +42,72 @@ from .gen_e3e9uu_lpdmso.touchscreen import Touchscreen from .gen_e3e9uu_lpdmso.trigger import Trigger from .gen_e3e9uu_lpdmso.tstamptable import Tstamptable -from .gen_e3e9uu_lpdmso.visual import Visual from .gen_e3h2zs_lpdmso.afg import Afg -from .gen_e3h2zs_lpdmso.autosavepitimeout import Autosavepitimeout -from .gen_e3h2zs_lpdmso.autosaveuitimeout import Autosaveuitimeout from .gen_e3h2zs_lpdmso.autoset import Autoset -from .gen_e3h2zs_lpdmso.bustable import Bustable from .gen_e3h2zs_lpdmso.calibrate import Calibrate -from .gen_e3h2zs_lpdmso.configuration import Configuration from .gen_e3h2zs_lpdmso.connected import Connected -from .gen_e3h2zs_lpdmso.curve import Curve -from .gen_e3h2zs_lpdmso.curvestream import Curvestream -from .gen_e3h2zs_lpdmso.customtable import Customtable -from .gen_e3h2zs_lpdmso.date import Date from .gen_e3h2zs_lpdmso.ethernet import Ethernet -from .gen_e3h2zs_lpdmso.filesystem import Filesystem -from .gen_e3h2zs_lpdmso.mainwindow import Mainwindow -from .gen_e3h2zs_lpdmso.meastable import Meastable -from .gen_e3h2zs_lpdmso.recall import Recall -from .gen_e3h2zs_lpdmso.socketserver import Socketserver -from .gen_e3h2zs_lpdmso.time import Time -from .gen_e3h2zs_lpdmso.undo import Undo from .gen_e3h2zs_lpdmso.usbdevice import Usbdevice -from .gen_e3h2zs_lpdmso.vertical import Vertical -from .gen_e3h2zs_lpdmso.wfmoutpre import Wfmoutpre from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e44yni_lpdmsotekscopepc.data import Data +from .gen_e44yni_lpdmsotekscopepc.eyemask import Eyemask +from .gen_e44yni_lpdmsotekscopepc.matharbflt import MatharbfltItem +from .gen_e44yni_lpdmsotekscopepc.peakstable import Peakstable +from .gen_e44yni_lpdmsotekscopepc.ref import RefItem +from .gen_e44yni_lpdmsotekscopepc.visual import Visual +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 396f8a1e..3d667094 100644 --- a/src/tm_devices/commands/mso6b_commands.py +++ b/src/tm_devices/commands/mso6b_commands.py @@ -16,25 +16,21 @@ from .gen_e3e9uu_lpdmso.bus import Bus from .gen_e3e9uu_lpdmso.callouts import Callouts from .gen_e3e9uu_lpdmso.ch import Channel -from .gen_e3e9uu_lpdmso.data import Data from .gen_e3e9uu_lpdmso.diag import Diag from .gen_e3e9uu_lpdmso.diggrp import DiggrpItem from .gen_e3e9uu_lpdmso.display import Display from .gen_e3e9uu_lpdmso.dvm import Dvm -from .gen_e3e9uu_lpdmso.eyemask import Eyemask from .gen_e3e9uu_lpdmso.fpanel import Fpanel from .gen_e3e9uu_lpdmso.histogram import Histogram from .gen_e3e9uu_lpdmso.horizontal import Horizontal from .gen_e3e9uu_lpdmso.license import License from .gen_e3e9uu_lpdmso.mask import Mask from .gen_e3e9uu_lpdmso.math import Math -from .gen_e3e9uu_lpdmso.matharbflt import MatharbfltItem from .gen_e3e9uu_lpdmso.measurement import Measurement -from .gen_e3e9uu_lpdmso.peakstable import Peakstable from .gen_e3e9uu_lpdmso.pilogger import Pilogger from .gen_e3e9uu_lpdmso.plot import Plot from .gen_e3e9uu_lpdmso.power import Power -from .gen_e3e9uu_lpdmso.ref import Ref, RefItem +from .gen_e3e9uu_lpdmso.ref import Ref from .gen_e3e9uu_lpdmso.rosc import Rosc from .gen_e3e9uu_lpdmso.save import Save from .gen_e3e9uu_lpdmso.saveon import Saveon @@ -46,58 +42,72 @@ from .gen_e3e9uu_lpdmso.touchscreen import Touchscreen from .gen_e3e9uu_lpdmso.trigger import Trigger from .gen_e3e9uu_lpdmso.tstamptable import Tstamptable -from .gen_e3e9uu_lpdmso.visual import Visual from .gen_e3h2zs_lpdmso.afg import Afg -from .gen_e3h2zs_lpdmso.autosavepitimeout import Autosavepitimeout -from .gen_e3h2zs_lpdmso.autosaveuitimeout import Autosaveuitimeout from .gen_e3h2zs_lpdmso.autoset import Autoset -from .gen_e3h2zs_lpdmso.bustable import Bustable from .gen_e3h2zs_lpdmso.calibrate import Calibrate -from .gen_e3h2zs_lpdmso.configuration import Configuration from .gen_e3h2zs_lpdmso.connected import Connected -from .gen_e3h2zs_lpdmso.curve import Curve -from .gen_e3h2zs_lpdmso.curvestream import Curvestream -from .gen_e3h2zs_lpdmso.customtable import Customtable -from .gen_e3h2zs_lpdmso.date import Date from .gen_e3h2zs_lpdmso.ethernet import Ethernet -from .gen_e3h2zs_lpdmso.filesystem import Filesystem -from .gen_e3h2zs_lpdmso.mainwindow import Mainwindow -from .gen_e3h2zs_lpdmso.meastable import Meastable -from .gen_e3h2zs_lpdmso.recall import Recall -from .gen_e3h2zs_lpdmso.socketserver import Socketserver -from .gen_e3h2zs_lpdmso.time import Time -from .gen_e3h2zs_lpdmso.undo import Undo from .gen_e3h2zs_lpdmso.usbdevice import Usbdevice -from .gen_e3h2zs_lpdmso.vertical import Vertical -from .gen_e3h2zs_lpdmso.wfmoutpre import Wfmoutpre from .gen_e4de2d_lpdmsomdo.clear import Clear -from .gen_e6lgg1_lpdmsodpomdo.totaluptime import Totaluptime -from .gen_e6606z_lpdmsomdodpo.pause import Pause +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e44yni_lpdmsotekscopepc.data import Data +from .gen_e44yni_lpdmsotekscopepc.eyemask import Eyemask +from .gen_e44yni_lpdmsotekscopepc.matharbflt import MatharbfltItem +from .gen_e44yni_lpdmsotekscopepc.peakstable import Peakstable +from .gen_e44yni_lpdmsotekscopepc.ref import RefItem +from .gen_e44yni_lpdmsotekscopepc.visual import Visual +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 ac602e63..98ae0841 100644 --- a/src/tm_devices/commands/mso70kc_commands.py +++ b/src/tm_devices/commands/mso70kc_commands.py @@ -80,31 +80,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 6a7b7b4b..1296a8e9 100644 --- a/src/tm_devices/commands/mso70kdx_commands.py +++ b/src/tm_devices/commands/mso70kdx_commands.py @@ -80,31 +80,40 @@ from .gen_fpx9s1_dpodsamso.counter import Counter from .gen_fpx9s1_dpodsamso.linktraining import Linktraining from .gen_fpx9s1_dpodsamso.rosc import Rosc +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt from .gen_ft5uww_lpdmsodpomdoafgawgdsa.calibration import Cal -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Idn, Trg, Tst -from .gen_ft5uww_lpdmsodpomdoafgawgdsa.status_and_error import Cls, Esr, Opc, Rst, Stb, Wai -from .gen_fteabn_lpdmsomdodpoafgawgdsa.status_and_error import Opt -from .gen_fug7nl_lpdmsodpomdoawgdsa.status_and_error import Ese, Sre -from .gen_fuzvln_lpdmsodpodsa.alias import Alias -from .gen_fuzvln_lpdmsodpodsa.status_and_error import Psc -from .gen_fx54ua_lpdmsodpomdodsa.allev import Allev -from .gen_fx54ua_lpdmsodpomdodsa.busy import Busy -from .gen_fx54ua_lpdmsodpomdodsa.dese import Dese -from .gen_fx54ua_lpdmsodpomdodsa.event import Event -from .gen_fx54ua_lpdmsodpomdodsa.evmsg import Evmsg -from .gen_fx54ua_lpdmsodpomdodsa.evqty import Evqty -from .gen_fx54ua_lpdmsodpomdodsa.factory import Factory -from .gen_fx54ua_lpdmsodpomdodsa.header import Header -from .gen_fx54ua_lpdmsodpomdodsa.id import Id -from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt, Lrn +from .gen_ft5uww_lpdmsodpomdoafgawgdsa.miscellaneous import Trg +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fx54ua_lpdmsodpomdodsa.miscellaneous import Ddt from .gen_fx54ua_lpdmsodpomdodsa.newpass import Newpass from .gen_fx54ua_lpdmsodpomdodsa.password import Password -from .gen_fx54ua_lpdmsodpomdodsa.rem import Rem -from .gen_fx54ua_lpdmsodpomdodsa.set import Set -from .gen_fx54ua_lpdmsodpomdodsa.status_and_error import Pud from .gen_fx54ua_lpdmsodpomdodsa.teksecure import Teksecure -from .gen_fx54ua_lpdmsodpomdodsa.verbose import Verbose -from .gen_fx54ua_lpdmsodpomdodsa.wavfrm import Wavfrm +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +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_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 new file mode 100644 index 00000000..73e465ef --- /dev/null +++ b/src/tm_devices/commands/tekscopepc_commands.py @@ -0,0 +1,3188 @@ +"""The TekScopePC commands module. + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. +""" + +from typing import Any, Dict, Optional + +from tm_devices.drivers.pi.pi_device import PIDevice + +from .gen_c3g61_tekscopepc.actonevent import Actonevent +from .gen_c3g61_tekscopepc.bus import Bus +from .gen_c3g61_tekscopepc.callouts import Callouts +from .gen_c3g61_tekscopepc.ch import Channel +from .gen_c3g61_tekscopepc.display import Display +from .gen_c3g61_tekscopepc.filesys import Filesys +from .gen_c3g61_tekscopepc.histogram import Histogram +from .gen_c3g61_tekscopepc.horizontal import Horizontal +from .gen_c3g61_tekscopepc.mask import Mask +from .gen_c3g61_tekscopepc.math import Math +from .gen_c3g61_tekscopepc.measu import Measu +from .gen_c3g61_tekscopepc.measurement import Measurement +from .gen_c3g61_tekscopepc.plot import Plot +from .gen_c3g61_tekscopepc.power import Power +from .gen_c3g61_tekscopepc.ref import Ref +from .gen_c3g61_tekscopepc.remote import Remote +from .gen_c3g61_tekscopepc.s import SItem +from .gen_c3g61_tekscopepc.save import Save +from .gen_c3g61_tekscopepc.saveonevent import Saveonevent +from .gen_c3g61_tekscopepc.search import Search +from .gen_c3g61_tekscopepc.searchtable import Searchtable +from .gen_c3g61_tekscopepc.sv import Sv +from .gen_c3g61_tekscopepc.trigger import Trigger +from .gen_c69az_msotekscopepc.lic import Lic +from .gen_c69az_msotekscopepc.license import License +from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime +from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause +from .gen_e44yni_lpdmsotekscopepc.data import Data +from .gen_e44yni_lpdmsotekscopepc.eyemask import Eyemask +from .gen_e44yni_lpdmsotekscopepc.matharbflt import MatharbfltItem +from .gen_e44yni_lpdmsotekscopepc.peakstable import Peakstable +from .gen_e44yni_lpdmsotekscopepc.ref import RefItem +from .gen_e44yni_lpdmsotekscopepc.visual import Visual +from .gen_e47rsg_lpdmsotekscopepc.autosavepitimeout import Autosavepitimeout +from .gen_e47rsg_lpdmsotekscopepc.autosaveuitimeout import Autosaveuitimeout +from .gen_e47rsg_lpdmsotekscopepc.bustable import Bustable +from .gen_e47rsg_lpdmsotekscopepc.configuration import Configuration +from .gen_e47rsg_lpdmsotekscopepc.curve import Curve +from .gen_e47rsg_lpdmsotekscopepc.curvestream import Curvestream +from .gen_e47rsg_lpdmsotekscopepc.customtable import Customtable +from .gen_e47rsg_lpdmsotekscopepc.date import Date +from .gen_e47rsg_lpdmsotekscopepc.filesystem import Filesystem +from .gen_e47rsg_lpdmsotekscopepc.mainwindow import Mainwindow +from .gen_e47rsg_lpdmsotekscopepc.meastable import Meastable +from .gen_e47rsg_lpdmsotekscopepc.recall import Recall +from .gen_e47rsg_lpdmsotekscopepc.socketserver import Socketserver +from .gen_e47rsg_lpdmsotekscopepc.time import Time +from .gen_e47rsg_lpdmsotekscopepc.undo import Undo +from .gen_e47rsg_lpdmsotekscopepc.vertical import Vertical +from .gen_e47rsg_lpdmsotekscopepc.wfmoutpre import Wfmoutpre +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.miscellaneous import Idn, Tst +from .gen_fsksdy_lpdmsotekscopepcdpomdoafgawgdsa.status_and_error import ( + Cls, + Esr, + Opc, + Rst, + Stb, + Wai, +) +from .gen_fst7sp_lpdmsotekscopepcmdodpoafgawgdsa.status_and_error import Opt +from .gen_fu6dog_lpdmsotekscopepcdpomdoawgdsa.status_and_error import Ese, Sre +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.alias import Alias +from .gen_fuq1mi_lpdmsotekscopepcdpodsa.status_and_error import Psc +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.allev import Allev +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.busy import Busy +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.dese import Dese +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.event import Event +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 +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.set import Set +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose +from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .helpers import DefaultDictPassKeyToFactory + + +# pylint: disable=too-few-public-methods +class TekScopePCCommandConstants: + """The TekScopePC command argument constants. + + This provides access to all the string constants which can be used as arguments for TekScopePC + commands. + """ + + A = "A" + ABC = "ABC" + ABCB = "ABCB" + ABORT = "ABORT" + # ABORT = "ABORt" + ABSOLUTE = "ABSOLUTE" + # ABSOLUTE = "ABSolute" + AC = "AC" + ACB = "ACB" + ACBC = "ACBC" + ACCM = "ACCM" + ACDC = "ACDC" + ACK = "ACK" + ACKMISS = "ACKMISS" + ADD = "ADD" + ADDR10 = "ADDR10" + ADDR7 = "ADDR7" + ADDRANDDATA = "ADDRANDDATA" + ADDRESS = "ADDRESS" # ADDRess + ADVANCED = "ADVANCED" # ADVanced + AFREQUENCIES = "AFREQUENCIES" # AFREQuencies + ALARMSEARCH = "ALARMSEARCH" # ALARMSEARch + ALL = "ALL" + ALLBITS = "ALLBITS" # ALLBits + AMPLINEAR = "AMPLINEAR" # AMPLINear + AN = "AN" + AND = "AND" + ANY = "ANY" + ANYERROR = "ANYERROR" # ANYERRor + APASS = "APASS" # APASs + APPLY = "APPLY" + APPPWR = "APPPWR" + APPPWRSUM = "APPPWRSUM" + APRD = "APRD" + APRW = "APRW" + APWR = "APWR" + ARBITRARY = "ARBITRARY" # ARBitrary + ARINC429 = "ARINC429" + ARMW = "ARMW" + ARROW = "ARROW" + ASCII = "ASCII" + # ASCII = "ASCIi" + # ASCII = "ASCii" + AUDIO = "AUDIO" # AUDio + AUTHENTICATE = "AUTHENTICATE" # AUTHenticate + AUTO = "AUTO" + # AUTO = "Auto" + AUTOMATIC = "AUTOMATIC" # AUTOmatic + AUXILIARY = "AUXILIARY" # AUXiliary + AVERAGE = "AVERAGE" # AVErage + B = "B" + BACA = "BACA" + BACKWARD = "BACKWARD" # BACKWard + BADDR = "BADDR" # BADDr + BADGE = "BADGE" + BASIC = "BASIC" # BASic + BDIFFBP = "BDIFFBP" + BEACON = "BEACON" # BEACon + BESSELCUSTOM = "BESSELCUSTOM" # BESSelCUSTom + BINARY = "BINARY" + # BINARY = "BINary" + BITS = "BITS" + BITSTUFFING = "BITSTUFFING" # BITSTUFFing + BLACKMANHARRIS = "BLACKMANHARRIS" # BLACKMANHarris + # BLACKMANHARRIS = "BLACkmanharris" + BLOCKID = "BLOCKID" # BLOCkid + BM = "BM" + BMP = "BMP" + BMSGEND = "BMSGEND" # BMSGEnd + BN = "BN" + BOOKMARK = "BOOKMARK" + BOTH = "BOTH" + BPASS = "BPASS" # BPASs + BRD = "BRD" + BROADCAST = "BROADCAST" # BROadcast + BRW = "BRW" + BSTOP = "BSTOP" # BSTop + BUS = "BUS" + # BUS = "Bus" + BUSANDWAVEFORM = "BUSANDWAVEFORM" + BUSTURNAROUND = "BUSTURNAROUND" # BUSTURNAROUnd + BUSY = "BUSY" + BUTTERWORTH = "BUTTERWORTH" # BUTTerworth + BWR = "BWR" + BYTE = "BYTE" # BYTe + CAN = "CAN" + CAN2X = "CAN2X" + CDATA = "CDATA" # CDATa + CGS = "CGS" + CHANNEL = "CHANNEL" # CHANnel + CHEBYONE = "CHEBYONE" # CHEBYONe + CHEBYTWO = "CHEBYTWO" # CHEBYTWo + CHECKSUM = "CHECKSUM" # CHecksum + CHINDEPENDENT = "CHINDEPENDENT" # CHINDependent + CHIPSELECT = "CHIPSELECT" # ChipSelect + CIRCULATING = "CIRCULATING" # CIRCulating + CLASSA = "CLASSA" + CLASSB = "CLASSB" + CLASSC = "CLASSC" + CLASSD = "CLASSD" + CLEAR = "CLEAR" + # CLEAR = "CLEar" + CLOCK = "CLOCK" + CLOCKEDGE = "CLOCKEDGE" # ClockEdge + CMD = "CMD" + CMDOPCODE = "CMDOPCODE" # CMDOPCODe + CN = "CN" + CNT = "CNT" + COMMAND = "COMMAND" + # COMMAND = "COMMand" + COMPLETE = "COMPLETE" # COMPlete + COMPRESSION = "COMPRESSION" # COMPression + CONFIGURE = "CONFIGURE" # CONFigure + CONNECT = "CONNECT" # CONNect + CONSTANT = "CONSTANT" # CONSTant + CONSTANTCLOCK = "CONSTANTCLOCK" + CONTINUOUS = "CONTINUOUS" # CONTINuous + # CONTINUOUS = "CONTinuous" + CONTROL = "CONTROL" # CONTrol + CONTROLCHAR = "CONTROLCHAR" + CONTROLCODE = "CONTROLCODE" # CONTROLCODe + CONTROLMESSAGE = "CONTROLMESSAGE" # CONTROLMESSage + COUNTER = "COUNTER" # COUNter + CR = "CR" + CRC = "CRC" + CRC16 = "CRC16" + CRC5 = "CRC5" + CRCERROR = "CRCERROR" # CRCERRor + CRCHEADER = "CRCHEADER" # CRCHeader + CRCTRAILER = "CRCTRAILER" # CRCTrailer + CSI = "CSI" + CSPLIT = "CSPLIT" + CURRENT = "CURRENT" + # CURRENT = "CURRent" + # CURRENT = "Current" + CURSOR = "CURSOR" # CURSor + CUSTOM = "CUSTOM" + # CUSTOM = "CUSTom" + CYCLE = "CYCLE" + CYCLECOUNT = "CYCLECOUNT" # CYCLEcount + CYCLETYPE = "CYCLETYPE" # CYCLETYPe + DADDR = "DADDR" # DADDr + DATA = "DATA" + # DATA = "DATa" + DATA0 = "DATA0" + DATA1 = "DATA1" + DATA2 = "DATA2" + DATAGRAM = "DATAGRAM" # DATagram + DATAPACKET = "DATAPACKET" # DATAPacket + DBM = "DBM" + DBMA = "DBMA" + DBMV = "DBMV" + DBUA = "DBUA" + DBUV = "DBUV" + DBUW = "DBUW" + DC = "DC" + DCDC = "DCDC" + DCP1W2 = "DCP1W2" + DCPWR = "DCPWR" + DDATA = "DDATA" # DDATa + DDR = "DDR" + DDR3 = "DDR3" + DDRREAD = "DDRREAD" # DDRRead + DDRREADWRITE = "DDRREADWRITE" # DDRREADWrite + DDRWRITE = "DDRWRITE" # DDRWrite + DECIMAL = "DECIMAL" + DEFECT = "DEFECT" # DEFect + DEFER = "DEFER" # DEFer + DEGREES = "DEGREES" + DELTA = "DELTA" + DETAIL = "DETAIL" # DETail + DEVERROR = "DEVERROR" # DEVERRor + DEVICE = "DEVICE" # DEVice + DEVICEADDR = "DEVICEADDR" + DEVICECHIRP = "DEVICECHIRP" # DEVICEChirp + DEVICEDESCMASTERREAD = "DEVICEDESCMASTERREAD" # DEVICEDESCMASTERREAd + DEVICEDESCSLAVEREAD = "DEVICEDESCSLAVEREAD" # DEVICEDESCSLAVEREAd + DEVICETYPE = "DEVICETYPE" # DEVICETYPe + DIFF = "DIFF" + DIFFERENTIATOR = "DIFFERENTIATOR" # DIFFerentiator + DIRECT = "DIRECT" # DIRect + DISCMODE = "DISCMODE" # DISCMODe + DISCRETE = "DISCRETE" # DISCrete + DISLAVE = "DISLAVE" # DISLave + DISPARITY = "DISPARITY" # DISParity + DIVIDE = "DIVIDE" # DIVide + DLC = "DLC" + DMSGEND = "DMSGEND" # DMSGEnd + DONTCARE = "DONTCARE" # DONTcare + DONTINCLUDE = "DONTINCLUDE" # DONTInclude + DOTS = "DOTS" # DOTs + DOUBLE = "DOUBLE" + DPMAUTOSET = "DPMAUTOSET" # DPMAutoset + DPMPRESET = "DPMPRESET" # DPMPReset + DQ0 = "DQ0" + DQDQS = "DQDQS" + DRA = "DRA" + DRB = "DRB" + DSI = "DSI" + DUAL = "DUAL" + DYNAMIC = "DYNAMIC" + EACHCLOCKCYCLE = "EACHCLOCKCYCLE" + EBIT = "EBIT" + ECATHEADERLENGTH = "ECATHEADERLENGTH" # ECATHEADERLENGth + ECC = "ECC" + ECUDATA = "ECUDATA" # ECUDATa + ECUSENSOR = "ECUSENSOR" # ECUSENSor + EDGE = "EDGE" + EEP = "EEP" + EFFICIENCY = "EFFICIENCY" # EFFiciency + EIGHT = "EIGHT" # EIGHt + EIGHTBIT = "EIGHTBIT" + EIGHTHUNDREDHZ = "EIGHTHUNDREDHZ" # EIGHTHUNDREdhz + EITHER = "EITHER" + # EITHER = "EITHer" + # EITHER = "EITher" + ELLIPTICAL = "ELLIPTICAL" # ELLiptical + END = "END" + ENDOFPACKET = "ENDOFPACKET" # ENDOFPACKet + ENET100 = "ENET100" + ENET1000 = "ENET1000" + ENGINEERING = "ENGINEERING" # ENGineering + ENSLAVE = "ENSLAVE" # ENSLave + ENTASX = "ENTASX" # ENTasx + ENTERSWINDOW = "ENTERSWINDOW" # ENTERSWindow + ENTRDYA = "ENTRDYA" # ENTRDya + ENTRTSTMODE = "ENTRTSTMODE" # ENTRTSTMode + EOF = "EOF" + EOP = "EOP" + # EOP = "EOp" + EOT = "EOT" + EOTPDATA = "EOTPDATA" # EOTPDATa + EOW = "EOW" + EQUAL = "EQUAL" # EQUal + # EQUAL = "EQual" + EQUALS = "EQUALS" # Equals + ERROR = "ERROR" # ERROr + # ERROR = "ERRor" + ERRORS = "ERRORS" # ERRors + ERRSERVICEDATA = "ERRSERVICEDATA" # ERRSERVICEDATa + ESC = "ESC" + ESCAPEMODE = "ESCAPEMODE" # ESCAPEMODe + ETHERNET = "ETHERNET" # ETHernet + EUSB = "EUSB" + EVEN = "EVEN" + EVERY = "EVERY" + EXECUTE = "EXECUTE" + # EXECUTE = "EXECute" + # EXECUTE = "Execute" + EXITSWINDOW = "EXITSWINDOW" # EXITSWindow + EXPLICITCLOCK = "EXPLICITCLOCK" + EXTDLC = "EXTDLC" + EXTENDED = "EXTENDED" # EXTENDed + EXTIME = "EXTIME" # EXTime + EXTREGREAD = "EXTREGREAD" # EXTREGREAd + EXTREGWRITE = "EXTREGWRITE" # EXTREGWRIte + EYEHISTOGRAM = "EYEHISTOGRAM" # EYEhistogram + FACHANNEL = "FACHANNEL" # FACHANnel + FACTORY = "FACTORY" # FACtory + FALL = "FALL" + FALLING = "FALLING" + # FALLING = "FALLing" + FALSE = "FALSE" # FALSe + # FALSE = "False" + # FALSE = "false" + FAST = "FAST" + # FAST = "FAst" + FASTERTHAN = "FASTERTHAN" # FASTERthan + FATAL = "FATAL" # FATal + FBD1 = "FBD1" + FBD2 = "FBD2" + FBD3 = "FBD3" + FC1063 = "FC1063" + FC133 = "FC133" + FC2125 = "FC2125" + FC266 = "FC266" + FC4250 = "FC4250" + FC531 = "FC531" + FC8500 = "FC8500" + FCDATA = "FCDATA" # FCData + FCDFIRST = "FCDFIRST" # FCDFirst + FCDTWO = "FCDTWO" # FCDTwo + FCS = "FCS" + FCSERROR = "FCSERROR" # FCSERRor + # FCSERROR = "FCSError" + FCT = "FCT" + FDBITS = "FDBITS" + FDISO = "FDISO" + FDNONISO = "FDNONISO" + FFREQUENCY = "FFREQUENCY" # FFREQuency + FFT = "FFT" + FIBRECHANNEL = "FIBRECHANNEL" # FIBREchannel + FIFTEEN = "FIFTEEN" # FIFTeen + FIFTY = "FIFTY" + # FIFTY = "FIFTy" + FIFTYHZ = "FIFTYHZ" + # FIFTYHZ = "FIFTyhz" + FILTER = "FILTER" + FIRST = "FIRST" + FIVE = "FIVE" # FIVe + FIVEHUNDRED = "FIVEHUNDRED" # FIVEHundred + FIXED = "FIXED" + # FIXED = "FIXed" + FLASHERASE = "FLASHERASE" # FLASHERASe + FLASHREAD = "FLASHREAD" + FLASHWRITE = "FLASHWRITE" # FLASHWRITe + FLATNESS = "FLATNESS" + FLATTOP2 = "FLATTOP2" + # FLATTOP2 = "FLATtop2" + FLEXRAY = "FLEXRAY" + FLSUCCESSDATA = "FLSUCCESSDATA" # FLSUCCESSDATa + FLSUCCESSNODATA = "FLSUCCESSNODATA" # FLSUCCESSNODATa + FLUNSUCCESSNODATA = "FLUNSUCCESSNODATA" # FLUNSUCCESSNODATa + FLYBACK = "FLYBACK" + FORMERROR = "FORMERROR" # FORMERRor + FORWARD = "FORWARD" # FORWard + # FORWARD = "forward" + FOUR = "FOUR" + FOURBIT = "FOURBIT" + FOURHUNDREDHZ = "FOURHUNDREDHZ" + # FOURHUNDREDHZ = "FOURHUNDREdhz" + FOURTEENTEN = "FOURTEENTEN" # FOURTEENten + FP = "FP" + FPBINARY = "FPBINARY" # FPBinary + FPRD = "FPRD" + FPRW = "FPRW" + FPULSE = "FPULSE" # FPULse + FPWR = "FPWR" + FRAME = "FRAME" # FRAMe + # FRAME = "FRame" + FRAMEID = "FRAMEID" + FRAMELENGTH = "FRAMELENGTH" # FRAMELENgth + FRAMEREJ = "FRAMEREJ" + FRAMES = "FRAMES" # FRAMes + FRAMETYPE = "FRAMETYPE" # FRAMEType + # FRAMETYPE = "FRAMEtype" + FREQUENCY = "FREQUENCY" # FREQuency + FRMW = "FRMW" + FTLB = "FTLB" + FULL = "FULL" + FULLSCREEN = "FULLSCREEN" # FULLScreen + FULLSPEED = "FULLSPEED" + FUNCTIONCODE = "FUNCTIONCODE" # FUNCTIONCODe + FW1394BS1600B = "FW1394BS1600B" + FW1394BS400B = "FW1394BS400B" + FW1394BS800B = "FW1394BS800B" + GAP = "GAP" + GAUSSIAN = "GAUSSIAN" # GAUSSian + # GAUSSIAN = "GAUSsian" + GET = "GET" + GETBUSCH = "GETBUSCH" # GETBusch + GETCONFIG = "GETCONFIG" # GETCONFig + GETDEVCH = "GETDEVCH" # GETDevch + GETFLASHNP = "GETFLASHNP" + GETMRDL = "GETMRDL" # GETMRdl + GETMWRL = "GETMWRL" # GETMWrl + GETNP = "GETNP" + GETOOB = "GETOOB" + GETPC = "GETPC" + GETPRID = "GETPRID" # GETPrid + GETREG = "GETREG" # GETReg + GETREGPKTALERT = "GETREGPKTALERT" # GETRegpktalert + GETREGPKTBAD = "GETREGPKTBAD" # GETRegpktbad + GETREGPKTRECENT = "GETREGPKTRECENT" # GETRegpktrecent + GETREGTESTCFG = "GETREGTESTCFG" # GETRegtestcfg + GETREGVENDOR = "GETREGVENDOR" # GETRegvendor + GETREGVREVENT = "GETREGVREVENT" # GETRegvrevent + GETSLAVE = "GETSLAVE" # GETSlave + GETSTATUS = "GETSTATUS" # GETSTATus + GETVWIRE = "GETVWIRE" # GETVWIRe + GLOBAL = "GLOBAL" # GLOBal + GRATICULE = "GRATICULE" + GREATERTHAN = "GREATERTHAN" # GREATERthan + H = "H" + HAMMING = "HAMMING" # HAMMing + HANDSHAKEPACKET = "HANDSHAKEPACKET" # HANDSHAKEPacket + HANNING = "HANNING" # HANNing + HASH = "HASH" + HBARS = "HBARS" # HBArs + HDRCAPABILITY = "HDRCAPABILITY" # HDRCapability + HDREXIT = "HDREXIT" # HDRExit + HDRRESTART = "HDRRESTART" # HDRRestart + HEADER = "HEADER" # HEADer + HEX = "HEX" + HEXAGON = "HEXAGON" # HEXAgon + HFREJ = "HFREJ" # HFRej + HI = "HI" + HIGH = "HIGH" + HIGHZ = "HIGHZ" + HILBERT = "HILBERT" # HILBert + HORIZONTAL = "HORIZONTAL" # HORizontal + HORIZONTALSCALE = "HORIZONTALSCALE" # HORIZontalscale + HOSTADDR = "HOSTADDR" + HOSTCHIRP = "HOSTCHIRP" # HOSTChirp + HOTJOIN = "HOTJOIN" # HOTJoin + HPASS = "HPASS" # HPASs + HS = "HS" + HSENSOR = "HSENSOR" + HUNDRED = "HUNDRED" # HUNdred + HUNDREDBASET1 = "HUNDREDBASET1" + HUNDREDBASETX = "HUNDREDBASETX" + HZ = "HZ" + I2C = "I2C" + I2S = "I2S" + I3C = "I3C" + IBA2500 = "IBA2500" + IBA_GEN2 = "IBA_GEN2" + IBS = "IBS" + IC = "IC" + ID = "ID" + IDANDDATA = "IDANDDATA" + IDENTIFIER = "IDENTIFIER" # IDentifier + IDLE = "IDLE" + # IDLE = "IDLe" + IDX = "IDX" + IGBT = "IGBT" + IMAGINARY = "IMAGINARY" # IMAGinary + IN = "IN" + INCHLB = "INCHLB" + INCLUDE = "INCLUDE" # INCLude + INDEPENDENT = "INDEPENDENT" + INDEX = "INDEX" # INDex + INFINITE = "INFINITE" # INFInite + INFORMATION = "INFORMATION" # INFormation + INFPERSIST = "INFPERSIST" # INFPersist + INIT = "INIT" + INPUT = "INPUT" + INPWR = "INPWR" + INPWRSUM = "INPWRSUM" + INRANGE = "INRANGE" # INrange + # INRANGE = "Inrange" + INSIDEGREATER = "INSIDEGREATER" # INSIDEGreater + INSIDERANGE = "INSIDERANGE" # INSIDErange + INVERT = "INVERT" # INVert + INVERTED = "INVERTED" # INVERTed + # INVERTED = "INVErted" + # INVERTED = "INVerted" + IPDATA = "IPDATA" # IPData + IPHEADER = "IPHEADER" # IPHEADer + # IPHEADER = "IPHeader" + IRMS = "IRMS" + IRQ = "IRQ" + ISOALL = "ISOALL" + ISOEND = "ISOEND" + ISOMID = "ISOMID" + ISOSTART = "ISOSTART" + JPG = "JPG" + KAISERBESSEL = "KAISERBESSEL" # KAISERBessel + # KAISERBESSEL = "KAISerbessel" + L = "L" + LABEL = "LABEL" # LABel + LABELANDDATA = "LABELANDDATA" + LATCH = "LATCH" # LATCh + LCHANNEL = "LCHANNEL" # LCHannel + LEFT = "LEFT" # LEFt + LEN = "LEN" + LENGTH = "LENGTH" # LENGth + LESSEQUAL = "LESSEQUAL" # LESSEQual + LESSTHAN = "LESSTHAN" # LESSthan + LF = "LF" + LFREJ = "LFREJ" # LFRej + LIN = "LIN" + LINE = "LINE" + LINEAR = "LINEAR" + # LINEAR = "LINEAr" + # LINEAR = "LINear" + LJ = "LJ" + LOG = "LOG" + LOGARITHM = "LOGARITHM" + LOGIC = "LOGIC" # LOGIc + LOGICAL = "LOGICAL" # LOGical + LOGICSTATE = "LOGICSTATE" # LogicState + LONG = "LONG" + LONGEXTREGREAD = "LONGEXTREGREAD" # LONGEXTREGREAd + LONGEXTREGWRITE = "LONGEXTREGWRITE" # LONGEXTREGWRIte + LOW = "LOW" + LOWSPEED = "LOWSPEED" + LP = "LP" + LPASS = "LPASS" # LPASs + LPDDR3 = "LPDDR3" + LPDT = "LPDT" + LRD = "LRD" + LRW = "LRW" + LSB = "LSB" + LSLAVE = "LSLAVE" # LSLave + LTR = "LTR" + LWR = "LWR" + MACADDRESS = "MACADDRESS" # MACADDRess + MACLENGTH = "MACLENGTH" # MACLENgth + MAGNITUDE = "MAGNITUDE" + # MAGNITUDE = "MAGNitude" + MAILBOX = "MAILBOX" + # MAILBOX = "MAILbox" + MAILBOXHEADER = "MAILBOXHEADER" # MAILBOXHEADer + MANCHESTER = "MANCHESTER" # MANChester + MANUAL = "MANUAL" + # MANUAL = "MANual" + # MANUAL = "Manual" + MASTER = "MASTER" # MASTer + MASTERREAD = "MASTERREAD" # MASTERREAd + MASTERWRITE = "MASTERWRITE" # MASTERWRIte + MATCHROM = "MATCHROM" + MAXHOLD = "MAXHOLD" # MAXHold + MAXIMUM = "MAXIMUM" # MAXimum + MCTP = "MCTP" + MDATA = "MDATA" + MDATASPEED = "MDATASPEED" # MDATASpeed + MDIO = "MDIO" + MEAN = "MEAN" + MEANHISTOGRAM = "MEANHISTOGRAM" # MEANhistogram + MEASURED = "MEASURED" # MEASured + MEDIAN = "MEDIAN" # MEDian + MEDIUM = "MEDIUM" # MEDium + MEMRD32 = "MEMRD32" + MEMRD64 = "MEMRD64" + MEMRDWR32 = "MEMRDWR32" + MEMRDWR64 = "MEMRDWR64" + MEMWR32 = "MEMWR32" + MEMWR64 = "MEMWR64" + MESSAGE = "MESSAGE" # MESSage + MID = "MID" + MIL1553B = "MIL1553B" + MINHOLD = "MINHOLD" # MINHold + MINMAX = "MINMAX" # MINMax + MISO = "MISO" # MISo + MISODATA = "MISODATA" # MISOdata + MIXED = "MIXED" + # MIXED = "MIXed" + MIXEDASCII = "MIXEDASCII" + MIXEDHEX = "MIXEDHEX" + MODE = "MODE" + # MODE = "MODe" + MODEHISTOGRAM = "MODEHISTOGRAM" # MODEhistogram + MOREEQUA = "MOREEQUA" # MOREEQua + MOREEQUAL = "MOREEQUAL" # MOREEQual + MORETHAN = "MORETHAN" # MOREthan + MOSFET = "MOSFET" + MOSI = "MOSI" # MOSi + MOSIDATA = "MOSIDATA" # MOSIdata + MOVEABLE = "MOVEABLE" + MPAYLOAD = "MPAYLOAD" # MPAYload + MPULSE = "MPULSE" # MPULse + MSB = "MSB" + MSGWITHDATA = "MSGWITHDATA" # MSGWITHDATa + MULTIPLY = "MULTIPLY" # MULTiply + NACK = "NACK" + NAK = "NAK" + NAND = "NAND" # NANd + NATIVE = "NATIVE" # NATive + NEGATIVE = "NEGATIVE" # NEGAtive + # NEGATIVE = "NEGative" + NETMN = "NETMN" + NETWORK = "NETWORK" # Network + NETWORKVARIABLE = "NETWORKVARIABLE" # NETWORKVARiable + NETWORKVARIABLES = "NETWORKVARIABLES" # NETWORKVARiables + NIBBLE = "NIBBLE" # NIBBLe + NINE = "NINE" # NINe + NM = "NM" + NO = "NO" + NOCARE = "NOCARE" + NOISEREJ = "NOISEREJ" # NOISErej + NOMINAL = "NOMINAL" # NOMinal + NONFATAL = "NONFATAL" # NONFATal + NONTRANSITION = "NONTRANSITION" # NONTRANsition + NOP = "NOP" + NOPARITY = "NOPARITY" # NOPARity + NOR = "NOR" + NORESPONSE = "NORESPONSE" # NORESPonse + NORMAL = "NORMAL" # NORMal + # NORMAL = "NORmal" + NOSTATION = "NOSTATION" # NOSTATion + NOTE = "NOTE" + NOTEQUAL = "NOTEQUAL" # NOTEQual + NOTEQUALS = "NOTEQUALS" # NOTEQuals + NULL = "NULL" + # NULL = "NULl" + NULLFRDYNAMIC = "NULLFRDYNAMIC" # NULLFRDynamic + NULLFRSTATIC = "NULLFRSTATIC" # NULLFRStatic + NUMERICORDER = "NUMERICORDER" # NUMERICORDer + NVDATA = "NVDATA" # NVDATa + NVHEADER = "NVHEADER" # NVHEADer + NVLEN = "NVLEN" + NWVARIABLEDATA = "NWVARIABLEDATA" # NWVariabledata + NYET = "NYET" + OC1 = "OC1" + OC12 = "OC12" + OC3 = "OC3" + OC48 = "OC48" + OCCURS = "OCCURS" + ODD = "ODD" + OFF = "OFF" + OFFSET = "OFFSET" # OFFSet + ON = "ON" + ONE = "ONE" + ONEPAIRI = "ONEPAIRI" + ONEPAIRV = "ONEPAIRV" + ONEPAIRVI = "ONEPAIRVI" + OOBCHANNEL = "OOBCHANNEL" # OOBCHANnel + OOBSMBUS = "OOBSMBUS" + OPCODEERROR = "OPCODEERROR" # OPCODEERRor + OPPOSITEAS = "OPPOSITEAS" # OPPositeas + OPTIONAL = "OPTIONAL" # OPTional + OPTIONALPARAM = "OPTIONALPARAM" # OPTIONALPARam + OR = "OR" + OUT = "OUT" + OUTPUT = "OUTPUT" + OUTPWR = "OUTPWR" + OUTPWRSUM = "OUTPWRSUM" + OUTRANGE = "OUTRANGE" # OUTrange + OUTSIDE = "OUTSIDE" # OUTside + OUTSIDEGREATER = "OUTSIDEGREATER" # OUTSIDEGreater + OUTSIDERANGE = "OUTSIDERANGE" # OUTSIDErange + OVERDRIVE = "OVERDRIVE" # OVErdrive + OVERLAY = "OVERLAY" # OVErlay + OVERLOAD = "OVERLOAD" # OVERLoad + OZINCH = "OZINCH" + P1W2V1I1 = "P1W2V1I1" + P1W3V2I2 = "P1W3V2I2" + P3W3 = "P3W3" + P3W3V2I2 = "P3W3V2I2" + P3W3V3I3 = "P3W3V3I3" + P3W4 = "P3W4" + PACKET = "PACKET" + PACKETOFFDATA = "PACKETOFFDATA" # packetOffData + PACKETS = "PACKETS" # PACKets + PARALLEL = "PARALLEL" # PARallel + PARITY = "PARITY" # PARity + PARITYERROR = "PARITYERROR" # PARItyerror + PAUSE = "PAUSE" + PAYLOAD = "PAYLOAD" # PAYLoad + # PAYLOAD = "PAYload" + PCIEXPRESS = "PCIEXPRESS" # PCIExpress + PCIE_GEN1 = "PCIE_GEN1" + PCIE_GEN2 = "PCIE_GEN2" + PCIE_GEN3 = "PCIE_GEN3" + PDU = "PDU" + PEC = "PEC" + PERCENT = "PERCENT" # PERCent + PERICHANNEL = "PERICHANNEL" # PERICHANnel + PERSOURCE = "PERSOURCE" # PERSource + PFC = "PFC" + PHASE = "PHASE" + # PHASE = "PHASe" + PHASEONE = "PHASEONE" + PHASETHREE = "PHASETHREE" + PHASETWO = "PHASETWO" + PHYSICALADDRESS = "PHYSICALADDRESS" # PHYSICALADDRess + PID = "PID" + PING = "PING" + PIXELNUMBER = "PIXELNUMBER" # PIXELNUMBer + PIXELVALUE = "PIXELVALUE" # PIXELVALue + PIXMAP = "PIXMAP" # PIXmap + PLL = "PLL" + PNG = "PNG" + PNJUNCTION = "PNJUNCTION" + POLLINGLONG = "POLLINGLONG" + POLLINGNORMAL = "POLLINGNORMAL" # POLLINGNORMal + PORTCONFIGURATION = "PORTCONFIGURATION" # PORTConfiguration + PORTRESET = "PORTRESET" # PORTReset + POSITION = "POSITION" # POSition + POSITIVE = "POSITIVE" # POSITIVe + # POSITIVE = "POSitive" + POWLINEAR = "POWLINEAR" # POWLINear + POWLOG = "POWLOG" + PREAMBLE = "PREAMBLE" # PREamble + PRECISE = "PRECISE" + PRESENCE = "PRESENCE" # PREsence + PRIORITY = "PRIORITY" # PRIority + PROFILE = "PROFILE" # PROFile + PROTOCOL = "PROTOCOL" # PROTocol + PTYPE = "PTYPE" # PTYPe + PUBHEADER = "PUBHEADER" # PUBHEADer + PULSEWIDTH = "PULSEWIDTH" # PULSEWIDTh + # PULSEWIDTH = "PULSEWidth" + PUTFLASHC = "PUTFLASHC" + PUTIORDSHORT = "PUTIORDSHORT" # PUTIORDSHORt + PUTIOWRSHORT = "PUTIOWRSHORT" # PUTIOWRSHORt + PUTMEMRD32SHORT = "PUTMEMRD32SHORT" # PUTMEMRD32SHORt + PUTMEMWR32SHORT = "PUTMEMWR32SHORT" # PUTMEMWR32SHORt + PUTNP = "PUTNP" + PUTOOB = "PUTOOB" + PUTPC = "PUTPC" + PUTVWIRE = "PUTVWIRE" # PUTVWIRe + Q = "Q" + QEI = "QEI" + QTAG = "QTAG" + RADIANS = "RADIANS" + RAPDATA = "RAPDATA" # RAPDATa + RATED = "RATED" # RATed + RC = "RC" + RCHANNEL = "RCHANNEL" # RCHannel + RDATA = "RDATA" # RDATa + READ = "READ" + READROM = "READROM" + READY = "READY" # READy + REAL = "REAL" + RECORD = "RECORD" + RECORDLENGTH = "RECORDLENGTH" # RECORDLength + RECTANGLE = "RECTANGLE" + # RECTANGLE = "RECTangle" + RECTANGULAR = "RECTANGULAR" # RECTANGular + # RECTANGULAR = "RECTangular" + REG0WRITE = "REG0WRITE" # REG0WRIte + REGADDRTESTCONFG = "REGADDRTESTCONFG" # REGAddrtestconfg + REGADDRVENDOR = "REGADDRVENDOR" # REGAddrvendor + REGDATATESTCONFG = "REGDATATESTCONFG" # REGDatatestconfg + REGDATAVENDOR = "REGDATAVENDOR" # REGDatavendor + REGISTERADDRESS = "REGISTERADDRESS" # REGISTERADDRess + REGREAD = "REGREAD" # REGREAd + REGWRITE = "REGWRITE" # REGWRIte + REJ = "REJ" + REJECT = "REJECT" # REJect + REMOTE = "REMOTE" # REMote + REPEATERHOST = "REPEATERHOST" # REPEATERHOSt + REPEATERPERIPHERAL = "REPEATERPERIPHERAL" + REPEATING = "REPEATING" # REPeating + REPEATSTART = "REPEATSTART" # REPEATSTARt + # REPEATSTART = "REPEATStart" + # REPEATSTART = "REPEATstart" + REPWR = "REPWR" + REPWRSUM = "REPWRSUM" + REQDISCONNECT = "REQDISCONNECT" # REQDISConnect + REQSETINIT = "REQSETINIT" + RERUN = "RERUN" + RESERVED = "RESERVED" # RESERVed + # RESERVED = "RESERved" + # RESERVED = "REServed" + RESET = "RESET" + # RESET = "RESet" + RESETTRIGGER = "RESETTRIGGER" # RESETTRIGger + RESPONSE = "RESPONSE" + # RESPONSE = "RESPonse" + RESPONSECODE = "RESPONSECODE" # RESPONSECODe + RESPONSEHEADER = "RESPONSEHEADER" # RESPONSEHEADer + RESPONSENOHEADER = "RESPONSENOHEADER" # RESPONSENOHEADer + RESUME = "RESUME" + REVERSE = "REVERSE" # reverse + RFVSTIME = "RFVSTIME" # RFvsTime + RI = "RI" + RIBINARY = "RIBINARY" # RIBinary + RIGHT = "RIGHT" # RIGht + RIO125 = "RIO125" + RIO250 = "RIO250" + RIO3125 = "RIO3125" + RISE = "RISE" + # RISE = "RISe" + RISING = "RISING" + # RISING = "RISing" + RJ = "RJ" + RMS = "RMS" + RNR = "RNR" + RP = "RP" + RPBINARY = "RPBINARY" # RPBinary + RPM = "RPM" + RR = "RR" + RRC = "RRC" + RS232C = "RS232C" + RSTDYA = "RSTDYA" # RSTDya + RUN = "RUN" + RUNT = "RUNT" + # RUNT = "RUNt" + RX = "RX" + RXDATA = "RXDATA" # RXData + SAME = "SAME" + SAMEAS = "SAMEAS" # SAMEas + SAS12_NOSSC = "SAS12_NOSSC" + SAS12_SSC = "SAS12_SSC" + SAS15_NOSSC = "SAS15_NOSSC" + SAS15_SSC = "SAS15_SSC" + SAS3_NOSSC = "SAS3_NOSSC" + SAS3_SSC = "SAS3_SSC" + SAS6_NOSSC = "SAS6_NOSSC" + SAS6_SSC = "SAS6_SSC" + SATA_GEN1 = "SATA_GEN1" + SATA_GEN2 = "SATA_GEN2" + SATA_GEN3 = "SATA_GEN3" + SAVG = "SAVG" + SCIENTIFIC = "SCIENTIFIC" # SCIentific + SCRAMBLING = "SCRAMBLING" # SCRambling + SCREEN = "SCREEN" + # SCREEN = "SCReen" + SDATA = "SDATA" # SDATa + SDIDATA = "SDIDATA" + SDIDATASSM = "SDIDATASSM" + SDRBROADCAST = "SDRBROADCAST" # SDRBroadcast + SDRDIRECT = "SDRDIRECT" # SDRDirect + SEARCH1 = "SEARCH1" + SEARCHROM = "SEARCHROM" + SEARCHTOTRIGGER = "SEARCHTOTRIGGER" # SEARCHtotrigger + SEGMENTS = "SEGMENTS" # SEGments + SENSOR = "SENSOR" + SENSORADDRESS = "SENSORADDRESS" # SENSORADDRess + SENSORECU = "SENSORECU" + SENSORSTATUS = "SENSORSTATUS" # SENSORSTATus + SENT = "SENT" + SEQUENCE = "SEQUENCE" # SEQuence + SERVICEDATA = "SERVICEDATA" # SERVICEDATa + SERVICEMODE = "SERVICEMODE" # SERVICEMODe + SET = "SET" + SETBRT = "SETBRT" # SETBrt + SETCONFIG = "SETCONFIG" # SETCONFig + SETDECAY = "SETDECAY" # SETDecay + SETDYA = "SETDYA" # SETDya + SETEXT = "SETEXT" # SEText + SETFAST = "SETFAST" # SETFast + SETHOLD = "SETHOLD" # SETHold + SETMRDL = "SETMRDL" # SETMrdl + SETMWRL = "SETMWRL" # SETMwrl + SETNDYA = "SETNDYA" # SETNdya + SETPS = "SETPS" # SETPs + SETREGADDR = "SETREGADDR" # SETRegaddr + SETREGDATA = "SETREGDATA" # SETRegdata + SETSLOW = "SETSLOW" # SETSlow + SETUP = "SETUP" + SETWP = "SETWP" # SETWp + SEVEN = "SEVEN" # SEVEn + SFD = "SFD" + SFPBINARY = "SFPBINARY" # SFPbinary + SHORT = "SHORT" # SHORt + SHUTDOWN = "SHUTDOWN" # SHUTdown + SI = "SI" + SINGLE = "SINGLE" + # SINGLE = "SINGle" + SINX = "SINX" + SIX = "SIX" + SIXBIT = "SIXBIT" + SIXFIFTYHZ = "SIXFIFTYHZ" # SIXFIFTyhz + SIXTEENEIGHT = "SIXTEENEIGHT" # SIXTEENeight + SIXTYHZ = "SIXTYHZ" + # SIXTYHZ = "SIXTyhz" + SKIPROM = "SKIPROM" + SLAVE = "SLAVE" # SLAVe + SLAVEADDRESS = "SLAVEADDRESS" # SLAVEADDRess + SLEEP = "SLEEP" + # SLEEP = "SLEep" + SLOW = "SLOW" + SLOWERTHAN = "SLOWERTHAN" # SLOWERthan + SMPS = "SMPS" + SNAP = "SNAP" # SNAp + SNRM = "SNRM" + SNRME = "SNRME" + SOCKET = "SOCKET" # Socket + SOF = "SOF" + SOT = "SOT" + SOW = "SOW" + SPACE = "SPACE" # SPace + SPAYLOAD = "SPAYLOAD" # SPAYload + SPECIALPACKET = "SPECIALPACKET" # SPECIALPacket + SPECTRAL = "SPECTRAL" + SPECTRALBUJ = "SPECTRALBUJ" + SPI = "SPI" + SPLIT = "SPLIT" + # SPLIT = "SPLit" + SPMI = "SPMI" + SPULSE = "SPULSE" # SPULse + SRIBINARY = "SRIBINARY" # SRIbinary + SRPBINARY = "SRPBINARY" # SRPbinary + SS = "SS" + SSC = "SSC" + SSD = "SSD" + SSEQ = "SSEQ" + SSPLIT = "SSPLIT" + STACKED = "STACKED" # STAcked + STALL = "STALL" + STANDARD = "STANDARD" # STAndard + # STANDARD = "STandard" + START = "START" + # START = "STARt" + # START = "Start" + STARTBIT = "STARTBIT" + STARTCONDITION = "STARTCONDITION" # STARTCONDition + STARTOFFRAME = "STARTOFFRAME" # STARTofframe + STARTPACKET = "STARTPACKET" # STARTPACKet + STARTUP = "STARTUP" # STARTup + STARTUPNOSYNC = "STARTUPNOSYNC" # STARTupnosync + STATIC = "STATIC" + STATIONADDR = "STATIONADDR" # STATIONADDr + STATUS = "STATUS" # STATus + STAYSHIGH = "STAYSHIGH" # STAYSHigh + STAYSLOW = "STAYSLOW" # STAYSLow + STEPRESPONSE = "STEPRESPONSE" + STOP = "STOP" + # STOP = "STop" + # STOP = "Stop" + SUBTRACT = "SUBTRACT" # SUBtract + SUCCESSDATA = "SUCCESSDATA" # SUCCESSDATa + SUCCESSNODATA = "SUCCESSNODATA" # SUCCESSNODATa + SUPERVISORY = "SUPERVISORY" # SUPervisory + SUSPEND = "SUSPEND" + SV = "SV" + SVID = "SVID" + SWITCHING = "SWITCHING" + SYMB = "SYMB" + SYMBOL = "SYMBOL" # SYMBol + # SYMBOL = "Symbol" + SYMBOLS = "SYMBOLS" # SYMbols + SYNC = "SYNC" + SYNCBITS = "SYNCBITS" + SYNCFIELD = "SYNCFIELD" # SYNCfield + SYNCFRAME = "SYNCFRAME" # SYNCFrame + TBIT = "TBIT" + TCI = "TCI" + TCPHEADER = "TCPHEADER" # TCPHeader + TDATA = "TDATA" # TDATa + TDM = "TDM" + TDMCHANNEL = "TDMCHANNEL" # TDMChannel + TEKEXPONENTIAL = "TEKEXPONENTIAL" # TEKEXPonential + TENBASET = "TENBASET" + TENNINETY = "TENNINETY" # TENNinety + TEST = "TEST" + TESTMODE = "TESTMODE" # TESTmode + THREE = "THREE" + # THREE = "THRee" + THREEPHASEAUTOSET = "THREEPHASEAUTOSET" # THREEPHASEAUTOset + THREESIXTYHZ = "THREESIXTYHZ" # THREESIXTyhz + TIMECODE = "TIMECODE" # TIMECODe + TIMEOUT = "TIMEOUT" # TIMEOut + TOKENPACKET = "TOKENPACKET" # TOKENPacket + TOLERANCES = "TOLERANCES" # TOLerances + TOOTHGAP = "TOOTHGAP" + TOTALEFFICIENCY = "TOTALEFFICIENCY" # TOTALEFFiciency + TRACK = "TRACK" + TRAILER = "TRAILER" # TRAiler + TRANSFERBUSOWNERSHIP = "TRANSFERBUSOWNERSHIP" # TRANSferbusownership + TRANSITION = "TRANSITION" # TRANSition + # TRANSITION = "TRANsition" + TRAPEZOID = "TRAPEZOID" # TRAPezoid + TRIANGLE = "TRIANGLE" # TRIAngle + TRIGGER = "TRIGGER" # TRIGger + TRIGGERTOSEARCH = "TRIGGERTOSEARCH" # TRIGgertosearch + TRPWR = "TRPWR" + TRPWRSUM = "TRPWRSUM" + TRUE = "TRUE" # TRUe + # TRUE = "True" + # TRUE = "true" + TWELVETWELVE = "TWELVETWELVE" # TWELVEtwelve + TWENTYBIT = "TWENTYBIT" + TWENTYEIGHTY = "TWENTYEIGHTY" # TWENtyeighty + TWENTYFIVE = "TWENTYFIVE" # TWENtyfive + TWO = "TWO" + TWOBIT = "TWOBIT" + TWOCLOCKCYCLES = "TWOCLOCKCYCLES" + TWOFIFTY = "TWOFIFTY" # TWOFifty + TWOTHOUSAND = "TWOTHOUSAND" # TWOThousand + TX = "TX" + TXDATA = "TXDATA" # TXData + TXRX = "TXRX" + TYPE = "TYPE" # TYPe + UACK = "UACK" + UDIDDATA = "UDIDDATA" # UDIDDATa + UDPIP = "UDPIP" + UDPIPHEADER = "UDPIPHEADER" # UDPIPHEADer + UI = "UI" + ULPS = "ULPS" + UNEQUAL = "UNEQUAL" # UNEQual + UNIQUE = "UNIQUE" # UNIQue + UNLOCKED = "UNLOCKED" # UNLocked + UNNUMBERED = "UNNUMBERED" # UNNumbered + UNSUCCESSNODATA = "UNSUCCESSNODATA" # UNSUCCESSNODATa + UP = "UP" + USB = "USB" + USB3 = "USB3" + V1X = "V1X" + V2X = "V2X" + VBARS = "VBARS" # VBArs + VCE = "VCE" + VDS = "VDS" + VECTOR = "VECTOR" # VECtor + VECTORS = "VECTORS" # VECtors + VERTICAL = "VERTICAL" # VERTical + VGE = "VGE" + VISA = "VISA" # Visa + VOLTAGE = "VOLTAGE" + # VOLTAGE = "VOLTage" + VRMS = "VRMS" + VWCHANNEL = "VWCHANNEL" # VWCHANnel + WAIT = "WAIT" + WAKEUP = "WAKEUP" # WAKEup + # WAKEUP = "WAKeup" + WAVEFORM = "WAVEFORM" + # WAVEFORM = "WAVEform" + WBGPRESET = "WBGPRESET" # WBGPREset + WIDTH = "WIDTH" # WIDth + WINDOW = "WINDOW" # WINdow + WITHIN = "WITHIN" # WIThin + WKC = "WKC" + WORD = "WORD" + # WORD = "Word" + WRITE = "WRITE" + # WRITE = "WRITe" + X = "X" + XAUI = "XAUI" + XAUI_GEN2 = "XAUI_GEN2" + XFF = "XFF" + XID = "XID" + XN = "XN" + XYZY = "XYZY" + XZYZ = "XZYZ" + YES = "YES" + YN = "YN" + YXZX = "YXZX" + ZERO = "ZERO" # ZERo + ZN = "ZN" + + +# pylint: disable=too-many-instance-attributes,too-many-public-methods +class TekScopePCCommands: + """The TekScopePC commands. + + This provides access to all the commands for the TekScopePC device. See the documentation of + each property for more usage information. + + Properties: + - ``.actonevent``: The ``ACTONEVent`` command tree. + - ``.alias``: The ``ALIas`` command. + - ``.allev``: The ``ALLEv`` command. + - ``.autosavepitimeout``: The ``AUTOSAVEPITIMEOUT`` command. + - ``.autosaveuitimeout``: The ``AUTOSAVEUITIMEOUT`` command. + - ``.bus``: The ``BUS`` command tree. + - ``.bustable``: The ``BUSTABle`` command tree. + - ``.busy``: The ``BUSY`` command. + - ``.callouts``: The ``CALLOUTS`` command tree. + - ``.ch``: The ``CH`` command. + - ``.cls``: The ``*CLS`` command. + - ``.configuration``: The ``CONFIGuration`` command tree. + - ``.curve``: The ``CURVe`` command. + - ``.curvestream``: The ``CURVEStream`` command. + - ``.customtable``: The ``CUSTOMTABle`` command tree. + - ``.data``: The ``DATa`` command. + - ``.date``: The ``DATE`` command. + - ``.dese``: The ``DESE`` command. + - ``.display``: The ``DISplay`` command. + - ``.ese``: The ``*ESE`` command. + - ``.esr``: The ``*ESR`` command. + - ``.event``: The ``EVENT`` command. + - ``.evmsg``: The ``EVMsg`` command. + - ``.evqty``: The ``EVQty`` command. + - ``.eyemask``: The ``EYEMASK`` command tree. + - ``.factory``: The ``FACtory`` command. + - ``.filesys``: The ``FILESYS`` command tree. + - ``.filesystem``: The ``FILESystem`` command. + - ``.header``: The ``HEADer`` command. + - ``.histogram``: The ``HISTogram`` command tree. + - ``.horizontal``: The ``HORizontal`` command tree. + - ``.id``: The ``ID`` command. + - ``.idn``: The ``*IDN`` command. + - ``.lic``: The ``LIC`` command tree. + - ``.license``: The ``LICense`` command. + - ``.lrn``: The ``*LRN`` command. + - ``.mainwindow``: The ``MAINWindow`` command tree. + - ``.mask``: The ``MASK`` command tree. + - ``.math``: The ``MATH`` command tree. + - ``.matharbflt``: The ``MATHArbflt`` command tree. + - ``.meastable``: The ``MEASTABle`` command tree. + - ``.measu``: The ``MEASU`` command tree. + - ``.measurement``: The ``MEASUrement`` command. + - ``.opc``: The ``*OPC`` command. + - ``.opt``: The ``*OPT`` command. + - ``.pause``: The ``PAUSe`` command. + - ``.peakstable``: The ``PEAKSTABle`` command tree. + - ``.plot``: The ``PLOT`` command tree. + - ``.power``: The ``POWer`` command tree. + - ``.psc``: The ``*PSC`` command. + - ``.pud``: The ``*PUD`` command. + - ``.recall``: The ``RECAll`` command tree. + - ``.ref``: The ``REF`` command tree. + - ``.refx``: The ``REF`` command tree. + - ``.rem``: The ``REM`` command. + - ``.remote``: The ``REMOTE`` command tree. + - ``.rst``: The ``*RST`` command. + - ``.s``: The ``S`` command tree. + - ``.save``: The ``SAVe`` command tree. + - ``.saveonevent``: The ``SAVEONEVent`` command tree. + - ``.search``: The ``SEARCH`` command tree. + - ``.searchtable``: The ``SEARCHTABle`` command. + - ``.set``: The ``SET`` command. + - ``.socketserver``: The ``SOCKETServer`` command tree. + - ``.sre``: The ``*SRE`` command. + - ``.stb``: The ``*STB`` command. + - ``.sv``: The ``SV`` command tree. + - ``.time``: The ``TIMe`` command. + - ``.totaluptime``: The ``TOTaluptime`` command. + - ``.trigger``: The ``TRIGger`` command tree. + - ``.tst``: The ``*TST`` command. + - ``.undo``: The ``UNDO`` command. + - ``.verbose``: The ``VERBose`` command. + - ``.vertical``: The ``VERTical`` command tree. + - ``.visual``: The ``VISual`` command tree. + - ``.wai``: The ``*WAI`` command. + - ``.wavfrm``: The ``WAVFrm`` command. + - ``.wfmoutpre``: The ``WFMOutpre`` command. + """ + + # pylint: disable=too-many-statements + def __init__(self, device: Optional[PIDevice] = None) -> None: # noqa: PLR0915 + self._actonevent = Actonevent(device) + self._alias = Alias(device) + self._allev = Allev(device) + self._autosavepitimeout = Autosavepitimeout(device) + self._autosaveuitimeout = Autosaveuitimeout(device) + self._bus = Bus(device) + self._bustable = Bustable(device) + self._busy = Busy(device) + self._callouts = Callouts(device) + self._ch: Dict[int, Channel] = DefaultDictPassKeyToFactory( + lambda x: Channel(device, f"CH{x}") + ) + self._cls = Cls(device) + self._configuration = Configuration(device) + self._curve = Curve(device) + self._curvestream = Curvestream(device) + self._customtable = Customtable(device) + self._data = Data(device) + self._date = Date(device) + self._dese = Dese(device) + self._display = Display(device) + self._ese = Ese(device) + self._esr = Esr(device) + self._event = Event(device) + self._evmsg = Evmsg(device) + self._evqty = Evqty(device) + self._eyemask = Eyemask(device) + self._factory = Factory(device) + self._filesys = Filesys(device) + self._filesystem = Filesystem(device) + self._header = Header(device) + self._histogram = Histogram(device) + self._horizontal = Horizontal(device) + self._id = Id(device) + self._idn = Idn(device) + self._lic = Lic(device) + self._license = License(device) + self._lrn = Lrn(device) + self._mainwindow = Mainwindow(device) + self._mask = Mask(device) + self._math = Math(device) + self._matharbflt: Dict[int, MatharbfltItem] = DefaultDictPassKeyToFactory( + lambda x: MatharbfltItem(device, f"MATHArbflt{x}") + ) + self._meastable = Meastable(device) + self._measu = Measu(device) + self._measurement = Measurement(device) + self._opc = Opc(device) + self._opt = Opt(device) + self._pause = Pause(device) + self._peakstable = Peakstable(device) + self._plot = Plot(device) + self._power = Power(device) + self._psc = Psc(device) + self._pud = Pud(device) + self._recall = Recall(device) + self._ref = Ref(device) + self._refx: Dict[int, RefItem] = DefaultDictPassKeyToFactory( + lambda x: RefItem(device, f"REF{x}") + ) + self._rem = Rem(device) + self._remote = Remote(device) + self._rst = Rst(device) + self._s: Dict[int, SItem] = DefaultDictPassKeyToFactory(lambda x: SItem(device, f"S{x}")) + self._save = Save(device) + self._saveonevent = Saveonevent(device) + self._search = Search(device) + self._searchtable = Searchtable(device) + self._set = Set(device) + self._socketserver = Socketserver(device) + self._sre = Sre(device) + self._stb = Stb(device) + self._sv = Sv(device) + self._time = Time(device) + self._totaluptime = Totaluptime(device) + self._trigger = Trigger(device) + self._tst = Tst(device) + self._undo = Undo(device) + self._verbose = Verbose(device) + self._vertical = Vertical(device) + self._visual = Visual(device) + self._wai = Wai(device) + self._wavfrm = Wavfrm(device) + self._wfmoutpre = Wfmoutpre(device) + + @property + def actonevent(self) -> Actonevent: + """Return the ``ACTONEVent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``ACTONEVent?`` query. + - Using the ``.verify(value)`` method will send the ``ACTONEVent?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.enable``: The ``ACTONEVent:ENable`` command. + - ``.numsaves``: The ``ACTONEVent:NUMSAVEs`` command. + - ``.timer``: The ``ACTONEVent:TIMER`` command tree. + - ``.timercount``: The ``ACTONEVent:TIMERCount`` command. + - ``.timerinterval``: The ``ACTONEVent:TIMERInterval`` command. + - ``.type``: The ``ACTONEVent:Type`` command. + """ + return self._actonevent + + @property + def alias(self) -> Alias: + """Return the ``ALIas`` command. + + Description: + - This command sets or queries the state of alias functionality, and it is identical to + the ``ALIAS:STATE`` command. + + Usage: + - Using the ``.query()`` method will send the ``ALIas?`` query. + - Using the ``.verify(value)`` method will send the ``ALIas?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``ALIas value`` command. + + SCPI Syntax: + ``` + - ALIas {ON|OFF|} + - ALIas? + ``` + + Info: + - ``OFF`` turns Alias expansion off. + - ``ON`` turns Alias expansion on. When a defined alias is received, the specified + command sequence is substituted for the alias and executed. + - ```` = 0 disables Alias mode; any other value enables Alias mode. + + Sub-properties: + - ``.catalog``: The ``ALIas:CATalog`` command. + - ``.define``: The ``ALIas:DEFine`` command. + - ``.delete``: The ``ALIas:DELEte`` command. + - ``.state``: The ``ALIas:STATE`` command. + """ + return self._alias + + @property + def allev(self) -> Allev: + """Return the ``ALLEv`` command. + + Description: + - This query-only command prompts the instrument to return all events and their messages + (delimited by commas), and removes the returned events from the Event Queue. Use the + ``*ESR?`` query to enable the events to be returned. This command is similar to + repeatedly sending ``*EVMsg?`` queries to the instrument. + + Usage: + - Using the ``.query()`` method will send the ``ALLEv?`` query. + - Using the ``.verify(value)`` method will send the ``ALLEv?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - ALLEv? + ``` + """ + return self._allev + + @property + def autosavepitimeout(self) -> Autosavepitimeout: + """Return the ``AUTOSAVEPITIMEOUT`` command. + + Description: + - This command sets or queries the idle time from the programmable interface before + auto-save occurs. + + Usage: + - Using the ``.query()`` method will send the ``AUTOSAVEPITIMEOUT?`` query. + - Using the ``.verify(value)`` method will send the ``AUTOSAVEPITIMEOUT?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``AUTOSAVEPITIMEOUT value`` command. + + SCPI Syntax: + ``` + - AUTOSAVEPITIMEOUT + - AUTOSAVEPITIMEOUT? + ``` + + Info: + - ```` + """ + return self._autosavepitimeout + + @property + def autosaveuitimeout(self) -> Autosaveuitimeout: + """Return the ``AUTOSAVEUITIMEOUT`` command. + + Description: + - This command sets or queries the idle time from the user interface before auto-save + occurs. + + Usage: + - Using the ``.query()`` method will send the ``AUTOSAVEUITIMEOUT?`` query. + - Using the ``.verify(value)`` method will send the ``AUTOSAVEUITIMEOUT?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``AUTOSAVEUITIMEOUT value`` command. + + SCPI Syntax: + ``` + - AUTOSAVEUITIMEOUT + - AUTOSAVEUITIMEOUT? + ``` + + Info: + - ```` + """ + return self._autosaveuitimeout + + @property + def bus(self) -> Bus: + """Return the ``BUS`` command tree. + + 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``. + + Sub-properties: + - ``.addnew``: The ``BUS:ADDNew`` command. + - ``.b``: The ``BUS:B`` command tree. + - ``.delete``: The ``BUS:DELete`` command. + - ``.list``: The ``BUS:LIST`` command. + """ + return self._bus + + @property + def bustable(self) -> Bustable: + """Return the ``BUSTABle`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUSTABle?`` query. + - Using the ``.verify(value)`` method will send the ``BUSTABle?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.addnew``: The ``BUSTABle:ADDNew`` command. + - ``.delete``: The ``BUSTABle:DELete`` command. + - ``.list``: The ``BUSTABle:LIST`` command. + """ + return self._bustable + + @property + def busy(self) -> Busy: + """Return the ``BUSY`` command. + + Description: + - This query-only command returns the status of the instrument. This command allows you + to synchronize the operation of the instrument with your application program. + + Usage: + - Using the ``.query()`` method will send the ``BUSY?`` query. + - Using the ``.verify(value)`` method will send the ``BUSY?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - BUSY? + ``` + """ + return self._busy + + @property + def callouts(self) -> Callouts: + """Return the ``CALLOUTS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CALLOUTS?`` query. + - Using the ``.verify(value)`` method will send the ``CALLOUTS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.callout``: The ``CALLOUTS:CALLOUT`` command. + """ + return self._callouts + + @property + def ch(self) -> Dict[int, Channel]: + """Return the ``CH`` command. + + Description: + - This query-only command returns the vertical parameters for the specified channel. The + channel is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``CH?`` query. + - Using the ``.verify(value)`` method will send the ``CH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CH? + ``` + + Sub-properties: + - ``.bandwidth``: The ``CH:BANdwidth`` command. + - ``.ditherrange``: The ``CH:DITHERrange`` command. + - ``.invert``: The ``CH:INVert`` command. + - ``.probecontrol``: The ``CH:PROBECOntrol`` command. + - ``.probecal``: The ``CH:PROBECal`` command. + - ``.probefunc``: The ``CH:PROBEFunc`` command tree. + - ``.probe``: The ``CH:PRObe`` command. + - ``.scaleratio``: The ``CH:SCALERATio`` command. + - ``.sv``: The ``CH:SV`` command tree. + - ``.termination``: The ``CH:TERmination`` command. + - ``.vterm``: The ``CH:VTERm`` command tree. + - ``.d``: The ``CH_D`` command tree. + - ``.dall``: The ``CH_DALL`` command tree. + """ + return self._ch + + @property + def cls(self) -> Cls: + """Return the ``*CLS`` command. + + Description: + - This command (no query form) clears the following: Event Queue Standard Event Status + Register Status Byte Register (except the MAV bit) If the ``*CLS`` command immediately + follows an , the Output Queue and MAV bit (Status Byte Register bit 4) are also + cleared. MAV indicates that information is in the output queue. The device clear (DCL) + control message will clear the output queue and thus MAV. ``*CLS`` does not clear the + output queue or MAV. ``*CLS`` can suppress a Service Request that is to be generated + by an ``*OPC``. This will happen if a single sequence acquisition operation is still + being processed when the ``*CLS`` command is executed. + + Usage: + - Using the ``.write()`` method will send the ``*CLS`` command. + + SCPI Syntax: + ``` + - *CLS + ``` + """ + return self._cls + + @property + def configuration(self) -> Configuration: + """Return the ``CONFIGuration`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CONFIGuration?`` query. + - Using the ``.verify(value)`` method will send the ``CONFIGuration?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.analog``: The ``CONFIGuration:ANALOg`` command tree. + """ + return self._configuration + + @property + def curve(self) -> Curve: + """Return the ``CURVe`` command. + + Description: + - This command transfers waveform data from the instrument. Each waveform that is + transferred has an associated waveform preamble that contains information such as data + format and scale. The ``CURVe?`` query transfers data from the instrument. The data + source is specified by the ``DATA:SOURCE`` command. The first and last data points are + specified by the ``DATA:START`` and ``DATA:STOP`` commands. For digital sources, + ``CH_D`` or CH _DALL, when the ``:DATa:WIDth`` is 1, the returned data is + state only. When the ``:DATa:WIDth`` is 2, the returned data is transition data with 2 + bits per digital channel representing the transition information as follows: 0 0 low 0 + 1 high 1 1 multiple transitions in interval ending with high 1 0 multiple transitions + in interval ending with low For individual digital channels (such as ``CH_D`` ), + ``:DATa:WIDth 2`` provides the 2-bit transition data with the upper 14 bits zero. + ``:DATa:WIDth 1`` provides only the state in the LSB with the upper 7 bits all zero. + For ``CH_DAll`` sources, ``:DATa:WIDth 2`` provides the 2-bit transition data for + each of the 8 constituent channels with the D7 bit represented in the 2 most + significant bits, D6 in the next 2, and so on. ``:DATa:WIDth 1`` provides the states + of each of the 8 constituent channels with D7 represented in the most significant bit + and D0 in the least significant bit. Depending on the sample rate, multi-transition + data may not be available and ``:CURVe?`` queries for digital channels with + ``:DATa:WIDth 2`` may result in a warning event 'Execution warning: Multi-transition + data not available'. In this case, the transition data returned will be 0 0 or 0 1. + For MATH sources, only 8-byte double precision floating point data is returned in + ``:CURVe?`` queries. A Fast Acquisition waveform Pixmap data is a 500 (vertical) by + 1000 (horizontal) point bitmap. Each point represents display intensity for that + screen location. 500 (vertical) which is the row count in the bitmap, might vary based + on how many channels enabled from same FastAcq group. To query and get the Fast Acq + Pixel Map data, the following command set should be sent: ``ACQuire:FASTAcq:STATE ON`` + ``DATA:MODe PIXmap`` When the FastAcq is on, Curve? on Ch will return pixmap data + (if ``DATA:MODe`` is PIXmap). The number of rows in the pixmap will vary based on how + many ch sources are turned on and how they are grouped in acquisition HW. The + grouping can vary from model to model. The number of columns in pixmap data is fixed + to 1000. For example, on a MSO58 instrument, Ch1 to Ch4 is 'group1' and Ch5 to Ch8 is + 'group2'. If Ch1 is turned on (in group1) then Ch1 rows will be 500. If Ch2 and Ch3 + are turned on (in group1) then Ch2 and Ch3 rows will be 250 each. When all Ch1/2/3/4 + are turned on (in group1) then 125 rows per channel. If Ch1 (in group1) and Ch8 (in + group2) are turned on then 500 rows will be returned for each channel. To calculate + the number of rows, you can use- (number of bytes from curve header/``BYT_NR``)/1000. + + Usage: + - Using the ``.query()`` method will send the ``CURVe?`` query. + - Using the ``.verify(value)`` method will send the ``CURVe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CURVe? + ``` + """ + return self._curve + + @property + def curvestream(self) -> Curvestream: + """Return the ``CURVEStream`` command. + + Description: + - This query-only command continuously transfers waveform data from the instrument as it + is acquired. This command puts the instrument into a streaming data mode, allowing the + controller to receive waveform records as fast as they are acquired. Use the + ``DATA:SOURCE`` command to specify the waveform sources. The command supports all the + same data formatting options as the CURVE command. Control of the instrument through + the user interface or other external clients is not allowed while in streaming data + mode. The GPIB controller must take the instrument out of this streaming data mode to + terminate the query and allow other input sources to resume communication with the + instrument. The following options are available to transition out of streaming data + mode: Send a device clear over the bus Send another command or query to the instrument + Turning the waveform screen display mode off ( ``:DISplay:WAVEform OFF`` ) may + increase waveform throughput during streaming mode. Using a data encoding of SRIbinary + ( ``DATa:ENCdg SRIbinary`` ) may also increase the waveform throughput since that is + the raw native data format of the oscilloscope. While in streaming data mode, two + extreme conditions can occur. If the waveform records are being acquired slowly (high + resolution), configure the controller for a long time-out threshold, as the data is + not sent out until each complete record is acquired. If the waveform records are being + acquired rapidly (low resolution), and the controller is not reading the data off the + bus fast enough, the trigger rate is slowed to allow each waveform to be sent + sequentially. + + Usage: + - Using the ``.query()`` method will send the ``CURVEStream?`` query. + - Using the ``.verify(value)`` method will send the ``CURVEStream?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - CURVEStream? + ``` + """ + return self._curvestream + + @property + def customtable(self) -> Customtable: + """Return the ``CUSTOMTABle`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``CUSTOMTABle?`` query. + - Using the ``.verify(value)`` method will send the ``CUSTOMTABle?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.addnew``: The ``CUSTOMTABle:ADDNew`` command. + - ``.delete``: The ``CUSTOMTABle:DELete`` command. + - ``.list``: The ``CUSTOMTABle:LIST`` command. + """ + return self._customtable + + @property + def data(self) -> Data: + """Return the ``DATa`` command. + + Description: + - This command sets or queries the format and location of the waveform data that is + transferred with the CURVE command. + + Usage: + - Using the ``.query()`` method will send the ``DATa?`` query. + - Using the ``.verify(value)`` method will send the ``DATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DATa value`` command. + + SCPI Syntax: + ``` + - DATa {INIT|SNAp} + - DATa? + ``` + + Info: + - ``INIT`` initializes the waveform data parameters to their factory defaults except for + ``DATa:STOP``, which isset to the current acquisition record length. + - ``SNAp`` Sets ``DATa:STARt`` and ``DATa:STOP`` to match the current waveform cursor + positions of WAVEVIEW1 CURSOR1 if these waveform cursors are currently on. If these + waveform cursors are not on when the ``DATa SNAp`` command is sent, it is silently + ignored and ``DATa:STARt`` and ``:STOP`` remain unchanged. + + Sub-properties: + - ``.encdg``: The ``DATa:ENCdg`` command. + - ``.framestart``: The ``DATa:FRAMESTARt`` command. + - ``.framestop``: The ``DATa:FRAMESTOP`` command. + - ``.mode``: The ``DATa:MODe`` command. + - ``.resample``: The ``DATa:RESample`` command. + - ``.source``: The ``DATa:SOUrce`` command. + - ``.start``: The ``DATa:STARt`` command. + - ``.stop``: The ``DATa:STOP`` command. + - ``.width``: The ``DATa:WIDth`` command. + """ + return self._data + + @property + def date(self) -> Date: + """Return the ``DATE`` command. + + Description: + - This command queries the date that the instrument displays. + + Usage: + - Using the ``.query()`` method will send the ``DATE?`` query. + - Using the ``.verify(value)`` method will send the ``DATE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DATE? + ``` + """ + return self._date + + @property + def dese(self) -> Dese: + """Return the ``DESE`` command. + + Description: + - This command sets and queries the bits in the Device Event Status Enable Register + (DESER). The DESER is the mask that determines whether events are reported to the + Standard Event Status Register (SESR), and entered into the Event Queue. For a more + detailed discussion of the use of these registers, see Registers. + + Usage: + - Using the ``.query()`` method will send the ``DESE?`` query. + - Using the ``.verify(value)`` method will send the ``DESE?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``DESE value`` command. + + SCPI Syntax: + ``` + - DESE + - DESE? + ``` + + Info: + - ```` The binary bits of the DESER are set according to this value, which ranges + from 1 through 255. For example, ``DESE 209`` sets the DESER to the binary value + 11010001 (that is, the most significant bit in the register is set to 1, the next most + significant bit to 1, the next bit to 0, etc.). + """ + return self._dese + + @property + def display(self) -> Display: + """Return the ``DISplay`` command. + + Description: + - This query-only command returns the current Display settings. + + Usage: + - Using the ``.query()`` method will send the ``DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``DISplay?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - DISplay? + ``` + + Sub-properties: + - ``.colors``: The ``DISplay:COLors`` command. + - ``.global``: The ``DISplay:GLObal`` command tree. + - ``.intensity``: The ``DISplay:INTENSITy`` command. + - ``.mathfftview1``: The ``DISplay:MATHFFTView1`` command tree. + - ``.persistence``: The ``DISplay:PERSistence`` command. + - ``.plotview``: The ``DISplay:PLOTVIEW`` command tree. + - ``.plotview1``: The ``DISplay:PLOTView1`` command tree. + - ``.reffftview``: The ``DISplay:REFFFTView`` command tree. + - ``.select``: The ``DISplay:SELect`` command tree. + - ``.specview1``: The ``DISplay:SPECView1`` command tree. + - ``.varpersist``: The ``DISplay:VARpersist`` command. + - ``.waveview``: The ``DISplay:WAVEView`` command tree. + - ``.waveview1``: The ``DISplay:WAVEView1`` command tree. + - ``.waveform``: The ``DISplay:WAVEform`` command. + - ``.ch``: The ``DISplay:CH`` command tree. + - ``.math``: The ``DISplay:Math`` command tree. + - ``.ref``: The ``DISplay:REF`` command tree. + """ + return self._display + + @property + def ese(self) -> Ese: + """Return the ``*ESE`` command. + + Description: + - This command sets and queries the bits in the Event Status Enable Register (ESER). The + ESER prevents events from being reported to the Status Byte Register (STB). For a more + detailed discussion of the use of these registers, see Registers. + + Usage: + - Using the ``.query()`` method will send the ``*ESE?`` query. + - Using the ``.verify(value)`` method will send the ``*ESE?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``*ESE value`` command. + + SCPI Syntax: + ``` + - *ESE + - *ESE? + ``` + + Info: + - ```` specifies the binary bits of the ESER according to this value, which ranges + from 0 through 255. + """ + return self._ese + + @property + def esr(self) -> Esr: + """Return the ``*ESR`` command. + + Description: + - This query-only command returns the contents of the Standard Event Status Register + (SESR). ``*ESR?`` also clears the SESR (since reading the SESR clears it). For a more + detailed discussion of the use of these registers, see Registers. + + Usage: + - Using the ``.query()`` method will send the ``*ESR?`` query. + - Using the ``.verify(value)`` method will send the ``*ESR?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - *ESR? + ``` + """ + return self._esr + + @property + def event(self) -> Event: + """Return the ``EVENT`` command. + + Description: + - This query-only command returns an event code from the Event Queue that provides + information about the results of the last ESR read. ``EVENT?`` also removes the + returned value from the Event Queue. + + Usage: + - Using the ``.query()`` method will send the ``EVENT?`` query. + - Using the ``.verify(value)`` method will send the ``EVENT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - EVENT? + ``` + """ + return self._event + + @property + def evmsg(self) -> Evmsg: + """Return the ``EVMsg`` command. + + Description: + - This query-only command removes a single event code from the Event Queue that is + associated with the results of the last ESR read and returns the event code with an + explanatory message. For more information, see Event Handling. + + Usage: + - Using the ``.query()`` method will send the ``EVMsg?`` query. + - Using the ``.verify(value)`` method will send the ``EVMsg?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - EVMsg? + ``` + """ + return self._evmsg + + @property + def evqty(self) -> Evqty: + """Return the ``EVQty`` command. + + Description: + - This query-only command returns the number of events that are enabled in the queue. + This is useful when using the ALLEV query, since it lets you know exactly how many + events will be returned. + + Usage: + - Using the ``.query()`` method will send the ``EVQty?`` query. + - Using the ``.verify(value)`` method will send the ``EVQty?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - EVQty? + ``` + """ + return self._evqty + + @property + def eyemask(self) -> Eyemask: + """Return the ``EYEMASK`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``EYEMASK?`` query. + - Using the ``.verify(value)`` method will send the ``EYEMASK?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.mask``: The ``EYEMASK:MASK`` command tree. + """ + return self._eyemask + + @property + def factory(self) -> Factory: + """Return the ``FACtory`` command. + + Description: + - This command (no query form) resets the instrument to its factory default settings. + This command is equivalent to pressing the DEFAULT SETUP button located on the + instrument front panel or selecting Default Setup from the File menu. This command + Performs the following in addition to what is done for the ``*RST`` command: Clears + any pending OPC operations. Resets the following IEEE488.2 registers: ``*ESE 0`` + (Event Status Enable Register) ``*SRE 0`` (Service Request Enable Register) DESE 255 + (Device Event Status Enable Register) ``*PSC 1`` (Power-on Status Clear Flag) Deletes + all defined aliases. Enables command headers (``:HEADer 1``). + + Usage: + - Using the ``.write()`` method will send the ``FACtory`` command. + + SCPI Syntax: + ``` + - FACtory + ``` + """ + return self._factory + + @property + def filesys(self) -> Filesys: + """Return the ``FILESYS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``FILESYS?`` query. + - Using the ``.verify(value)`` method will send the ``FILESYS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.collectlogfiles``: The ``FILESYS:COLLECTLOGFILES`` command. + """ + return self._filesys + + @property + def filesystem(self) -> Filesystem: + """Return the ``FILESystem`` command. + + Description: + - This query-only command returns the directory listing of the current working + directory. This query is the same as the ``FILESystem:DIR?`` query. + + Usage: + - Using the ``.query()`` method will send the ``FILESystem?`` query. + - Using the ``.verify(value)`` method will send the ``FILESystem?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - FILESystem? + ``` + + Sub-properties: + - ``.copy``: The ``FILESystem:COPy`` command. + - ``.cwd``: The ``FILESystem:CWD`` command. + - ``.delete``: The ``FILESystem:DELEte`` command. + - ``.dir``: The ``FILESystem:DIR`` command. + - ``.homedir``: The ``FILESystem:HOMEDir`` command. + - ``.ldir``: The ``FILESystem:LDIR`` command. + - ``.mkdir``: The ``FILESystem:MKDir`` command. + - ``.mount``: The ``FILESystem:MOUNT`` command tree. + - ``.readfile``: The ``FILESystem:READFile`` command. + - ``.rename``: The ``FILESystem:REName`` command. + - ``.rmdir``: The ``FILESystem:RMDir`` command. + - ``.tekdrive``: The ``FILESystem:TEKDrive`` command tree. + - ``.unmount``: The ``FILESystem:UNMOUNT`` command tree. + - ``.writefile``: The ``FILESystem:WRITEFile`` command. + """ + return self._filesystem + + @property + 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``. + + 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: + - ```` = 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 + include headers on applicable query responses. You can then use the query response as + a command. + """ + return self._header + + @property + def histogram(self) -> Histogram: + """Return the ``HISTogram`` command tree. + + 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``. + + Sub-properties: + - ``.addnew``: The ``HISTogram:ADDNew`` command. + - ``.deleteall``: The ``HISTogram:DELETEALL`` command. + - ``.delete``: The ``HISTogram:DELete`` command. + - ``.histogram``: The ``HISTogram:HISTogram`` command tree. + - ``.list``: The ``HISTogram:LIST`` command. + """ + return self._histogram + + @property + def horizontal(self) -> Horizontal: + """Return the ``HORizontal`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``HORizontal?`` query. + - Using the ``.verify(value)`` method will send the ``HORizontal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.delay``: The ``HORizontal:DELay`` command tree. + - ``.mode``: The ``HORizontal:MODe`` command. + - ``.position``: The ``HORizontal:POSition`` command. + - ``.samplerate``: The ``HORizontal:SAMPLERate`` command. + - ``.scale``: The ``HORizontal:SCAle`` command. + """ + return self._horizontal + + @property + def id(self) -> Id: + """Return the ``ID`` command. + + Description: + - This query-only command returns identifying information about the instrument and + related firmware similar to that returned by the ``*IDN?`` IEEE488.2 common query but + does not include the instrument serial number. + + Usage: + - Using the ``.query()`` method will send the ``ID?`` query. + - Using the ``.verify(value)`` method will send the ``ID?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - ID? + ``` + """ + return self._id + + @property + def idn(self) -> Idn: + """Return the ``*IDN`` command. + + Description: + - This query-only command returns the instrument identification code. + + Usage: + - Using the ``.query()`` method will send the ``*IDN?`` query. + - Using the ``.verify(value)`` method will send the ``*IDN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - *IDN? + ``` + """ + return self._idn + + @property + def lic(self) -> Lic: + """Return the ``LIC`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``LIC?`` query. + - Using the ``.verify(value)`` method will send the ``LIC?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.uninstall``: The ``LIC:UNINSTALL`` command. + """ + return self._lic + + @property + def license(self) -> License: + """Return the ``LICense`` command. + + Description: + - This query-only command returns all license parameters. + + Usage: + - Using the ``.query()`` method will send the ``LICense?`` query. + - Using the ``.verify(value)`` method will send the ``LICense?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - LICense? + ``` + + Sub-properties: + - ``.appid``: The ``LICense:APPID`` command. + - ``.count``: The ``LICense:COUNt`` command. + - ``.error``: The ``LICense:ERRor`` command. + - ``.gmt``: The ``LICense:GMT`` command. + - ``.hid``: The ``LICense:HID`` command. + - ``.install``: The ``LICense:INSTall`` command. + - ``.item``: The ``LICense:ITEM`` command. + - ``.list``: The ``LICense:LIST`` command. + - ``.validate``: The ``LICense:VALidate`` command. + """ + return self._license + + @property + def lrn(self) -> Lrn: + """Return the ``*LRN`` command. + + Description: + - This query-only command returns the commands that list the instrument settings, + allowing you to record or 'learn' the current instrument settings. You can use these + commands to return the instrument to the state it was in when you made the ``*LRN?`` + query. This command is identical to the SET command. + + Usage: + - Using the ``.query()`` method will send the ``*LRN?`` query. + - Using the ``.verify(value)`` method will send the ``*LRN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - *LRN? + ``` + """ + return self._lrn + + @property + def mainwindow(self) -> Mainwindow: + """Return the ``MAINWindow`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MAINWindow?`` query. + - Using the ``.verify(value)`` method will send the ``MAINWindow?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.badge``: The ``MAINWindow:BADGe`` command tree. + - ``.fontsize``: The ``MAINWindow:FONTSize`` command. + - ``.rrbdisplaystate``: The ``MAINWindow:RRBDisplaystate`` command. + """ + return self._mainwindow + + @property + def mask(self) -> Mask: + """Return the ``MASK`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MASK?`` query. + - Using the ``.verify(value)`` method will send the ``MASK?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.delete``: The ``MASK:DELete`` command. + - ``.mask``: The ``MASK:MASK`` command tree. + - ``.test``: The ``MASK:TESt`` command tree. + """ + return self._mask + + @property + def math(self) -> Math: + """Return the ``MATH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATH?`` query. + - Using the ``.verify(value)`` method will send the ``MATH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.addnew``: The ``MATH:ADDNew`` command. + - ``.delete``: The ``MATH:DELete`` command. + - ``.list``: The ``MATH:LIST`` command. + - ``.math``: The ``MATH:MATH`` command tree. + """ + return self._math + + @property + def matharbflt(self) -> Dict[int, MatharbfltItem]: + """Return the ``MATHArbflt`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MATHArbflt?`` query. + - Using the ``.verify(value)`` method will send the ``MATHArbflt?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.filepath``: The ``MATHArbflt:FILepath`` command. + """ + return self._matharbflt + + @property + def meastable(self) -> Meastable: + """Return the ``MEASTABle`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASTABle?`` query. + - Using the ``.verify(value)`` method will send the ``MEASTABle?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.addnew``: The ``MEASTABle:ADDNew`` command. + - ``.delete``: The ``MEASTABle:DELETE`` command. + """ + return self._meastable + + @property + def measu(self) -> Measu: + """Return the ``MEASU`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MEASU?`` query. + - Using the ``.verify(value)`` method will send the ``MEASU?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.meas1``: The ``MEASU:MEAS1`` command tree. + """ + return self._measu + + @property + def measurement(self) -> Measurement: + """Return the ``MEASUrement`` command. + + Description: + - This query-only command returns all measurement parameters. + + Usage: + - Using the ``.query()`` method will send the ``MEASUrement?`` query. + - Using the ``.verify(value)`` method will send the ``MEASUrement?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MEASUrement? + ``` + + Sub-properties: + - ``.addmeas``: The ``MEASUrement:ADDMEAS`` command. + - ``.addnew``: The ``MEASUrement:ADDNew`` command. + - ``.annotate``: The ``MEASUrement:ANNOTate`` command. + - ``.autoset``: The ``MEASUrement:AUTOset`` command. + - ``.ch``: The ``MEASUrement:CH`` command tree. + - ``.clockrecovery``: The ``MEASUrement:CLOCKRecovery`` command tree. + - ``.deleteall``: The ``MEASUrement:DELETEALL`` command. + - ``.delete``: The ``MEASUrement:DELete`` command. + - ``.diracmodel``: The ``MEASUrement:DIRacmodel`` command. + - ``.displayunits``: The ``MEASUrement:DISPLAYUnits`` command. + - ``.edge``: The ``MEASUrement:EDGE`` command. + - ``.eyerender``: The ``MEASUrement:EYERENDER`` command. + - ``.filters``: The ``MEASUrement:FILTers`` command tree. + - ``.gating``: The ``MEASUrement:GATing`` command. + - ``.highlevel``: The ``MEASUrement:HIGHLEVel`` command tree. + - ``.interp``: The ``MEASUrement:INTERp`` command. + - ``.jittermodel``: The ``MEASUrement:JITTermodel`` command. + - ``.list``: The ``MEASUrement:LIST`` command. + - ``.lockrj``: The ``MEASUrement:LOCKRJ`` command. + - ``.lockrjvalue``: The ``MEASUrement:LOCKRJValue`` command. + - ``.math``: The ``MEASUrement:MATH`` command tree. + - ``.meas``: The ``MEASUrement:MEAS`` command tree. + - ``.measrange``: The ``MEASUrement:MEASRange`` command tree. + - ``.mech``: The ``MEASUrement:MECH`` command tree. + - ``.minui``: The ``MEASUrement:MINUI`` command. + - ``.population``: The ``MEASUrement:POPUlation`` command tree. + - ``.ref``: The ``MEASUrement:REF`` command tree. + - ``.reflevels``: The ``MEASUrement:REFLevels`` command tree. + - ``.results``: The ``MEASUrement:RESUlts`` command tree. + - ``.statistics``: The ``MEASUrement:STATIstics`` command tree. + - ``.wbg``: The ``MEASUrement:WBG`` command tree. + """ + return self._measurement + + @property + def opc(self) -> Opc: + """Return the ``*OPC`` command. + + Description: + - This command generates the operation complete message in the Standard Event Status + Register (SESR) when all pending commands that generate an OPC message are complete. + The ``*OPC?`` query places the ASCII character '1' into the output queue when all such + OPC commands are complete. The ``*OPC?`` response is not available to read until all + pending operations finish. For a complete discussion of the use of these registers and + the output queue, see Registers and Queues. The ``*OPC`` command allows you to + synchronize the operation of the instrument with your application program. For more + information, see Synchronization Methods. Refer to the Oscilloscope operations that + can generate OPC table for a list of commands that generate an OPC message. + + Usage: + - Using the ``.query()`` method will send the ``*OPC?`` query. + - Using the ``.verify(value)`` method will send the ``*OPC?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write()`` method will send the ``*OPC`` command. + + SCPI Syntax: + ``` + - *OPC + - *OPC? + ``` + """ + return self._opc + + @property + def opt(self) -> Opt: + """Return the ``*OPT`` command. + + Description: + - This query-only command returns a comma separated list of installed options as an + arbitrary ASCII string (no quotes) of the form: + ``:``,``:``... The last + section of each entry (the text following the last hyphen) indicates the license type. + If no options are found, NONE is returned. + + Usage: + - Using the ``.query()`` method will send the ``*OPT?`` query. + - Using the ``.verify(value)`` method will send the ``*OPT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - *OPT? + ``` + """ + return self._opt + + @property + def pause(self) -> Pause: + """Return the ``PAUSe`` command. + + Description: + - This command causes the interface to pause the specified number of seconds before + processing any other commands. + + Usage: + - Using the ``.write(value)`` method will send the ``PAUSe value`` command. + + SCPI Syntax: + ``` + - PAUSe + ``` + + Info: + - ```` is the specified number of seconds the interface is to pause before + processing any other commands. The pause time is specified as a floating point value + in seconds and must be > 0.0 and ≥1800.0. + """ + return self._pause + + @property + def peakstable(self) -> Peakstable: + """Return the ``PEAKSTABle`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PEAKSTABle?`` query. + - Using the ``.verify(value)`` method will send the ``PEAKSTABle?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.addnew``: The ``PEAKSTABle:ADDNew`` command. + - ``.delete``: The ``PEAKSTABle:DELete`` command. + - ``.list``: The ``PEAKSTABle:LIST`` command. + - ``.table``: The ``PEAKSTABle:TABle`` command tree. + """ + return self._peakstable + + @property + def plot(self) -> Plot: + """Return the ``PLOT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``PLOT?`` query. + - Using the ``.verify(value)`` method will send the ``PLOT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.addnew``: The ``PLOT:ADDNew`` command. + - ``.delete``: The ``PLOT:DELete`` command. + - ``.list``: The ``PLOT:LIST`` command. + - ``.plot``: The ``PLOT:PLOT`` command tree. + """ + return self._plot + + @property + def power(self) -> Power: + """Return the ``POWer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``POWer?`` query. + - Using the ``.verify(value)`` method will send the ``POWer?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.addnew``: The ``POWer:ADDNew`` command. + - ``.delete``: The ``POWer:DELete`` command. + - ``.power``: The ``POWer:POWer`` command tree. + """ + return self._power + + @property + def psc(self) -> Psc: + """Return the ``*PSC`` command. + + Description: + - This command sets and queries the power-on status flag that controls the automatic + power-on handling of the DESER, SRER, and ESER registers. When ``*PSC`` is true, the + DESER register is set to 255 and the SRER and ESER registers are set to 0 at power-on. + When ``*PSC`` is false, the current values in the DESER, SRER, and ESER registers are + preserved in nonvolatile memory when power is shut off and are restored at power-on. + + Usage: + - Using the ``.query()`` method will send the ``*PSC?`` query. + - Using the ``.verify(value)`` method will send the ``*PSC?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``*PSC value`` command. + + SCPI Syntax: + ``` + - *PSC {ON|OFF|} + - *PSC? + ``` + + Info: + - ```` = 0 sets the power-on status clear flag to false, disables the power-on + clear and allows the instrument to possibly assert SRQ after power-on; any other value + sets the power-on status clear flag to true, enabling the power-on status clear and + prevents any SRQ assertion after power on. + - ``OFF`` sets the power-on status clear flag to false, disables the power-on clear and + allows the instrument to possibly assert SRQ after power-on. + - ``ON`` sets the power-on status clear flag to true, enabling the power-on status clear + and prevents any SRQ assertion after power on. + """ + return self._psc + + @property + def pud(self) -> Pud: + """Return the ``*PUD`` command. + + Description: + - This command sets or queries a string of Protected User Data. This data is protected + by the PASSWord command. You can modify it only by first entering the correct + password. This password is not necessary to query the data. + + Usage: + - Using the ``.query()`` method will send the ``*PUD?`` query. + - Using the ``.verify(value)`` method will send the ``*PUD?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``*PUD value`` command. + + SCPI Syntax: + ``` + - *PUD {|} + - *PUD? + ``` + + Info: + - ```` is a block containing up to 100 characters. + - ```` is a string containing up to 100 characters. + """ + return self._pud + + @property + def recall(self) -> Recall: + """Return the ``RECAll`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``RECAll?`` query. + - Using the ``.verify(value)`` method will send the ``RECAll?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.mask``: The ``RECAll:MASK`` command. + - ``.session``: The ``RECAll:SESsion`` command. + - ``.setup``: The ``RECAll:SETUp`` command. + - ``.waveform``: The ``RECAll:WAVEform`` command. + """ + return self._recall + + @property + def ref(self) -> Ref: + """Return the ``REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF?`` query. + - Using the ``.verify(value)`` method will send the ``REF?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.addnew``: The ``REF:ADDNew`` command. + - ``.delete``: The ``REF:DELete`` command. + - ``.list``: The ``REF:LIST`` command. + - ``.ref``: The ``REF:REF`` command tree. + """ + return self._ref + + @property + def refx(self) -> Dict[int, RefItem]: + """Return the ``REF`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REF?`` query. + - Using the ``.verify(value)`` method will send the ``REF?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.d``: The ``REF_D`` command tree. + - ``.dall``: The ``REF_DALL`` command tree. + """ + return self._refx + + @property + def rem(self) -> Rem: + """Return the ``REM`` command. + + Description: + - This command (no query form) embeds a comment within programs as a means of internally + documenting the programs. This is how to embed comments in a .set file. The instrument + ignores these embedded comment lines. + + Usage: + - Using the ``.write(value)`` method will send the ``REM value`` command. + + SCPI Syntax: + ``` + - REM + ``` + + Info: + - ```` is a string that can contain a maximum of 80 characters. + """ + return self._rem + + @property + def remote(self) -> Remote: + """Return the ``REMOTE`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``REMOTE?`` query. + - Using the ``.verify(value)`` method will send the ``REMOTE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.acqmethod``: The ``REMOTE:ACQMethod`` command. + - ``.acqstatus``: The ``REMOTE:ACQStatus`` command. + - ``.acquire``: The ``REMOTE:ACQUIRE`` command. + - ``.addnew``: The ``REMOTE:ADDNew`` command. + - ``.comminter``: The ``REMOTE:COMMInter`` command. + - ``.control``: The ``REMOTE:CONTROL`` command. + - ``.delete``: The ``REMOTE:DELEte`` command. + - ``.logging``: The ``REMOTE:LOGGING`` command. + - ``.numacq``: The ``REMOTE:NUMACq`` command. + - ``.s``: The ``REMOTE:S`` command tree. + - ``.scope``: The ``REMOTE:SCOPe`` command tree. + - ``.sequence``: The ``REMOTE:SEQuence`` command tree. + - ``.sv``: The ``REMOTE:SV`` command tree. + - ``.usbdescriptors``: The ``REMOTE:USBDEscriptors`` command. + """ + return self._remote + + @property + def rst(self) -> Rst: + """Return the ``*RST`` command. + + Description: + - This command (no query form) resets the instrument to the factory default settings. + This command does the following: Recalls the default instrument setup. Clears the + current ``*DDT`` command. Disables aliases (``:ALIAS:STATE 0``). Disables the user + password (for the ``*PUD`` command). The ``*RST`` command does not change the + following: The current working directory ( ``:FILESystem:CWD`` command). The state of + command headers ( ``:HEADer`` command). The state of keyword and enumeration verbosity + ( ``:VERBose`` command). The Power-on Status Clear Flag ( ``*PSC`` command). The Event + Status Enable Register ( ``*ESE`` command). The Service Request Enable Register ( + ``*SRE`` command). The Device Event Status Enable Register ( DESE command). The user + password for protected user data ( ``:PASSWord`` command). The content of protected + user data ( ``*PUD`` command). The enabled state of the socket server ( + ``:SOCKETServer:ENAble`` command). The socket server port number ( + ``:SOCKETServer:PORT`` command). The socket server protocol ( + ``:SOCKETServer:PROTOCol`` command). The USBTMC port configuration ( + ``:USBDevice:CONFigure`` command). The destination reference waveform or file path for + the ``:CURVe`` command ( ``:DATa:DESTination`` command). The source waveform for the + ``:CURVe?`` or ``:WAVFrm?`` queries ( ``:DATa:SOUrce`` command). The waveform data + encoding for the ``:CURVe`` command or query or the ``:WAVFrm?`` query ( + ``:DATa:ENCdg`` command). The starting point for ``:CURVe?`` queries ( ``:DATa:STARt`` + command). The ending point for ``:CURVe?`` queries ( ``:DATa:STOP`` command). All + settings associated the ``:WFMInpre`` commands. All user settable settings associated + with the WFMOutpre commands. ``*RST`` only resets the programmable interface settings, + it does not change the user interface settings. + + Usage: + - Using the ``.write()`` method will send the ``*RST`` command. + + SCPI Syntax: + ``` + - *RST + ``` + """ + return self._rst + + @property + def s(self) -> Dict[int, SItem]: + """Return the ``S`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``S?`` query. + - Using the ``.verify(value)`` method will send the ``S?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``S_CH`` command tree. + """ + return self._s + + @property + def save(self) -> Save: + """Return 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``. + + Sub-properties: + - ``.eventtable``: The ``SAVe:EVENTtable`` command tree. + - ``.image``: The ``SAVe:IMAGe`` command. + - ``.plotdata``: The ``SAVe:PLOTData`` command. + - ``.report``: The ``SAVe:REPOrt`` command. + - ``.session``: The ``SAVe:SESsion`` command. + - ``.setup``: The ``SAVe:SETUp`` command. + - ``.waveform``: The ``SAVe:WAVEform`` command. + """ + return self._save + + @property + def saveonevent(self) -> Saveonevent: + """Return the ``SAVEONEVent`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVEONEVent?`` query. + - Using the ``.verify(value)`` method will send the ``SAVEONEVent?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.filedest``: The ``SAVEONEVent:FILEDest`` command. + - ``.filename``: The ``SAVEONEVent:FILEName`` command. + - ``.image``: The ``SAVEONEVent:IMAGe`` command tree. + - ``.waveform``: The ``SAVEONEVent:WAVEform`` command tree. + """ + return self._saveonevent + + @property + def search(self) -> Search: + """Return the ``SEARCH`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SEARCH?`` query. + - Using the ``.verify(value)`` method will send the ``SEARCH?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.addnew``: The ``SEARCH:ADDNew`` command. + - ``.deleteall``: The ``SEARCH:DELETEALL`` command. + - ``.delete``: The ``SEARCH:DELete`` command. + - ``.list``: The ``SEARCH:LIST`` command. + - ``.search``: The ``SEARCH:SEARCH`` command tree. + - ``.selected``: The ``SEARCH:SELected`` command. + """ + return self._search + + @property + def searchtable(self) -> Searchtable: + """Return the ``SEARCHTABle`` command. + + Description: + - This command adds or deletes a new search event table in an Option 5-WIN (Microsoft + Windows 10 OS) TekExpress compliance testing application. + + Usage: + - Using the ``.write(value)`` method will send the ``SEARCHTABle value`` command. + + SCPI Syntax: + ``` + - SEARCHTABle {ADDNew|DELete} + ``` + + Info: + - ``ADDNew`` adds a new search events table in the display area. + - ``DELete`` removes a displayed search events table from the display area. + - ```` contains the name of the search table. + """ + return self._searchtable + + @property + def set_(self) -> Set: + """Return the ``SET`` command. + + Description: + - This query-only command returns the commands that list the instrument settings, except + for configuration information for the calibration values. You can use these commands + to return the instrument to the state it was in when you made the ``SET?`` query. The + ``SET?`` query always returns command headers, regardless of the setting of the HEADER + command. This is because the returned commands are intended to be sent back to the + instrument as a command string. The VERBOSE command can still be used to specify + whether the returned headers should be abbreviated or full-length. This command is + identical to the LRN command. + + Usage: + - Using the ``.query()`` method will send the ``SET?`` query. + - Using the ``.verify(value)`` method will send the ``SET?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - SET? + ``` + """ + return self._set + + @property + def socketserver(self) -> Socketserver: + """Return the ``SOCKETServer`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SOCKETServer?`` query. + - Using the ``.verify(value)`` method will send the ``SOCKETServer?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.enable``: The ``SOCKETServer:ENAble`` command. + - ``.port``: The ``SOCKETServer:PORT`` command. + - ``.protocol``: The ``SOCKETServer:PROTOCol`` command. + """ + return self._socketserver + + @property + def sre(self) -> Sre: + """Return the ``*SRE`` command. + + Description: + - The ``*SRE`` (Service Request Enable) command sets and queries the bits in the Service + Request Enable Register. For more information, refer to Registers. + + Usage: + - Using the ``.query()`` method will send the ``*SRE?`` query. + - Using the ``.verify(value)`` method will send the ``*SRE?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``*SRE value`` command. + + SCPI Syntax: + ``` + - *SRE + - *SRE? + ``` + + Info: + - ```` is a value in the range from 0 through 255. The binary bits of the SRER are + set according to this value. Using an out-of-range value causes an execution error. + The power-on default for SRER is 0 if ``*PSC`` is 1. If ``*PSC`` is 0, the SRER + maintains the previous power cycle value through the current power cycle. + """ + return self._sre + + @property + def stb(self) -> Stb: + """Return the ``*STB`` command. + + Description: + - The ``*STB?`` (Read Status Byte) query returns the contents of the Status Byte + Register (SBR) using the Master Summary Status (MSS) bit. For more information, refer + to Registers. + + Usage: + - Using the ``.query()`` method will send the ``*STB?`` query. + - Using the ``.verify(value)`` method will send the ``*STB?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - *STB? + ``` + """ + return self._stb + + @property + def sv(self) -> Sv: + """Return the ``SV`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SV?`` query. + - Using the ``.verify(value)`` method will send the ``SV?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``SV:CH`` command tree. + - ``.lockcenter``: The ``SV:LOCKCenter`` command. + - ``.lockspectrum``: The ``SV:LOCKSpectrum`` command. + - ``.marker``: The ``SV:MARKER`` command tree. + - ``.rf_phase``: The ``SV:RF_PHASe`` command tree. + - ``.s``: The ``SV:S`` command tree. + - ``.spectrogram``: The ``SV:SPECtrogram`` command tree. + """ + return self._sv + + @property + def time(self) -> Time: + """Return the ``TIMe`` command. + + Description: + - This command sets the time in the form ``hh:mm:ss`` where hh refers to a two-digit + hour number, mm refers to a two-digit minute number from 01 to 60, and ss refers to a + two-digit second number from 01 to 60. + + Usage: + - Using the ``.query()`` method will send the ``TIMe?`` query. + - Using the ``.verify(value)`` method will send the ``TIMe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``TIMe value`` command. + + SCPI Syntax: + ``` + - TIMe + - TIMe? + ``` + + Info: + - ```` is a quoted string representing the desired time. + + Sub-properties: + - ``.zone``: The ``TIMe:ZONe`` command. + """ + return self._time + + @property + def totaluptime(self) -> Totaluptime: + """Return the ``TOTaluptime`` command. + + Description: + - Total number of hours the instrument has been turned on since the NV memory was last + programmed, usually during the initial manufacturing process. + + Usage: + - Using the ``.query()`` method will send the ``TOTaluptime?`` query. + - Using the ``.verify(value)`` method will send the ``TOTaluptime?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - TOTaluptime? + ``` + """ + return self._totaluptime + + @property + def trigger(self) -> Trigger: + """Return the ``TRIGger`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``TRIGger?`` query. + - Using the ``.verify(value)`` method will send the ``TRIGger?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.a``: The ``TRIGger:A`` command tree. + - ``.b``: The ``TRIGger:B`` command tree. + """ + return self._trigger + + @property + def tst(self) -> Tst: + """Return the ``*TST`` command. + + Description: + - Tests (self-test) the interface and returns a 0. + + Usage: + - Using the ``.query()`` method will send the ``*TST?`` query. + - Using the ``.verify(value)`` method will send the ``*TST?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - *TST? + ``` + """ + return self._tst + + @property + def undo(self) -> Undo: + """Return the ``UNDO`` command. + + Description: + - Reverts the instrument settings to a state before the previous command or user + interface action. + + Usage: + - Using the ``.write()`` method will send the ``UNDO`` command. + + SCPI Syntax: + ``` + - UNDO + ``` + """ + return self._undo + + @property + def verbose(self) -> Verbose: + """Return the ``VERBose`` command. + + Description: + - This command sets or queries the Verbose state that controls the length of keywords on + query responses. Keywords can be both headers and arguments. + + Usage: + - Using the ``.write(value)`` method will send the ``VERBose value`` command. + + SCPI Syntax: + ``` + - VERBose {ON|OFF|} + ``` + + Info: + - ```` = 0 disables Verbose, any other value enables Verbose. + - ``OFF`` sets the Verbose state to false, which returns minimum-length keywords for + applicable setting queries. + - ``ON`` sets the Verbose state to true, which returns full-length keywords for + applicable setting queries. + """ + return self._verbose + + @property + def vertical(self) -> Vertical: + """Return the ``VERTical`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``VERTical?`` query. + - Using the ``.verify(value)`` method will send the ``VERTical?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.deskew``: The ``VERTical:DESKew`` command tree. + """ + return self._vertical + + @property + def visual(self) -> Visual: + """Return the ``VISual`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``VISual?`` query. + - Using the ``.verify(value)`` method will send the ``VISual?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.area``: The ``VISual:AREA`` command tree. + - ``.deleteall``: The ``VISual:DELETEALL`` command. + - ``.enable``: The ``VISual:ENAble`` command. + - ``.equation``: The ``VISual:EQUation`` command. + - ``.showareas``: The ``VISual:SHOWAReas`` command. + - ``.showcriteria``: The ``VISual:SHOWCRiteria`` command. + - ``.showequation``: The ``VISual:SHOWEQuation`` command. + """ + return self._visual + + @property + def wai(self) -> Wai: + """Return the ``*WAI`` command. + + Description: + - The ``*WAI`` (Wait) command (no query form) prevents the instrument from executing + further commands or queries until all pending commands that generate an OPC message + are complete. This command allows you to synchronize the operation of the instrument + with your application program. For more information, refer to Synchronization Methods. + + Usage: + - Using the ``.write()`` method will send the ``*WAI`` command. + + SCPI Syntax: + ``` + - *WAI + ``` + """ + return self._wai + + @property + def wavfrm(self) -> Wavfrm: + """Return the ``WAVFrm`` command. + + Description: + - This query-only command provides the Tektronix standard waveform query which returns + the waveform preamble followed by the waveform data for the source specified by + ``:DATa:SOUrce`` using the ``:DATa`` settings for encoding, width, and so forth. + + Usage: + - Using the ``.query()`` method will send the ``WAVFrm?`` query. + - Using the ``.verify(value)`` method will send the ``WAVFrm?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - WAVFrm? + ``` + """ + return self._wavfrm + + @property + def wfmoutpre(self) -> Wfmoutpre: + """Return the ``WFMOutpre`` command. + + Description: + - This query-only command queries the waveform formatting data for the waveform + specified by the ``DATA:SOURCE`` command. The preamble components are considered to be + of two types; formatting and interpretation. The formatting components are: ENCdg, + ``BN_Fmt``, ``BYT_Or``, ``BYT_Nr``, ``BIT_Nr``. The interpretation components are + derived from the ``DATa:SOUrce`` specified waveform. + + Usage: + - Using the ``.query()`` method will send the ``WFMOutpre?`` query. + - Using the ``.verify(value)`` method will send the ``WFMOutpre?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - WFMOutpre? + ``` + + Sub-properties: + - ``.asc_fmt``: The ``WFMOutpre:ASC_Fmt`` command. + - ``.bit_nr``: The ``WFMOutpre:BIT_Nr`` command. + - ``.bn_fmt``: The ``WFMOutpre:BN_Fmt`` command. + - ``.byt_nr``: The ``WFMOutpre:BYT_Nr`` command. + - ``.byt_or``: The ``WFMOutpre:BYT_Or`` command. + - ``.centerfrequency``: The ``WFMOutpre:CENTERFREQuency`` command. + - ``.domain``: The ``WFMOutpre:DOMain`` command. + - ``.encdg``: The ``WFMOutpre:ENCdg`` command. + - ``.nr_pt``: The ``WFMOutpre:NR_Pt`` command. + - ``.pt_fmt``: The ``WFMOutpre:PT_Fmt`` command. + - ``.pt_order``: The ``WFMOutpre:PT_ORder`` command. + - ``.pt_off``: The ``WFMOutpre:PT_Off`` command. + - ``.resample``: The ``WFMOutpre:RESample`` command. + - ``.span``: The ``WFMOutpre:SPAN`` command. + - ``.wfid``: The ``WFMOutpre:WFId`` command. + - ``.wfmtype``: The ``WFMOutpre:WFMTYPe`` command. + - ``.xincr``: The ``WFMOutpre:XINcr`` command. + - ``.xunit``: The ``WFMOutpre:XUNit`` command. + - ``.xzero``: The ``WFMOutpre:XZEro`` command. + - ``.ymult``: The ``WFMOutpre:YMUlt`` command. + - ``.yoff``: The ``WFMOutpre:YOFf`` command. + - ``.yunit``: The ``WFMOutpre:YUNit`` command. + - ``.yzero``: The ``WFMOutpre:YZEro`` command. + """ + return self._wfmoutpre + + +class TekScopePCMixin: + """A mixin that provides access to the TekScopePC commands and constants. + + Properties: + - ``.command_argument_constants``: The TekScopePC command argument constants. + - ``.commands``: The TekScopePC commands. + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + device = self if isinstance(self, PIDevice) else None + self._command_argument_constants = TekScopePCCommandConstants() + self._commands = TekScopePCCommands(device) + + @property + def command_argument_constants(self) -> TekScopePCCommandConstants: + """Return the TekScopePC command argument constants. + + This provides access to all the string constants which can be used as arguments for + TekScopePC commands. + """ + return self._command_argument_constants + + @property + def commands(self) -> TekScopePCCommands: + """Return the TekScopePC commands. + + This provides access to all the commands for the TekScopePC device. See the documentation of + each sub-property for more usage information. + + Sub-properties: + - ``.actonevent``: The ``ACTONEVent`` command tree. + - ``.alias``: The ``ALIas`` command. + - ``.allev``: The ``ALLEv`` command. + - ``.autosavepitimeout``: The ``AUTOSAVEPITIMEOUT`` command. + - ``.autosaveuitimeout``: The ``AUTOSAVEUITIMEOUT`` command. + - ``.bus``: The ``BUS`` command tree. + - ``.bustable``: The ``BUSTABle`` command tree. + - ``.busy``: The ``BUSY`` command. + - ``.callouts``: The ``CALLOUTS`` command tree. + - ``.ch``: The ``CH`` command. + - ``.cls``: The ``*CLS`` command. + - ``.configuration``: The ``CONFIGuration`` command tree. + - ``.curve``: The ``CURVe`` command. + - ``.curvestream``: The ``CURVEStream`` command. + - ``.customtable``: The ``CUSTOMTABle`` command tree. + - ``.data``: The ``DATa`` command. + - ``.date``: The ``DATE`` command. + - ``.dese``: The ``DESE`` command. + - ``.display``: The ``DISplay`` command. + - ``.ese``: The ``*ESE`` command. + - ``.esr``: The ``*ESR`` command. + - ``.event``: The ``EVENT`` command. + - ``.evmsg``: The ``EVMsg`` command. + - ``.evqty``: The ``EVQty`` command. + - ``.eyemask``: The ``EYEMASK`` command tree. + - ``.factory``: The ``FACtory`` command. + - ``.filesys``: The ``FILESYS`` command tree. + - ``.filesystem``: The ``FILESystem`` command. + - ``.header``: The ``HEADer`` command. + - ``.histogram``: The ``HISTogram`` command tree. + - ``.horizontal``: The ``HORizontal`` command tree. + - ``.id``: The ``ID`` command. + - ``.idn``: The ``*IDN`` command. + - ``.lic``: The ``LIC`` command tree. + - ``.license``: The ``LICense`` command. + - ``.lrn``: The ``*LRN`` command. + - ``.mainwindow``: The ``MAINWindow`` command tree. + - ``.mask``: The ``MASK`` command tree. + - ``.math``: The ``MATH`` command tree. + - ``.matharbflt``: The ``MATHArbflt`` command tree. + - ``.meastable``: The ``MEASTABle`` command tree. + - ``.measu``: The ``MEASU`` command tree. + - ``.measurement``: The ``MEASUrement`` command. + - ``.opc``: The ``*OPC`` command. + - ``.opt``: The ``*OPT`` command. + - ``.pause``: The ``PAUSe`` command. + - ``.peakstable``: The ``PEAKSTABle`` command tree. + - ``.plot``: The ``PLOT`` command tree. + - ``.power``: The ``POWer`` command tree. + - ``.psc``: The ``*PSC`` command. + - ``.pud``: The ``*PUD`` command. + - ``.recall``: The ``RECAll`` command tree. + - ``.ref``: The ``REF`` command tree. + - ``.refx``: The ``REF`` command tree. + - ``.rem``: The ``REM`` command. + - ``.remote``: The ``REMOTE`` command tree. + - ``.rst``: The ``*RST`` command. + - ``.s``: The ``S`` command tree. + - ``.save``: The ``SAVe`` command tree. + - ``.saveonevent``: The ``SAVEONEVent`` command tree. + - ``.search``: The ``SEARCH`` command tree. + - ``.searchtable``: The ``SEARCHTABle`` command. + - ``.set``: The ``SET`` command. + - ``.socketserver``: The ``SOCKETServer`` command tree. + - ``.sre``: The ``*SRE`` command. + - ``.stb``: The ``*STB`` command. + - ``.sv``: The ``SV`` command tree. + - ``.time``: The ``TIMe`` command. + - ``.totaluptime``: The ``TOTaluptime`` command. + - ``.trigger``: The ``TRIGger`` command tree. + - ``.tst``: The ``*TST`` command. + - ``.undo``: The ``UNDO`` command. + - ``.verbose``: The ``VERBose`` command. + - ``.vertical``: The ``VERTical`` command tree. + - ``.visual``: The ``VISual`` command tree. + - ``.wai``: The ``*WAI`` command. + - ``.wavfrm``: The ``WAVFrm`` command. + - ``.wfmoutpre``: The ``WFMOutpre`` command. + """ + return self._commands diff --git a/src/tm_devices/drivers/__init__.py b/src/tm_devices/drivers/__init__.py index 23ba4ec8..b1a592cf 100644 --- a/src/tm_devices/drivers/__init__.py +++ b/src/tm_devices/drivers/__init__.py @@ -1,5 +1,9 @@ """Python drivers for all supported devices.""" +import sys +import warnings +from typing import Any + # NOTE: For documentation purposes, these imports must be sorted manually, not automatically # ruff: isort: skip_file from tm_devices.drivers.device_driver_mapping import DEVICE_DRIVER_MODEL_MAPPING @@ -27,7 +31,7 @@ from tm_devices.drivers.pi.scopes.tekscope.mso5lp import MSO5LP from tm_devices.drivers.pi.scopes.tekscope.mso6 import MSO6 from tm_devices.drivers.pi.scopes.tekscope.mso6b import MSO6B -from tm_devices.drivers.pi.scopes.tekscope.tekscopesw import TekScopeSW +from tm_devices.drivers.pi.scopes.tekscope.tekscopesw import TekScopePC from tm_devices.drivers.pi.scopes.tekscope_2k.dpo2k import DPO2K from tm_devices.drivers.pi.scopes.tekscope_2k.dpo2kb import DPO2KB from tm_devices.drivers.pi.scopes.tekscope_2k.mso2k import MSO2K @@ -105,6 +109,21 @@ from tm_devices.drivers.pi.systems_switches.ss3706a import SS3706A from tm_devices.drivers.api.rest_api.margin_testers.tmt4 import TMT4 +# TODO: remove this function after TekScopeSW is fully removed +if not ("--doctest-modules" in sys.argv and sys.argv[-1] == "src"): # pragma: no cover + + def __getattr__(name: str) -> Any: + if name == "TekScopeSW": + warnings.warn( + f"{name} is deprecated and will be removed in a future version, " + f"please use TekScopePC instead.", + DeprecationWarning, + stacklevel=2, + ) + return TekScopePC + return globals()[name] + + __all__ = [ "DEVICE_DRIVER_MODEL_MAPPING", "DEVICE_TYPE_CLASSES", @@ -162,7 +181,7 @@ "MSO70K", "MSO70KC", "MSO70KDX", - "TekScopeSW", + "TekScopePC", "TSOVu", "TMT4", "SMU2400", diff --git a/src/tm_devices/drivers/device_driver_mapping.py b/src/tm_devices/drivers/device_driver_mapping.py index 871eab3b..0f2bdcb7 100644 --- a/src/tm_devices/drivers/device_driver_mapping.py +++ b/src/tm_devices/drivers/device_driver_mapping.py @@ -25,7 +25,7 @@ from tm_devices.drivers.pi.scopes.tekscope.mso5lp import MSO5LP from tm_devices.drivers.pi.scopes.tekscope.mso6 import MSO6 from tm_devices.drivers.pi.scopes.tekscope.mso6b import MSO6B -from tm_devices.drivers.pi.scopes.tekscope.tekscopesw import TekScopeSW +from tm_devices.drivers.pi.scopes.tekscope.tekscopesw import TekScopePC from tm_devices.drivers.pi.scopes.tekscope_2k.dpo2k import DPO2K from tm_devices.drivers.pi.scopes.tekscope_2k.dpo2kb import DPO2KB from tm_devices.drivers.pi.scopes.tekscope_2k.mso2k import MSO2K @@ -162,7 +162,7 @@ SupportedModels.MSO70K.value: MSO70K, SupportedModels.MSO70KC.value: MSO70KC, SupportedModels.MSO70KDX.value: MSO70KDX, - SupportedModels.TEKSCOPESW.value: TekScopeSW, + SupportedModels.TEKSCOPEPC.value: TekScopePC, SupportedModels.TSOVU.value: TSOVu, # Margin Testers SupportedModels.TMT4.value: TMT4, diff --git a/src/tm_devices/drivers/pi/scopes/tekscope/tekscopesw.py b/src/tm_devices/drivers/pi/scopes/tekscope/tekscopesw.py index 50550c10..94adb547 100644 --- a/src/tm_devices/drivers/pi/scopes/tekscope/tekscopesw.py +++ b/src/tm_devices/drivers/pi/scopes/tekscope/tekscopesw.py @@ -1,9 +1,9 @@ -"""TEKSCOPESW device driver module.""" - -from typing import Any +"""TekScopePC device driver module.""" +# TODO: rename file after TekScopeSW is fully removed import pyvisa as visa +from tm_devices.commands import TekScopePCMixin from tm_devices.drivers.pi.scopes.tekscope.tekscope import TekScope from tm_devices.helpers import DeviceConfigEntry @@ -11,8 +11,8 @@ from tm_devices.helpers import ReadOnlyCachedProperty as cached_property # noqa: N813 -class TekScopeSW(TekScope): - """TEKSCOPESW device driver.""" +class TekScopePC(TekScopePCMixin, TekScope): # pyright: ignore[reportIncompatibleMethodOverride] + """TekScopePC device driver.""" ################################################################################################ # Magic Methods @@ -23,7 +23,7 @@ def __init__( verbose: bool, visa_resource: visa.resources.MessageBasedResource, ) -> None: - """Create a TekScope device. + """Create a TekScopePC device. Args: config_entry: A config entry object parsed by the DMConfigParser. @@ -32,29 +32,15 @@ def __init__( """ super().__init__(config_entry, verbose, visa_resource) - # TODO: Remove once auto-generated commands are available for TekScopeSW - self._commands: Any = NotImplemented - self._command_argument_constants: Any = NotImplemented - ################################################################################################ # Properties ################################################################################################ - # TODO: Remove once auto-generated commands are available for TekScopeSW - @property - def command_argument_constants(self) -> Any: - """Return the device command argument constants.""" - return self._command_argument_constants - - # TODO: Remove once auto-generated commands are available for TekScopeSW - @property - def commands(self) -> Any: - """Return the device commands.""" - return self._commands @cached_property def total_channels(self) -> int: """Return the total number of channels (all types).""" - return 0 + # TekScopePC supports a maximum of 8 channels + return 8 ################################################################################################ # Private Methods @@ -62,3 +48,12 @@ def total_channels(self) -> int: def _reboot(self) -> None: """Reboot the device.""" # TODO: overwrite the reboot code here + + +# An alias for TekScopeSW driver +class TekScopeSW(TekScopePC): + """TekScopeSW device driver. + + !!! danger "Deprecated" + This device driver is deprecated, use [`TekScopePC`][tm_devices.drivers.TekScopePC] instead. + """ diff --git a/src/tm_devices/helpers/enums.py b/src/tm_devices/helpers/enums.py index bd6fd970..552885d6 100644 --- a/src/tm_devices/helpers/enums.py +++ b/src/tm_devices/helpers/enums.py @@ -143,7 +143,7 @@ class SupportedModels(CustomStrEnum): MSO70K = "MSO70K" MSO70KC = "MSO70KC" MSO70KDX = "MSO70KDX" - TEKSCOPESW = "TekScopeSW" + TEKSCOPEPC = "TekScopePC" TSOVU = "TSOVu" # Margin Testers TMT4 = "TMT4" diff --git a/src/tm_devices/helpers/functions.py b/src/tm_devices/helpers/functions.py index c34f3f26..704f1cb5 100644 --- a/src/tm_devices/helpers/functions.py +++ b/src/tm_devices/helpers/functions.py @@ -101,7 +101,7 @@ rf"|(?P<{SupportedModels.MSO70K.value}>^MSO7\d\d\d\d$)" rf"|(?P<{SupportedModels.MSO70KC.value}>^MSO7\d\d\d\dC$)" rf"|(?P<{SupportedModels.MSO70KDX.value}>^MSO7\d\d\d\dDX$)" - rf"|(?P<{SupportedModels.TEKSCOPESW.value}>^TEKSCOPESW$)" + rf"|(?P<{SupportedModels.TEKSCOPEPC.value}>^TEKSCOPE(?:SW|PC)$)" rf"|(?P<{SupportedModels.TSOVU.value}>^TSOVU$)" rf"|(?P<{SupportedModels.TMT4.value}>^TMT4$)" # SMUs diff --git a/tests/auto_gen_cmds_list.json b/tests/auto_gen_cmds_list.json index b829de79..ebe73498 100644 --- a/tests/auto_gen_cmds_list.json +++ b/tests/auto_gen_cmds_list.json @@ -77,15 +77,22 @@ "ACTONEVent:MEASUrement:ACTION:SRQ:STATE", "ACTONEVent:MEASUrement:ACTION:STOPACQ:STATE", "ACTONEVent:NUMACQs", + "ACTONEVent:NUMSAVEs", "ACTONEVent:REPEATCount", "ACTONEVent:SEARCH:ACTION:SAVEIMAGe:STATE", "ACTONEVent:SEARCH:ACTION:SAVEWAVEform:STATE", "ACTONEVent:SEARCH:ACTION:SRQ:STATE", "ACTONEVent:SEARCH:ACTION:STOPACQ:STATE", + "ACTONEVent:TIMER:ACTION:SAVEIMAGe:STATE", + "ACTONEVent:TIMER:ACTION:SAVETable:STATE", + "ACTONEVent:TIMER:ACTION:SAVEWAVEform:STATE", + "ACTONEVent:TIMERCount", + "ACTONEVent:TIMERInterval", "ACTONEVent:TRIGger:ACTION:SAVEIMAGe:STATE", "ACTONEVent:TRIGger:ACTION:SAVEWAVEform:STATE", "ACTONEVent:TRIGger:ACTION:SRQ:STATE", "ACTONEVent:TRIGger:ACTION:STOPACQ:STATE", + "ACTONEVent:Type", "ACTive:MODE", "AFG:AMPLitude", "AFG:ARBitrary:ARB:DATE", @@ -502,6 +509,8 @@ "BUS:B:ONEWIRe:MODe", "BUS:B:PARallel:ALLTHResholds", "BUS:B:PARallel:ALLTHResholds:APPly", + "BUS:B:PARallel:BITSOUrce", + "BUS:B:PARallel:BITSOUrce:THReshold", "BUS:B:PARallel:BIT:SOUrce", "BUS:B:PARallel:BITSOUrce", "BUS:B:PARallel:BITSOUrce:THReshold", @@ -689,6 +698,7 @@ "BWAVeform:RESet", "BWAVeform:SRATe", "CALLOUTS:ADDNew", + "CALLOUTS:CALLOUT", "CALLOUTS:CALLOUT:BOOKMark:SOURCE", "CALLOUTS:CALLOUT:BOOKMark:XPOS", "CALLOUTS:CALLOUT:COLOR", @@ -929,6 +939,12 @@ "CONNected:STATus", "CONNected:USAGe:TRack:REQUested:STATus", "CONNected:USAGe:TRack:STATus", + "CONNectivity:ACTive", + "CONNectivity:CONNect", + "CONNectivity:DISConnect", + "CONNectivity:GANG:CREAte", + "CONNectivity:REMove", + "CONNectivity:STATus", "COUnter", "COUnter:DURation", "COUnter:GAIn", @@ -1207,6 +1223,7 @@ "DISplay:INTENSITy:WAVEform", "DISplay:INTENSITy:WAVEform:IMAGEView", "DISplay:INTENSITy:WAVEform:RECORDView", + "DISplay:MATHFFTView:CURSor:ROLOCATION", "DISplay:MATHFFTView:AUTOScale", "DISplay:MATHFFTView:CURSor:ASOUrce", "DISplay:MATHFFTView:CURSor:BSOUrce", @@ -1242,6 +1259,9 @@ "DISplay:MATHFFTView:ZOOM:YAXIS:TO", "DISplay:PERSistence", "DISplay:PERSistence:RESET", + "DISplay:PLOTVIEW:XAXIS:SCALE", + "DISplay:PLOTVIEW:YAXIS:SCALE", + "DISplay:PLOTView:CURSor:ROLOCATION", "DISplay:PLOTView:AUTOScale", "DISplay:PLOTView:CURSor:ASOUrce", "DISplay:PLOTView:CURSor:BSOUrce", @@ -2088,6 +2108,7 @@ "FGEN[:CHANnel[n]]:PHASe", "FGEN[:CHANnel[n]]:SYMMetry", "FGEN[:CHANnel[n]]:TYPE", + "FILESYS:COLLECTLOGFILES", "FILESystem", "FILESystem:COPy", "FILESystem:CWD", @@ -2433,6 +2454,7 @@ "MASK:MASK:DEFinedby", "MASK:MASK:DISplay", "MASK:MASK:LIST", + "MASK:MASK:SEG:COUNT:HITS", "MASK:MASK:SEG:POINTS", "MASK:MASK:SEGCOUNT:HITS", "MASK:MASK:SOUrce", @@ -2646,6 +2668,18 @@ "MCH:{MINAMPLitude|MAXAMPLitude}", "MEASTABle:ADDNew", "MEASTABle:DELETE", + "MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MAXimum", + "MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MEAN", + "MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:MINimum", + "MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:PK2PK", + "MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:POPUlation", + "MEASU:MEAS1:SUBGROUP:RESUlts:ALLAcqs:STDDev", + "MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MAXimum", + "MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MEAN", + "MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:MINimum", + "MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:PK2PK", + "MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:POPUlation", + "MEASU:MEAS1:SUBGROUP:RESUlts:CURRentacq:STDDev", "MEASUrement", "MEASUrement:ADDMEAS", "MEASUrement:ADDNew", @@ -2953,6 +2987,7 @@ "MEASUrement:MEAS:OUTEDGEQUALifier", "MEASUrement:MEAS:OUTFILTers:LOWPass:FREQ", "MEASUrement:MEAS:OUTFILTers:LOWPass:SPEC", + "MEASUrement:MEAS:OUTPUTVOLTage", "MEASUrement:MEAS:OUTPUTVOLTage", "MEASUrement:MEAS:PASSFAILENabled", "MEASUrement:MEAS:PASSFAILHIGHlimit", @@ -3004,6 +3039,7 @@ "MEASUrement:MEAS:REFLevels:PERCent:RISEMid", "MEASUrement:MEAS:REFLevels:PERCent:TYPE", "MEASUrement:MEAS:REFMode", + "MEASUrement:MEAS:REFVOLTAGEVal", "MEASUrement:MEAS:REFVOLTAGEVal", "MEASUrement:MEAS:REFVoltage", "MEASUrement:MEAS:RESUlts:ALLAcqs:MAXimum", @@ -3025,6 +3061,7 @@ "MEASUrement:MEAS:RESUlts:HISTory:POPUlation", "MEASUrement:MEAS:RESUlts:HISTory:STDDev", "MEASUrement:MEAS:RFREquency", + "MEASUrement:MEAS:RIPPLEFREQVal", "MEASUrement:MEAS:RIPPLEFREQVal", "MEASUrement:MEAS:RRANGE", "MEASUrement:MEAS:SEQuence", @@ -3097,6 +3134,7 @@ "MEASUrement:MEAS:WINDOWLENgth", "MEASUrement:MEAS:XUNIT", "MEASUrement:MEAS:YUNIT", + "MEASUrement:MEAS?:STLTYpe", "MEASUrement:MEASRange:MAX", "MEASUrement:MEASRange:MIN", "MEASUrement:MEASRange:STATE", @@ -3390,11 +3428,13 @@ "POWer:POWer:AUTOSet", "POWer:POWer:CLRESPONSE:AMPVal", "POWer:POWer:CLRESPONSE:AMPMode", + "POWer:POWer:CLRESPONSE:AMP[1-10]Val", "POWer:POWer:CLRESPONSE:ANALYSISMethod", "POWer:POWer:CLRESPONSE:AUTORbw", "POWer:POWer:CLRESPONSE:CONNECTSTATus", "POWer:POWer:CLRESPONSE:CONSTAMPlitude", "POWer:POWer:CLRESPONSE:FREQVal", + "POWer:POWer:CLRESPONSE:FREQ[1-11]Val", "POWer:POWer:CLRESPONSE:GENIPADDress", "POWer:POWer:CLRESPONSE:GENerator", "POWer:POWer:CLRESPONSE:IMPEDance", @@ -3452,11 +3492,13 @@ "POWer:POWer:HARMONICS:VSOURce", "POWer:POWer:IMPEDANCE:AMPVal", "POWer:POWer:IMPEDANCE:AMPMode", + "POWer:POWer:IMPEDANCE:AMP[1-10]Val", "POWer:POWer:IMPEDANCE:ANALYSISMethod", "POWer:POWer:IMPEDANCE:AUTORbw", "POWer:POWer:IMPEDANCE:CONNECTSTATus", "POWer:POWer:IMPEDANCE:CONSTAMPlitude", "POWer:POWer:IMPEDANCE:FREQVal", + "POWer:POWer:IMPEDANCE:FREQ[1-10]Val", "POWer:POWer:IMPEDANCE:GENIPADDress", "POWer:POWer:IMPEDANCE:GENerator", "POWer:POWer:IMPEDANCE:IMPEDANCE", @@ -3520,11 +3562,13 @@ "POWer:POWer:PRESET", "POWer:POWer:PSRR:AMPVal", "POWer:POWer:PSRR:AMPMode", + "POWer:POWer:PSRR:AMP[1-10]Val", "POWer:POWer:PSRR:ANALYSISMethod", "POWer:POWer:PSRR:AUTORbw", "POWer:POWer:PSRR:CONNECTSTATus", "POWer:POWer:PSRR:CONSTAMPlitude", "POWer:POWer:PSRR:FREQVal", + "POWer:POWer:PSRR:FREQ[1-11]Val", "POWer:POWer:PSRR:GENIPADDress", "POWer:POWer:PSRR:GENerator", "POWer:POWer:PSRR:IMPEDance", @@ -3583,6 +3627,7 @@ "POWer:POWer:SEQSETup", "POWer:POWer:SEQuence", "POWer:POWer:SOA:ISOURce", + "POWer:POWer:SOA:POINT", "POWer:POWer:SOA:POINT", "POWer:POWer:SOA:RECAllmask", "POWer:POWer:SOA:RECAllmask:FILEName", @@ -3809,6 +3854,53 @@ "REF_DALL:LABel:XPOS", "REF_DALL:LABel:YPOS", "REM", + "REMOTE:ACQMethod", + "REMOTE:ACQStatus", + "REMOTE:ACQUIRE", + "REMOTE:ADDNew", + "REMOTE:COMMInter", + "REMOTE:CONTROL", + "REMOTE:DELEte", + "REMOTE:LOGGING", + "REMOTE:NUMACq", + "REMOTE:S_CH:DIGGRP:D:THReshold", + "REMOTE:S_CH:DIGGRP:THReshold", + "REMOTE:S_CH:PROBETYPE", + "REMOTE:S_CH:SELect:DIGGRP:Dall", + "REMOTE:S_CH:STAte", + "REMOTE:S_CH:SV:CENTERFrequency", + "REMOTE:S_CH:SV:POSition", + "REMOTE:S_CH:SV:STARTFrequency", + "REMOTE:S_CH:SV:STATE", + "REMOTE:S_CH:SV:STOPFrequency", + "REMOTE:S_DCH:D:THReshold", + "REMOTE:S_DCH:GROUPTHReshold", + "REMOTE:S_DCH:SELect:DAll", + "REMOTE:SCOPe:BANDWidth", + "REMOTE:SCOPe:CONNECT", + "REMOTE:SCOPe:CONNECTIONMessage", + "REMOTE:SCOPe:CONNECTIONState", + "REMOTE:SCOPe:DISCONNECT", + "REMOTE:SCOPe:HORizontal:FASTframe:COUNt", + "REMOTE:SCOPe:HORizontal:FASTframe:MAXFrames", + "REMOTE:SCOPe:HORizontal:FASTframe:SELECTED", + "REMOTE:SCOPe:HORizontal:FASTframe:STATE", + "REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame", + "REMOTE:SCOPe:HORizontal:FASTframe:SUMFrame:STATE", + "REMOTE:SCOPe:IPADDress", + "REMOTE:SCOPe:MODELname", + "REMOTE:SCOPe:PORT", + "REMOTE:SCOPe:SYNC", + "REMOTE:SCOPe:State", + "REMOTE:SCOPe:VISACONNectiontype", + "REMOTE:SEQuence:CURrent", + "REMOTE:SEQuence:NUMSEQuence", + "REMOTE:SV:RBW", + "REMOTE:SV:RBWMode", + "REMOTE:SV:SPAN", + "REMOTE:SV:SPANRBWRatio", + "REMOTE:SV:WINDOW", + "REMOTE:USBDEscriptors", "RF:CLIPPing", "RF:DETECTionmethod:MODe", "RF:DETECTionmethod:RF_AVErage", @@ -3893,6 +3985,22 @@ "ROSc:STATE", "ROSc:TRACking", "RRB:STATE", + "S_CH:BANdwidth:ACTUal", + "S_CH:CLIPping", + "S_CH:COUPling", + "S_CH:DESKew", + "S_CH:LABel:COLor", + "S_CH:LABel:FONT:BOLD", + "S_CH:LABel:FONT:ITALic", + "S_CH:LABel:FONT:SIZE", + "S_CH:LABel:FONT:TYPE", + "S_CH:LABel:FONT:UNDERline", + "S_CH:LABel:NAMe", + "S_CH:LABel:XPOS", + "S_CH:LABel:YPOS", + "S_CH:OFFSet", + "S_CH:POSition", + "S_CH:SCAle", "SAVEON", "SAVEON:COUNt", "SAVEON:FILE:AUTOInc", @@ -4011,6 +4119,21 @@ "SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:DESTinationport:VALue", "SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SEQnum:VALue", "SEARCH:SEARCH:TRIGger:A:BUS:AUTOETHERnet:TCPHeader:SOUrceport:VALue", + "SEARCH:SEARCH:TRIGger:A:BUS:B:NRZ:CONDition", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:BLOCKDATa:VALue", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:CONDition", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATABITs", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:ECU:SENSor:VALue", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:A:VALue", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:DATa:REGion:B:VALue", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:ERRORTYPe", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:FUNCTIONCODETYPe", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGISTERADDRess", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:REGister:ADDRess:VALue", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSORSTATus:TYPe", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:SENSor:ADDRess:VALue", + "SEARCH:SEARCH:TRIGger:A:BUS:B:PSIFIVe:STATus:VALue", + "SEARCH:SEARCH:TRIGger:A:BUS:B:S8B10B:CONDition", "SEARCH:SEARCH:TRIGger:A:BUS:B:ARINC429A:CONDition", "SEARCH:SEARCH:TRIGger:A:BUS:B:ARINC429A:DATA:HIVALue", "SEARCH:SEARCH:TRIGger:A:BUS:B:ARINC429A:DATA:QUALifier", @@ -4408,6 +4531,8 @@ "SEARCH:SEARCH:TRIGger:A:BUS:I3C:MAXWRITe:VALue", "SEARCH:SEARCH:TRIGger:A:BUS:I3C:PACKets", "SEARCH:SEARCH:TRIGger:A:BUS:I3C:SADDress:VALue", + "SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:BROADCASTPacket", + "SEARCH:SEARCH:TRIGger:A:BUS:I3C:SDR:DIRECTPacket", "SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATEBYTe:VALue", "SEARCH:SEARCH:TRIGger:A:BUS:I3C:STATic:ADDRess", "SEARCH:SEARCH:TRIGger:A:BUS:I3C:SUPPORTBYTe:VALue", @@ -5014,6 +5139,7 @@ "SEARCH:SELected", "SEARCH:SPECTral:LIST", "SEARCH:STOP", + "SEARCHTABle", "SEARCHTABle:ADDNew", "SEARCHTABle:DELete", "SEARCHTABle:list", @@ -5148,6 +5274,25 @@ "SV:RBW", "SV:RBWMode", "SV:RF_PHASe:REFerence:MASTer", + "SV:S_CH:RF_AVErage:NUMAVg", + "SV:S_CH:RF_MAGnitude:FORMat", + "SV:S_CH:RF_PHASe:REFerence:DEGrees", + "SV:S_CH:RF_PHASe:REFerence:POSition", + "SV:S_CH:RF_PHASe:REFerence:TIMe", + "SV:S_CH:RF_PHASe:WRAP:DEGrees", + "SV:S_CH:RF_PHASe:WRAP:STATE", + "SV:S_CH:SELTrace", + "SV:S_CH:SELect:RF_AVErage", + "SV:S_CH:SELect:RF_FREQuency", + "SV:S_CH:SELect:RF_MAGnitude", + "SV:S_CH:SELect:RF_MAXHold", + "SV:S_CH:SELect:RF_MINHold", + "SV:S_CH:SELect:RF_NORMal", + "SV:S_CH:SELect:RF_PHASe", + "SV:S_CH:SELect:SPECtrogram", + "SV:S_CH:SQUELCH:STATE", + "SV:S_CH:SQUELCH:THReshold", + "SV:S_CH:UNIts", "SV:SPAN", "SV:SPANRBWRatio", "SV:SPECtrogram:CSCale:MAX", diff --git a/tests/sim_devices/devices.yaml b/tests/sim_devices/devices.yaml index f7311880..dd2b2466 100644 --- a/tests/sim_devices/devices.yaml +++ b/tests/sim_devices/devices.yaml @@ -235,10 +235,10 @@ resources: device: mso68b filename: scope/mso6b.yaml - # --- TekScopeSW --- - TCPIP::TEKSCOPESW-HOSTNAME::INSTR: - device: tekscopesw - filename: scope/tekscopesw.yaml + # --- TekScopePC --- + TCPIP::TEKSCOPEPC-HOSTNAME::INSTR: + device: tekscopepc + filename: scope/tekscopepc.yaml # --- TSOvu--- TCPIP::TSOVU-HOSTNAME::INSTR: diff --git a/tests/sim_devices/scope/tekscopesw.yaml b/tests/sim_devices/scope/tekscopepc.yaml similarity index 88% rename from tests/sim_devices/scope/tekscopesw.yaml rename to tests/sim_devices/scope/tekscopepc.yaml index 97212ab7..06742bce 100644 --- a/tests/sim_devices/scope/tekscopesw.yaml +++ b/tests/sim_devices/scope/tekscopepc.yaml @@ -1,7 +1,7 @@ --- spec: '1.1' devices: - tekscopesw: + tekscopepc: eom: USB INSTR: q: "\n" @@ -14,10 +14,10 @@ devices: r: "\n" dialogues: - q: '*IDN?' - r: TEKTRONIX,TekscopeSW,hostname,CF:91.1CT FV:1.44.3.1225 + r: TEKTRONIX,TekScopePC,TEKSCOPEPC-HOSTNAME,CF:91.1CT FV:1.44.3.1225 - q: HEADER OFF - q: :ETHERNET:NAME? - r: hostname + r: TEKSCOPEPC-HOSTNAME - q: :FILESystem:LDIR? r: 'E:,F:,G:,H:,I:,J:,K:' - q: :FILESystem:CWD "E:" diff --git a/tests/test_all_device_drivers.py b/tests/test_all_device_drivers.py index 345c8a96..91d00743 100644 --- a/tests/test_all_device_drivers.py +++ b/tests/test_all_device_drivers.py @@ -48,7 +48,7 @@ def test_all_device_drivers( ("SCOPE", "DPO70KDX-HOSTNAME", None, None, None), ("SCOPE", "DPO70KSX-HOSTNAME", None, None, None), ("SCOPE", "TSOVU-HOSTNAME", None, None, None), - ("SCOPE", "TEKSCOPESW-HOSTNAME", None, None, None), + ("SCOPE", "TEKSCOPEPC-HOSTNAME", None, None, None), ("SCOPE", "MSO2K-HOSTNAME", None, None, None), ("SCOPE", "MSO2KB-HOSTNAME", None, None, None), ("SCOPE", "DPO2K-HOSTNAME", None, None, None), diff --git a/tests/test_helpers.py b/tests/test_helpers.py index 7da6819e..3c07442b 100644 --- a/tests/test_helpers.py +++ b/tests/test_helpers.py @@ -70,7 +70,8 @@ def test_create_ping_command() -> None: @pytest.mark.parametrize( ("input_string", "expected_abbrev_model"), [ - ("TEKSCOPESW", "TekScopeSW"), + ("TEKSCOPESW", "TekScopePC"), + ("TEKSCOPEPC", "TekScopePC"), ("MSO54-123456", "MSO5"), ("MSO58B", "MSO5B"), ("MSO58LP", "MSO5LP"), diff --git a/tests/test_scopes.py b/tests/test_scopes.py index 8be98649..d547dbf2 100644 --- a/tests/test_scopes.py +++ b/tests/test_scopes.py @@ -15,7 +15,7 @@ from packaging.version import Version from tm_devices import DeviceManager -from tm_devices.drivers import MSO2, MSO2KB, MSO5, MSO5B, MSO6, MSO70KDX, TekScopeSW +from tm_devices.drivers import MSO2, MSO2KB, MSO5, MSO5B, MSO6, MSO70KDX, TekScopePC from tm_devices.drivers.pi.scopes.tekscope.tekscope import ( ExtendedSourceDeviceConstants, ParameterBounds, @@ -468,21 +468,20 @@ def test_tekscope3k_4k(device_manager: DeviceManager, capsys: pytest.CaptureFixt assert scope2.total_channels == 2 -def test_tekscopesw(device_manager: DeviceManager) -> None: - """Test the TekScopeSW implementation. +def test_tekscopepc(device_manager: DeviceManager) -> None: + """Test the TekScopePC implementation. Args: device_manager: The DeviceManager object. """ - scope: TekScopeSW = device_manager.add_scope("TEKSCOPESW-HOSTNAME") - # Assert TekScopeSW device was added and aliased properly - assert scope.hostname == "hostname" + scope: TekScopePC = device_manager.add_scope("TEKSCOPEPC-HOSTNAME") + # Assert TekScopePC device was added and aliased properly + assert scope.hostname == "TEKSCOPEPC-HOSTNAME" assert id(device_manager.get_scope(number_or_alias=scope.device_number)) == id(scope) - assert scope.all_channel_names_list == () + assert scope.all_channel_names_list == ("CH1", "CH2", "CH3", "CH4", "CH5", "CH6", "CH7", "CH8") assert scope.usb_drives == ("E:",) assert scope.ip_address == "" - assert not scope.total_channels - assert scope.all_channel_names_list == () + assert scope.total_channels == 8 def test_tekscope2k(device_manager: DeviceManager, tmp_path: pathlib.Path) -> None: diff --git a/tests/test_tm_devices.py b/tests/test_tm_devices.py index e056347c..6c770bf0 100644 --- a/tests/test_tm_devices.py +++ b/tests/test_tm_devices.py @@ -173,3 +173,24 @@ def test_tm_devices() -> None: Version(tm_devices.__version__) except InvalidVersion as exc: pytest.fail(f"{tm_devices.__version__} is not a valid version:\n{exc}") + + +def test_deprecated_tekscopesw() -> None: + """Verify the TekScopeSW deprecation warning is working.""" + with pytest.warns( + DeprecationWarning, + match="TekScopeSW is deprecated and will be removed in a future version, " + "please use TekScopePC instead.", + ): + # pylint: disable=import-outside-toplevel + # noinspection PyProtectedMember + from tm_devices.drivers import TekScopeSW # pylint: disable=no-name-in-module + assert TekScopeSW is tm_devices.drivers.TekScopePC + + # Check normal drivers + # pylint: disable=import-outside-toplevel + # noinspection PyPep8Naming + from tm_devices.drivers import MSO6 as TempMSO6 # noqa: N811 + from tm_devices.drivers.pi.scopes.tekscope.mso6 import MSO6 + + assert TempMSO6 is MSO6 diff --git a/tests/test_unsupported_device_type.py b/tests/test_unsupported_device_type.py index be93c337..e22a350d 100644 --- a/tests/test_unsupported_device_type.py +++ b/tests/test_unsupported_device_type.py @@ -49,6 +49,8 @@ def test_unsupported_device_type_class(device_manager: DeviceManager) -> None: "Not all functionality will be available in the device driver. " "Please consider contributing to tm_devices to implement official support for " "this device type.", + ), pytest.warns( + UserWarning, match='The "UNSUPPORTED" model is not supported by tm_devices' ): unsupported_device: CustomUnsupportedDeviceUnitTestOnly = ( device_manager.add_unsupported_device( @@ -72,6 +74,8 @@ def test_unsupported_device_type_class(device_manager: DeviceManager) -> None: "Not all functionality will be available in the device driver. " "Please consider contributing to tm_devices to implement official support for " "this device type.", + ), pytest.warns( + UserWarning, match='The "UNSUPPORTED" model is not supported by tm_devices' ): device_manager.load_config_file( Path(__file__).parent / "samples/unsupported_device_type_config.yaml"