Source code for jdxi_editor.midi.map.parameter_address

"""
JDXi Parameter Address Map
"""

from __future__ import annotations

from jdxi_editor.midi.data.address.address import JDXiSysExAddressStartMSB as AreaMSB
from jdxi_editor.midi.data.address.address import JDXiSysExOffsetProgramLMB
from jdxi_editor.midi.data.address.address import (
    JDXiSysExOffsetProgramLMB as ProgramLMB,
)
from jdxi_editor.midi.data.address.address import (
    JDXiSysExOffsetSuperNATURALLMB as SuperNATURALLMB,
)
from jdxi_editor.midi.data.address.address import (
    JDXiSysExOffsetTemporaryToneUMB as TemporaryToneUMB,
)
from jdxi_editor.midi.data.parameter.analog.address import AnalogParam
from jdxi_editor.midi.data.parameter.arpeggio import ArpeggioParam
from jdxi_editor.midi.data.parameter.digital.common import DigitalCommonParam
from jdxi_editor.midi.data.parameter.digital.modify import DigitalModifyParam
from jdxi_editor.midi.data.parameter.digital.partial import DigitalPartialParam
from jdxi_editor.midi.data.parameter.drum import DrumPartialParam
from jdxi_editor.midi.data.parameter.drum.common import DrumCommonParam
from jdxi_editor.midi.data.parameter.effects.effects import (
    DelayParam,
    Effect1Param,
    Effect2Param,
    ReverbParam,
)
from jdxi_editor.midi.data.parameter.program.common import ProgramCommonParam
from jdxi_editor.midi.data.parameter.program.zone import ProgramZoneParam
from jdxi_editor.midi.data.parameter.system.common import SystemCommonParam
from jdxi_editor.midi.data.parameter.system.controller import SystemControllerParam
from jdxi_editor.midi.data.parameter.vocal_fx import VocalFXParam

[docs] PARAMETER_ADDRESS_NAME_MAP = { (AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.COMMON.name): ProgramCommonParam, (AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.VOCAL_EFFECT.name): VocalFXParam, (AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.EFFECT_1.name): Effect1Param, (AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.EFFECT_2.name): Effect2Param, (AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.DELAY.name): DelayParam, (AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.REVERB.name): ReverbParam, (AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.CONTROLLER.name): ArpeggioParam, ( AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.ZONE_DIGITAL_SYNTH_1.name, ): ProgramZoneParam, ( AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.ZONE_DIGITAL_SYNTH_2.name, ): ProgramZoneParam, (AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.ZONE_ANALOG.name): ProgramZoneParam, (AreaMSB.TEMPORARY_PROGRAM.name, ProgramLMB.ZONE_DRUM.name): ProgramZoneParam, ( TemporaryToneUMB.DIGITAL_SYNTH_1.name, SuperNATURALLMB.COMMON.name, ): DigitalCommonParam, ( TemporaryToneUMB.DIGITAL_SYNTH_1.name, SuperNATURALLMB.MODIFY.name, ): DigitalModifyParam, ( TemporaryToneUMB.DIGITAL_SYNTH_1.name, SuperNATURALLMB.PARTIAL_1.name, ): DigitalPartialParam, ( TemporaryToneUMB.DIGITAL_SYNTH_1.name, SuperNATURALLMB.PARTIAL_2.name, ): DigitalPartialParam, ( TemporaryToneUMB.DIGITAL_SYNTH_1.name, SuperNATURALLMB.PARTIAL_3.name, ): DigitalPartialParam, ( TemporaryToneUMB.DIGITAL_SYNTH_2.name, SuperNATURALLMB.COMMON.name, ): DigitalCommonParam, ( TemporaryToneUMB.DIGITAL_SYNTH_2.name, SuperNATURALLMB.MODIFY.name, ): DigitalModifyParam, ( TemporaryToneUMB.DIGITAL_SYNTH_2.name, SuperNATURALLMB.PARTIAL_1.name, ): DigitalPartialParam, ( TemporaryToneUMB.DIGITAL_SYNTH_2.name, SuperNATURALLMB.PARTIAL_2.name, ): DigitalPartialParam, ( TemporaryToneUMB.DIGITAL_SYNTH_2.name, SuperNATURALLMB.PARTIAL_3.name, ): DigitalPartialParam, (TemporaryToneUMB.ANALOG_SYNTH.name, ProgramLMB.COMMON.name): AnalogParam, ( TemporaryToneUMB.DRUM_KIT.name, ProgramLMB.COMMON.name, ): DrumCommonParam, # Default to Drums ("SYSTEM_COMMON", "COMMON"): SystemCommonParam, ("SYSTEM_CONTROLLER", "COMMON"): SystemControllerParam, # since there are 36 partials ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_1.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_2.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_3.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_4.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_5.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_6.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_7.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_8.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_9.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_10.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_11.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_12.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_13.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_14.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_15.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_16.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_17.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_18.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_19.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_20.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_21.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_22.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_23.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_24.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_25.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_26.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_27.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_28.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_29.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_30.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_31.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_32.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_33.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_34.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_35.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_36.name, ): DrumPartialParam, ( TemporaryToneUMB.DRUM_KIT.name, JDXiSysExOffsetProgramLMB.DRUM_KIT_PART_37.name, ): DrumPartialParam, }
[docs] class JDXiMapParameterAddress:
[docs] MAP = PARAMETER_ADDRESS_NAME_MAP