jdxi_editor.midi.data.parameter.program.zone

Defines the ProgramZoneParameter 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

ProgramZoneParam

Program Common parameters

Module Contents

class jdxi_editor.midi.data.parameter.program.zone.ProgramZoneParam(address: int, min_val: int | None = None, max_val: int | None = None, display_min: int | None = None, display_max: int | None = None, partial_number: int | None = 0)[source]

Bases: picomidi.sysex.parameter.address.AddressParameter

Program Common parameters

display_min = None[source]
display_max = None[source]
partial_number = 0[source]
ARPEGGIO_SWITCH = (3, 0, 1, 0, 1)[source]
ZONAL_OCTAVE_SHIFT[source]
get_display_value() Tuple[int, int][source]

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

Returns:

Tuple[int, int] The display value range

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 parameter area and address

property is_switch: bool[source]

Returns True if parameter is address binary/enum switch

Returns:

bool True if parameter is address binary/enum switch

get_switch_text(value: int) str[source]

Get display text for switch values

Parameters:

value – int The value

Returns:

str The display text

validate_value(value: int) int[source]

Validate and convert parameter value

Parameters:

value – int The value

Returns:

int The validated value

set_partial_number(partial_number: int) int | None[source]

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

Parameters:

partial_number – int The partial number

Returns:

Optional[int] The partial number

get_partial_number() int | None[source]

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

Returns:

Optional[int] The partial number

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

Get the Parameter by name.

Parameters:

param_name – str The parameter name

Returns:

Optional[object] The parameter

Return the parameter member by name, or None if not found