PlatSim_Genova/TestEnvironment/env/site-packages/pyvisa/cmd_line_tools.py
2026-01-30 16:38:33 +01:00

70 lines
1.7 KiB
Python

# -*- coding: utf-8 -*-
"""Command line tools used for debugging and testing.
This file is part of PyVISA.
:copyright: 2019-2022 by PyVISA Authors, see AUTHORS for more details.
:license: MIT, see LICENSE for more details.
"""
from typing import Optional
def visa_main(command: Optional[str] = None) -> None:
"""Run the main entry point for command line tools.
Parameters
----------
command : str, optional
What command to invoke, if None the value is read from the command
line arguments
"""
import argparse
parser = argparse.ArgumentParser(description="PyVISA command-line utilities")
parser.add_argument(
"--backend",
"-b",
dest="backend",
action="store",
default=None,
help="backend to be used (default: ivi)",
)
if not command:
subparsers = parser.add_subparsers(title="command", dest="command")
subparsers.add_parser("info", help="print information to diagnose PyVISA")
subparsers.add_parser("shell", help="start the PyVISA console")
args = parser.parse_args()
if command:
args.command = command
if args.command == "info":
from pyvisa import util
util.get_debug_info()
elif args.command == "shell":
from pyvisa import shell
shell.main("@" + args.backend if args.backend else "")
shell.main("@" + args.backend if args.backend else "")
else:
raise ValueError(
f"Unknown command {args.command}. Valid values are: info and shell"
)
def visa_shell() -> None:
"""Run the VISA shell CLI program."""
visa_main("shell")
def visa_info() -> None:
"""Summarize the infos about PyVISA and VISA."""
visa_main("info")