from .......Internal.Core import Core
from .......Internal.CommandsGroup import CommandsGroup
from .......Internal import Conversions
from ....... import enums
from ....... import repcap
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class StatusCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("status", core, parent)
# noinspection PyTypeChecker
[docs]
def get(self, bus=repcap.Bus.Default, busUsbPacket=repcap.BusUsbPacket.Default, busFieldNull=repcap.BusFieldNull.Default) -> enums.BusPcieResultState:
"""
``BUS<*>:PCIE:RESult:PACKet<*>:FLD<*>:STATus`` \n
Snippet: ``value: enums.BusPcieResultState = driver.bus.pcie.result.packet.fld.status.get(bus = repcap.Bus.Default, busUsbPacket = repcap.BusUsbPacket.Default, busFieldNull = repcap.BusFieldNull.Default)`` \n
Returns the status of the frame with the selected field number within the packet with the selected packet number (for the
selected serial bus) .
:param bus: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Bus')
:param busUsbPacket: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Packet')
:param busFieldNull: optional repeated capability selector. Default value: Nr0 (settable in the interface 'Fld')
:return: state: OK | MALF | CRC16 | ECRC | LCRC | LEN | POE | MEE | UNCorrelated | FCRC | FPERror | UNKNown | OUTRange | INComplete | SYNCerror \n
- MALF: Malformed packet
- CRC16: CRC16 error
- ECRC: ECRC error
- LCRC: Link CRC error
- LEN: Length error
- POE: TLP prefix error
- MEE: Max end-end TLP prefix error
- FCRC: Fabric packet CRC
- FPERror: Fabric packet error
- OUTRange: Out of range
- INComplete: Incomplete
- SYNCerror: Synchronization error
"""
bus_cmd_val = self._cmd_group.get_repcap_cmd_value(bus, repcap.Bus)
busUsbPacket_cmd_val = self._cmd_group.get_repcap_cmd_value(busUsbPacket, repcap.BusUsbPacket)
busFieldNull_cmd_val = self._cmd_group.get_repcap_cmd_value(busFieldNull, repcap.BusFieldNull)
response = self._core.io.query_str(f'BUS{bus_cmd_val}:PCIE:RESult:PACKet{busUsbPacket_cmd_val}:FLD{busFieldNull_cmd_val}:STATus?')
return Conversions.str_to_scalar_enum(response, enums.BusPcieResultState)