Source code for jdxi_editor.midi.sysex.request.midi_requests

from __future__ import annotations

from jdxi_editor.midi.sysex.request.data import (
    SYSTEM_RQ11_HEADER,
    TEMPORARY_PROGRAM_RQ11_HEADER,
    TEMPORARY_TONE_RQ11_HEADER,
)
from jdxi_editor.midi.sysex.request.factory import create_request
from jdxi_editor.midi.sysex.request.hex import JDXISysExHex


[docs] class MidiRequests: """ Class for creating MIDI requests. """
[docs] PROGRAM_COMMON = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_COMMON_AREA, "00 00 00 00 00 40", )
[docs] PROGRAM_VOCAL_EFFECT = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_VOCAL_EFFECT_AREA, "00 00 00 00 00 18", )
[docs] PROGRAM_CONTROLLER = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_CONTROLLER_AREA, "00 00 00 0C", )
# Program Effects (Perl: Effect 1, Effect 2, Delay, Reverb)
[docs] PROGRAM_EFFECT1 = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_EFFECT1_AREA, "00 00 01 11", )
[docs] PROGRAM_EFFECT2 = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_EFFECT2_AREA, "00 00 01 11", )
[docs] PROGRAM_DELAY = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_DELAY_AREA, "00 00 00 64", )
[docs] PROGRAM_REVERB = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_REVERB_AREA, "00 00 00 63", )
# Program Zone (per-zone Arpeggio Switch, Zone Octave Shift) - 35 bytes each
[docs] PROGRAM_ZONE_DIGITAL1 = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_ZONE_DIGITAL1_AREA, "00 00 00 23", )
[docs] PROGRAM_ZONE_DIGITAL2 = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_ZONE_DIGITAL2_AREA, "00 00 00 23", )
[docs] PROGRAM_ZONE_ANALOG = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_ZONE_ANALOG_AREA, "00 00 00 23", )
[docs] PROGRAM_ZONE_DRUMS = create_request( TEMPORARY_PROGRAM_RQ11_HEADER, JDXISysExHex.PROGRAM_ZONE_DRUMS_AREA, "00 00 00 23", )
[docs] SYSTEM_COMMON = create_request( SYSTEM_RQ11_HEADER, JDXISysExHex.SYSTEM_COMMON_AREA.split()[0], " ".join(JDXISysExHex.SYSTEM_COMMON_AREA.split()[1:]), )
[docs] SYSTEM_CONTROLLER = create_request( SYSTEM_RQ11_HEADER, JDXISysExHex.SYSTEM_CONTROLLER_AREA.split()[0], " ".join(JDXISysExHex.SYSTEM_CONTROLLER_AREA.split()[1:]), )
[docs] DIGITAL1_COMMON = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL1_COMMON, "00 00 00 00 00 40", )
[docs] DIGITAL1_PARTIAL1 = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL1_COMMON, "20 00 00 00 00 40", )
[docs] DIGITAL1_PARTIAL2 = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL1_COMMON, "21 00 00 00 00 40", )
[docs] DIGITAL1_PARTIAL3 = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL1_COMMON, "22 00 00 00 00 40", )
[docs] DIGITAL1_MODIFY = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL1_COMMON, "50 00 00 00 00 40", )
[docs] DIGITAL2_COMMON = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL2_COMMON, "00 00 00 00 00 40", )
[docs] DIGITAL2_PARTIAL1 = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL2_COMMON, "20 00 00 00 00 40", )
[docs] DIGITAL2_PARTIAL2 = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL2_COMMON, "21 00 00 00 00 40", )
[docs] DIGITAL2_PARTIAL3 = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL2_COMMON, "22 00 00 00 00 40", )
[docs] DIGITAL2_MODIFY = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DIGITAL2_COMMON, "50 00 00 00 00 40", )
[docs] ANALOG = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.ANALOG, "00 00 00 00 00 40" )
[docs] DRUMS = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DRUMS, "00 00 00 00 00 12" )
[docs] DRUMS_BD1 = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DRUMS, "2E 00 00 00 01 43" )
[docs] DRUMS_RIM = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DRUMS, "30 00 00 00 01 43" )
[docs] DRUMS_BD2 = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DRUMS, "32 00 00 00 01 43" )
[docs] DRUMS_CLAP = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DRUMS, "34 00 00 00 01 43" )
[docs] DRUMS_BD3 = create_request( TEMPORARY_TONE_RQ11_HEADER, JDXISysExHex.DRUMS, "36 00 00 00 01 43" )
[docs] DRUMS_BD1_RIM_BD2_CLAP_BD3 = [ DRUMS, DRUMS_BD1, DRUMS_RIM, DRUMS_BD2, DRUMS_CLAP, DRUMS_BD3, ]
[docs] DIGITAL1 = [ DIGITAL1_COMMON, DIGITAL1_PARTIAL1, DIGITAL1_PARTIAL2, DIGITAL1_PARTIAL3, DIGITAL1_MODIFY, ]
[docs] DIGITAL2 = [ DIGITAL2_COMMON, DIGITAL2_PARTIAL1, DIGITAL2_PARTIAL2, DIGITAL2_PARTIAL3, DIGITAL2_MODIFY, ]
# Define program and tone name requests
[docs] PROGRAM_TONE_NAME_PARTIAL = [ PROGRAM_COMMON, ANALOG, DRUMS, *DIGITAL1, *DIGITAL2, ]
# Define program and tone name requests
[docs] PROGRAM_TONE_NAME = [ PROGRAM_COMMON, ANALOG, DRUMS, DIGITAL1_COMMON, DIGITAL2_COMMON, ]