itchcraft.support ================= .. py:module:: itchcraft.support .. autoapi-nested-parse:: Database of supported bite healers. Attributes ---------- .. autoapisummary:: itchcraft.support.SUPPORT_STATEMENTS Classes ------- .. autoapisummary:: itchcraft.support.SupportStatement itchcraft.support.VidPid Module Contents --------------- .. py:class:: SupportStatement Describes the level of support that Itchcraft offers for a given device. A metadata object that establishes whether or not a given combination of vendor ID (VID) and product id (PID) is a supported bite healer, and which model it is. .. py:attribute:: vid :type: int The USB vendor ID. .. py:attribute:: pid :type: int The USB product ID. .. py:attribute:: vendor_name :type: str The canonical vendor name from Itchcraft’s point of view. .. py:attribute:: product_name :type: str The canonical product name from Itchcraft’s point of view. .. py:attribute:: supported :type: bool :value: True Whether or not Itchcraft supports this model. .. py:attribute:: comment :type: Optional[str] :value: None Additional comments on the support status of this model. .. py:attribute:: connection_supplier :type: Optional[Callable[[usb.core.Device], contextlib.AbstractContextManager[itchcraft.types.BiteHealer]]] :value: None An optional :py:class:`~typing.Callable` that, when invoked, establishes a connection to an attached device of this model. :param usb_device: a PyUSB device to which to connect. :return: a context manager representing a :py:class:`~.types.BiteHealer`. .. py:class:: VidPid Bases: :py:obj:`NamedTuple` Tuple of USB vendor ID (VID) and product ID (PID). .. py:attribute:: vid :type: int The USB vendor ID. .. py:attribute:: pid :type: int The USB product ID. .. py:data:: SUPPORT_STATEMENTS :type: list[SupportStatement] Hard-coded database of support statements for various bite healer models.