jdxi_editor.midi.data.parameter.program.common

Defines the ProgramCommonParameter class for managing common program-level parameters in the JD-Xi synthesizer.

This class provides attributes and methods for handling program-wide settings, such as program name, level, tempo, and vocal effects. It also includes methods for retrieving display values, validating parameter values, and handling partial-specific addressing.

Example usage:

# Create an instance for Program Level program_level = ProgramCommonParameter(*ProgramCommonParameter.PROGRAM_LEVEL)

# Validate a value within range validated_value = program_level.validate_value(100)

# Get the display name of a parameter display_name = program_level.display_name # “Program Level”

# Get display value range display_range = program_level.get_display_value() # (0, 127)

# Retrieve a parameter by name param = ProgramCommonParameter.get_by_name(“PROGRAM_TEMPO”) if param:

print(param.name, param.min_val, param.max_val)

# Get switch text representation switch_text = program_level.get_switch_text(1) # “ON” or “—”

Classes

SystemCommonParam

Program Common parameters

ProgramCommonParam

Program Common parameters

Module Contents

class jdxi_editor.midi.data.parameter.program.common.SystemCommonParam(address: int, min_val: int | None = None, max_val: int | None = None, display_min: int | None = None, display_max: int | None = None, tooltip: str | None = None)[source]

Bases: picomidi.sysex.parameter.address.AddressParameter

Program Common parameters

display_min = None[source]
display_max = None[source]
tooltip = None[source]
MASTER_TUNE[source]
MASTER_KEY_SHIFT[source]
MASTER_LEVEL = (5, 0, 127, 0, 127, 'Volume of the program')[source]
get_display_value() Tuple[int, int][source]

Get the display value range (min, max) for the parameter

property display_name: str[source]

Get display name for the parameter

get_address_for_partial(partial_number: int = 0) Tuple[int, int][source]

Get parameter area and address adjusted for partial number.

Parameters:

partial_number – int The partial number

Returns:

Tuple[int, int] The address

property is_switch: bool[source]

Returns True if parameter is address binary/enum switch

get_switch_text(value: int) str[source]

Get display text for switch values :param value: int The value :return: str The display text

validate_value(value: int) int[source]

Validate and convert parameter value :param value: int The value :return: int The validated value

get_partial_number() int | None[source]

Returns the partial number (1-3) if this is address partial parameter, None otherwise

static get_by_name(param_name: str) object | None[source]

Get the Parameter by name. :param param_name: str The parameter name :return: Optional[object] The parameter Return the parameter member by name, or None if not found

class jdxi_editor.midi.data.parameter.program.common.ProgramCommonParam(address: int, min_val: int | None = None, max_val: int | None = None, display_min: int | None = None, display_max: int | None = None, tooltip: str | None = None)[source]

Bases: picomidi.sysex.parameter.address.AddressParameter

Program Common parameters

display_min = None[source]
display_max = None[source]
tooltip = None[source]
TONE_NAME_1 = (0, 32, 127)[source]
TONE_NAME_2 = (1, 32, 127)[source]
TONE_NAME_3 = (2, 32, 127)[source]
TONE_NAME_4 = (3, 32, 127)[source]
TONE_NAME_5 = (4, 32, 127)[source]
TONE_NAME_6 = (5, 32, 127)[source]
TONE_NAME_7 = (6, 32, 127)[source]
TONE_NAME_8 = (7, 32, 127)[source]
TONE_NAME_9 = (8, 32, 127)[source]
TONE_NAME_10 = (9, 32, 127)[source]
TONE_NAME_11 = (10, 32, 127)[source]
TONE_NAME_12 = (11, 32, 127)[source]
PROGRAM_LEVEL = (16, 0, 127, 0, 127, 'Volume of the program')[source]
PROGRAM_TEMPO[source]
VOCAL_EFFECT = (22, 0, 2, 0, 2)[source]
VOCAL_EFFECT_NUMBER = (28, 0, 20, 0, 20)[source]
VOCAL_EFFECT_PART = (29, 0, 1, 0, 1)[source]
AUTO_NOTE_SWITCH = (30, 0, 1, 0, 1)[source]
get_display_value() Tuple[int, int][source]

Get the display value range (min, max) for the parameter

property display_name: str[source]

Get display name for the parameter

get_address_for_partial(partial_number: int = 0) Tuple[int, int][source]

Get parameter area and address adjusted for partial number.

Parameters:

partial_number – int The partial number

Returns:

Tuple[int, int] The address

property is_switch: bool[source]

Returns True if parameter is address binary/enum switch

get_switch_text(value: int) str[source]

Get display text for switch values :param value: int The value :return: str The display text

validate_value(value: int) int[source]

Validate and convert parameter value :param value: int The value :return: int The validated value

get_partial_number() int | None[source]

Returns the partial number (1-3) if this is address partial parameter, None otherwise

static get_by_name(param_name: str) object | None[source]

Get the Parameter by name. :param param_name: str The parameter name :return: Optional[object] The parameter Return the parameter member by name, or None if not found