Source code for RsNgx.Implementations.Log

from typing import List

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


# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
[docs]class LogCls: """Log commands group definition. 11 total commands, 7 Subgroups, 4 group commands""" def __init__(self, core: Core, parent): self._core = core self._cmd_group = CommandsGroup("log", core, parent) @property def channel(self): """channel commands group. 0 Sub-classes, 1 commands.""" if not hasattr(self, '_channel'): from .Channel import ChannelCls self._channel = ChannelCls(self._core, self._cmd_group) return self._channel @property def mode(self): """mode commands group. 0 Sub-classes, 1 commands.""" if not hasattr(self, '_mode'): from .Mode import ModeCls self._mode = ModeCls(self._core, self._cmd_group) return self._mode @property def count(self): """count commands group. 0 Sub-classes, 1 commands.""" if not hasattr(self, '_count'): from .Count import CountCls self._count = CountCls(self._core, self._cmd_group) return self._count @property def duration(self): """duration commands group. 0 Sub-classes, 1 commands.""" if not hasattr(self, '_duration'): from .Duration import DurationCls self._duration = DurationCls(self._core, self._cmd_group) return self._duration @property def interval(self): """interval commands group. 0 Sub-classes, 1 commands.""" if not hasattr(self, '_interval'): from .Interval import IntervalCls self._interval = IntervalCls(self._core, self._cmd_group) return self._interval @property def fname(self): """fname commands group. 0 Sub-classes, 1 commands.""" if not hasattr(self, '_fname'): from .Fname import FnameCls self._fname = FnameCls(self._core, self._cmd_group) return self._fname @property def stime(self): """stime commands group. 0 Sub-classes, 1 commands.""" if not hasattr(self, '_stime'): from .Stime import StimeCls self._stime = StimeCls(self._core, self._cmd_group) return self._stime # noinspection PyTypeChecker
[docs] def get_location(self) -> enums.Filename: """SCPI: LOG:LOCation \n Snippet: value: enums.Filename = driver.log.get_location() \n Sets or queries the logging location. \n :return: file_location: No help available """ response = self._core.io.query_str('LOG:LOCation?') return Conversions.str_to_scalar_enum(response, enums.Filename)
[docs] def set_location(self, file_location: enums.Filename) -> None: """SCPI: LOG:LOCation \n Snippet: driver.log.set_location(file_location = enums.Filename.DEF) \n Sets or queries the logging location. \n :param file_location: No help available """ param = Conversions.enum_scalar_to_str(file_location, enums.Filename) self._core.io.write(f'LOG:LOCation {param}')
[docs] def get_data(self) -> List[float]: """SCPI: LOG:DATA \n Snippet: value: List[float] = driver.log.get_data() \n Returns 12 sets of latest logging data with minimum logging interval (8 ms) . Depending on the models, the data is returned in the following format for a 2-channel models: <Ch1_voltage>, <Ch1_current>,<Ch1_power>,<Ch2_voltage>, <Ch2_current>,<Ch2_power>, <Ch1_voltage>, <Ch1_current>,<Ch1_power>, <Ch2_voltage>, <Ch2_current>,<Ch2_power>... \n :return: result: No help available """ response = self._core.io.query_bin_or_ascii_float_list('LOG:DATA?') return response
[docs] def get_triggered(self) -> int or bool: """SCPI: LOG:TRIGgered \n Snippet: value: int or bool = driver.log.get_triggered() \n Sets or queries the state for manual trigger logging function. \n :return: arg_0: (integer or boolean) No help available """ response = self._core.io.query_str('LOG:TRIGgered?') return Conversions.str_to_int_or_bool(response)
[docs] def set_triggered(self, arg_0: int or bool) -> None: """SCPI: LOG:TRIGgered \n Snippet: driver.log.set_triggered(arg_0 = 1) \n Sets or queries the state for manual trigger logging function. \n :param arg_0: (integer or boolean) 0 Manual trigger function is disabled. 1 Manual trigger function is enabled. """ param = Conversions.decimal_or_bool_value_to_str(arg_0) self._core.io.write(f'LOG:TRIGgered {param}')
[docs] def get_state(self) -> bool: """SCPI: LOG[:STATe] \n Snippet: value: bool = driver.log.get_state() \n Sets or queries the data logging state. \n :return: arg_0: No help available """ response = self._core.io.query_str('LOG:STATe?') return Conversions.str_to_bool(response)
[docs] def set_state(self, arg_0: bool) -> None: """SCPI: LOG[:STATe] \n Snippet: driver.log.set_state(arg_0 = False) \n Sets or queries the data logging state. \n :param arg_0: - 1: Data logging function is enabled. - 0: Data logging function is disabled.""" param = Conversions.bool_to_str(arg_0) self._core.io.write(f'LOG:STATe {param}')