Files
radar_system/python_app/hardware_full/librevna_driver/exceptions.py
T
2026-03-05 14:42:33 +03:00

40 lines
1.0 KiB
Python

"""Project exceptions for direct USB and protocol operations."""
from __future__ import annotations
class LibreVNAError(Exception):
"""Base error for all library exceptions."""
class ProtocolVersionMismatch(LibreVNAError):
"""Raised when device protocol version differs from required version."""
class CRCError(LibreVNAError):
"""Raised when packet CRC validation fails."""
class NackError(LibreVNAError):
"""Raised when the device explicitly responds with NACK."""
class TimeoutError(LibreVNAError):
"""Raised when waiting for packet/ack times out."""
class DeviceDisconnectedError(LibreVNAError):
"""Raised when USB transport is disconnected or unavailable."""
class IncompleteSweepError(LibreVNAError):
"""Raised when a sweep does not contain the required points."""
class ParseError(LibreVNAError):
"""Raised when packet decoding or payload parsing fails."""
class UnsupportedHardwareError(LibreVNAError):
"""Raised when a requested operation is unsupported for hardware family."""