itchcraft.support

Database of supported bite healers.

Attributes

SUPPORT_STATEMENTS

Hard-coded database of support statements for various bite healer models.

Classes

SupportStatement

Describes the level of support that Itchcraft offers for a given device.

VidPid

Tuple of USB vendor ID (VID) and product ID (PID).

Module Contents

class itchcraft.support.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.

vid: int

The USB vendor ID.

pid: int

The USB product ID.

vendor_name: str

The canonical vendor name from Itchcraft’s point of view.

product_name: str

The canonical product name from Itchcraft’s point of view.

supported: bool = True

Whether or not Itchcraft supports this model.

comment: str | None = None

Additional comments on the support status of this model.

connection_supplier: Callable[[usb.core.Device], contextlib.AbstractContextManager[BiteHealer]] | None = None

An optional Callable that, when invoked, establishes a connection to an attached device of this model.

Parameters:

usb_device – a PyUSB device to which to connect.

Returns:

a context manager representing a BiteHealer.

class itchcraft.support.VidPid

Bases: NamedTuple

Tuple of USB vendor ID (VID) and product ID (PID).

vid: int

The USB vendor ID.

pid: int

The USB product ID.

itchcraft.support.SUPPORT_STATEMENTS: list[SupportStatement]

Hard-coded database of support statements for various bite healer models.