jdxi_editor.midi.data.address.parser ==================================== .. py:module:: jdxi_editor.midi.data.address.parser .. autoapi-nested-parse:: Parser Example Usage class ProgramAddress(Address): COMMON = 0x18 DIGITAL_1 = 0x19 sysex_addr = b' ' parsed = parse_sysex_address(sysex_addr, ProgramAddress) if parsed: base, offset = parsed print(f"Base: {base}, Offset: {offset}") else: print("Unknown base address") Output: from Base: , Offset: (0, 32, 0) Attributes ---------- .. autoapisummary:: jdxi_editor.midi.data.address.parser.T Functions --------- .. autoapisummary:: jdxi_editor.midi.data.address.parser.parse_sysex_address Module Contents --------------- .. py:data:: T .. py:function:: parse_sysex_address(address_bytes: bytes, enum_cls: Type[T]) -> Optional[Tuple[T, Tuple[int, int, int]]] Parse a 4-byte SysEx address into a (base, offset) tuple. :param address_bytes: bytes The 4-byte SysEx address :param enum_cls: Type[T] The enum class :return: Optional[Tuple[T, Tuple[int, int, int]]] The (base, offset) tuple