3. Enums (constants)
Intead of arbitrary hex numbers we prefer using properly typed enums. They are a bit longer to write, but the benefits (clarity and type safety) are worth it.
- class trainlib_async.enums.ColorSensor(value)
Bases:
IntEnum
Color sensor identification.
- FRONT = 1
- BACK = 2
- class trainlib_async.enums.MovementDirection(value)
Bases:
IntEnum
An enumeration.
- CURRENT = 0
- FORWARD = 1
- BACKWARD = 2
- STOP = 3
- INVERT = 4
- class trainlib_async.enums.SnapColorValue(value)
Bases:
IntFlag
Single snap color.
- to_rgb_bytes() Tuple[int, int, int]
Convert the color’s value to 3 bytes (0-255) to form an RGB tuple.
- classmethod random(including_black: bool = True)
Return a random color.
- BLACK = 0
- RED = 1
- GREEN = 2
- BLUE = 4
- YELLOW = 3
- MAGENTA = 5
- CYAN = 6
- WHITE = 7
- UNKNOWN = 8
- class trainlib_async.enums.SpeedLevel(value)
Bases:
IntEnum
An enumeration.
- STOP = 0
- LEVEL1 = 1
- LEVEL2 = 2
- LEVEL3 = 3