Source code for jdxi_editor.jdxi.preset.utils

from decologr import Decologr as log

from jdxi_editor.midi.data.programs.digital import DIGITAL_PRESET_LIST


[docs] def get_preset_values(preset_index, preset_list=DIGITAL_PRESET_LIST): """ Retrieve MSB, LSB, and PC values for a given preset. :param preset_index: int The index of the preset :param preset_list: list The list of presets :return: tuple The MSB, LSB, and PC values """ # Lazy import to avoid circular dependency from jdxi_editor.ui.editors.helpers.preset import get_preset_parameter_value msb = get_preset_parameter_value("msb", preset_index, preset_list) lsb = get_preset_parameter_value("lsb", preset_index, preset_list) pc = get_preset_parameter_value("pc", preset_index, preset_list) if None in [msb, lsb, pc]: log.message(f"Could not retrieve preset parameters for program {preset_index}") return None, None, None log.message(f"Retrieved MSB, LSB, PC: {msb}, {lsb}, {pc}") return msb, lsb, pc