Skip to content

_Framework.ControlSurface (runtime)

Live 12 — Live Object Model & framework reference (descriptions and signatures).

Module constants

  • CS_LIST_KEY = 'control_surfaces'
  • MIDI_CC_TYPE = 1
  • MIDI_NOTE_TYPE = 0
  • MIDI_PB_STATUS = 224
  • MIDI_PB_TYPE = 2
  • MIDI_SYSEX_TYPE = 3
  • logger = <Logger _Framework.ControlSurface (INFO)>

Functions

const(value)

contextmanager(func)

find_if(predicate, seq)

first(seq)

get_control_surfaces()

in_range(value, lower_bound, upper_open_bound)

inject(**k)

old_hasattr(obj, attr)

profile(fn)

publish_control_surface(control_surface)

wraps(wrapped, assigned=('__module__', '__name__', '__qualname__', '__doc__', '__annotations__'), updated=('__dict__',))

Classes

class BooleanContext

Properties

  • value

Methods

Manager(managed=None, update_value=None, *a, **k)
__call__(self, update_value=None)

Call self as a function.

__init__(self, default_value=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

Attributes

  • default_value = False - bool(x) -> bool

class ControlSurface(Subject, SlotManager)

Properties

  • _tasks
  • components
  • in_component_guard
  • root_components

Methods

__init__(self, c_instance=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_component_guard(self)
_control_surfaces(self)
_disconnect_and_unregister_all_components(self)
_do_receive_midi(self, midi_bytes)
_do_send_midi(self, midi_event_bytes)
_flush_midi_messages(self)
_get_tasks(self)
_install_forwarding(self, midi_map_handle, control)
_install_mapping(self, midi_map_handle, control, parameter, feedback_delay, feedback_map)
_on_scene_list_changed(self)
_on_selected_scene_changed(self)
_on_selected_track_changed(self)
_on_track_list_changed(self)
_process_remaining_scheduled_messages(self)
_refresh_displays(self)
_register_component(self, component)
_register_control(self, control)
_send_midi(self, midi_event_bytes, optimized=True)
_set_session_highlight(self, track_offset, scene_offset, width, height, include_return_tracks)
_set_suppress_rebuild_requests(self, suppress_requests)
_toggle_lock(self)
_translate_message(self, type, from_identifier, from_channel, to_identifier, to_channel)
accumulating_midi_messages(self)
add_disconnect_listener(self, slot, identify_sender=False, *a, **k)
add_received_midi_listener(self, slot, identify_sender=False, *a, **k)
application(self)
build_midi_map(self, midi_map_handle)
call_listeners(self, listeners)
can_lock_to_devices(self)
clear_disconnect_listeners(self)
clear_received_midi_listeners(self)
component_guard(self)
connect_script_instances(self, instanciated_scripts)
disconnect(self)
disconnect_disconnectable(self, slot)
disconnect_has_listener(self, slot)
disconnect_listener_count(self)
find_disconnectable(self, predicate)
get_control_by_name(self, control_name)
get_recipient_for_nonsysex_midi_message(self, midi_bytes)
handle_nonsysex(self, midi_bytes)
handle_sysex(self, midi_bytes)
has_disconnectable(self, slot)
highlighting_session_component(self)
instance_identifier(self)
is_sysex_message(self, midi_bytes)
lock_to_device(self, device)
log_message(self, *message)
notify_disconnect(self, *a, **k)
notify_received_midi(self, *a, **k)
port_settings_changed(self)
receive_midi(self, midi_bytes)
received_midi_has_listener(self, slot)
received_midi_listener_count(self)
refresh_state(self)
register_disconnectable(self, slot)
register_slot(self, *a, **k)
register_slot_manager(self, *a, **k)
release_controlled_track(self)
remove_disconnect_listener(self, slot)
remove_received_midi_listener(self, slot)
request_rebuild_midi_map(self)
restore_bank(self, bank_index)
schedule_message(self, delay_in_ticks, callback, parameter=None)
set_controlled_track(self, track)
set_device_component(self, device_component)
set_enabled(self, enable)
set_feedback_channels(self, channels)
set_highlighting_session_component(self, session_component)
set_pad_translations(self, pad_translations)
show_message(self, message)
song(self)
suggest_input_port(self)
suggest_map_mode(self, cc_no, channel)
suggest_needs_takeover(self, cc_no, channel)
suggest_output_port(self)
supports_pad_translation(self)
suppressing_rebuild_requests(self)
toggle_lock(self)
unlock_from_device(self, device)
unregister_disconnectable(self, slot)
update(self)
update_display(self)

Attributes

  • received_midi = () - Built-in immutable sequence.

class InputControlElement(NotifyingControlElement)

Properties

  • _last_sent_value
  • mapping_sensitivity
  • resource
  • suppress_script_forwarding

Methods

ProxiedInterface(outer=None, *a, **k)
__init__(self, msg_type=None, channel=None, identifier=None, sysex_identifier=None, request_rebuild_midi_map=None, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_do_send_value(self, value, channel=None)
_get_mapping_sensitivity(self)
_get_suppress_script_forwarding(self)
_mapping_feedback_values(self)
_on_resource_lost(self, client)
_on_resource_received(self, client, *a, **k)
_report_value(self, value, is_input)
_resource_type(on_received_callback=None, on_lost_callback=None, *a, **k)
_send_delayed_messages(self)
_set_mapping_sensitivity(self, sensitivity)
_set_suppress_script_forwarding(self, value)
_status_byte(self, channel)
_verify_value(self, value)
add_value_listener(self, slot, identify_sender=False, *a, **k)
begin_gesture(self)
clear_send_cache(self)
clear_value_listeners(self)
connect_to(self, parameter)
disconnect(self)
end_gesture(self)
force_next_send(self)
identifier_bytes(self)
install_connections(self, install_translation, install_mapping, install_forwarding)
mapped_parameter(self)
message_channel(self)
message_identifier(self)
message_map_mode(self)
message_sysex_identifier(self)
message_type(self)
needs_takeover(self)
notify_ownership_change(self, client, grabbed, element_ownership_handler=None)
notify_value(self, *a, **k)
original_channel(self)
original_identifier(self)
receive_value(self, value)
release_parameter(self)
remove_value_listener(self, slot)
reset(self)
reset_state(self)
script_wants_forwarding(self)
send_midi(self, message)
send_value(self, value, force=False, channel=None)
set_channel(self, channel)
set_feedback_delay(self, delay)
set_identifier(self, identifier)
set_needs_takeover(self, needs_takeover)
set_report_values(self, report_input, report_output)
use_default_message(self)
value_has_listener(self, slot)
value_listener_count(self)

Attributes

  • _has_resource = False - bool(x) -> bool
  • _has_task_group = False - bool(x) -> bool
  • _input_signal_listener_count = 0 - int([x]) -> integer
  • _resource = <_Framework.Util.lazy_attribute object at 0x129db44d0>
  • _tasks = <_Framework.Util.lazy_attribute object at 0x129db4710>
  • canonical_parent = None
  • name = '' - str(object='') -> str
  • num_delayed_messages = 1 - int([x]) -> integer
  • optimized_send_midi = True - bool(x) -> bool
  • proxied_interface = <_Framework.Util.lazy_attribute object at 0x129db4290>
  • send_depends_on_forwarding = True - bool(x) -> bool

class MessageScheduler

Properties

  • is_idling

Methods

__init__(self, send_message_callback, timer)

Initialize self. See help(type(self)) for accurate signature.

_process_queue(self)
_process_request(self, request)
_process_single_request(self)
_queue(self, request)
disconnect(self, owner)
grab(self, owner)
handle_message(self, message)
handle_timeout(self)
release(self, owner)
send(self, owner, message)
send_receive(self, owner, message, timeout)

class OptimizedControlSurface(ControlSurface)

Properties

  • _tasks
  • components
  • in_component_guard
  • root_components

Methods

__init__(self, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_component_guard(self)
_control_surfaces(self)
_disconnect_and_unregister_all_components(self)
_do_receive_midi(self, midi_bytes)
_do_send_midi(self, midi_event_bytes)
_flush_midi_messages(self)
_get_tasks(self)
_install_forwarding(self, midi_map_handle, control)
_install_mapping(self, midi_map_handle, control, parameter, feedback_delay, feedback_map)
_on_scene_list_changed(self)
_on_selected_scene_changed(self)
_on_selected_track_changed(self)
_on_track_list_changed(self)
_process_remaining_scheduled_messages(self)
_refresh_displays(self)
_register_component(self, component)
_register_control(self, control)
_send_midi(self, midi_event_bytes, optimized=True)
_set_session_highlight(self, track_offset, scene_offset, width, height, include_return_tracks)
_set_suppress_rebuild_requests(self, suppress_requests)
_toggle_lock(self)
_translate_message(self, type, from_identifier, from_channel, to_identifier, to_channel)
accumulating_midi_messages(self)
add_disconnect_listener(self, slot, identify_sender=False, *a, **k)
add_received_midi_listener(self, slot, identify_sender=False, *a, **k)
application(self)
build_midi_map(self, midi_map_handle)
call_listeners(self, listeners)
can_lock_to_devices(self)
clear_disconnect_listeners(self)
clear_received_midi_listeners(self)
component_guard(self)
connect_script_instances(self, instanciated_scripts)
disconnect(self)
disconnect_disconnectable(self, slot)
disconnect_has_listener(self, slot)
disconnect_listener_count(self)
find_disconnectable(self, predicate)
get_control_by_name(self, control_name)
get_recipient_for_nonsysex_midi_message(self, midi_bytes)
handle_nonsysex(self, midi_bytes)
handle_sysex(self, midi_bytes)
has_disconnectable(self, slot)
highlighting_session_component(self)
instance_identifier(self)
is_sysex_message(self, midi_bytes)
lock_to_device(self, device)
log_message(self, *message)
notify_disconnect(self, *a, **k)
notify_received_midi(self, *a, **k)
port_settings_changed(self)
receive_midi(self, midi_bytes)
received_midi_has_listener(self, slot)
received_midi_listener_count(self)
refresh_state(self)
register_disconnectable(self, slot)
register_slot(self, *a, **k)
register_slot_manager(self, *a, **k)
release_controlled_track(self)
remove_disconnect_listener(self, slot)
remove_received_midi_listener(self, slot)
request_rebuild_midi_map(self)
restore_bank(self, bank_index)
schedule_message(self, delay_in_ticks, callback, parameter=None)
set_controlled_track(self, track)
set_device_component(self, device_component)
set_enabled(self, enable)
set_feedback_channels(self, channels)
set_highlighting_session_component(self, session_component)
set_pad_translations(self, pad_translations)
show_message(self, message)
song(self)
suggest_input_port(self)
suggest_map_mode(self, cc_no, channel)
suggest_needs_takeover(self, cc_no, channel)
suggest_output_port(self)
supports_pad_translation(self)
suppressing_rebuild_requests(self)
toggle_lock(self)
unlock_from_device(self, device)
unregister_disconnectable(self, slot)
update(self)
update_display(self)

Attributes

  • received_midi = () - Built-in immutable sequence.

class OptimizedOwnershipHandler(ElementOwnershipHandler)

Methods

__init__(self, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

commit_ownership_changes(self, log_message=None, traceback=None)
handle_ownership_change(self, control, client, status)

class PhysicalDisplayElement(DisplayElement, NotifyingControlElement)

Properties

  • display_string
  • message_header
  • message_tail
  • num_segments
  • resource
  • segments
  • subdisplay
  • width

Methods

ProxiedInterface(outer=None, *a, **k)
__init__(self, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

_build_display_message(self, display)
_build_inner_message(self, displays)
_build_message(self, displays)
_disconnect_segments(self)
_on_central_resource_lost(self, display_client)
_on_central_resource_received(self, display_client)
_on_resource_lost(self, client)
_on_resource_received(self, client, *a, **k)
_request_send_message(self)
_resource_type(on_received_callback=None, on_lost_callback=None, *a, **k)
_send_message(self)
_translate_char(self, char_to_translate)
_translate_string(self, string)
add_value_listener(self, slot, identify_sender=False, *a, **k)

Called when the control element receives a MIDI value from the hardware

clear_send_cache(self)
clear_value_listeners(self)

Called when the control element receives a MIDI value from the hardware

disconnect(self)
display_message(self, message)
nested_display_resource_factory(self, display)
notify_ownership_change(self, client, grabbed, element_ownership_handler=None)
notify_value(self, *a, **k)

Called when the control element receives a MIDI value from the hardware

remove_value_listener(self, slot)

Called when the control element receives a MIDI value from the hardware

reset(self)
reset_state(self)
segment(self, index)
send_midi(self, midi_bytes)
set_block_messages(self, block)
set_clear_all_message(self, message)
set_data_sources(self, sources)
set_message_parts(self, header, tail)
set_num_segments(self, num_segments)
set_translation_table(self, translation_table)
update(self)
value_has_listener(self, slot)

Called when the control element receives a MIDI value from the hardware

value_listener_count(self)

Called when the control element receives a MIDI value from the hardware

Attributes

  • _ascii_translations = {'0': 48, '1': 49, '2': 50, '3': 51, '4': 52, '5': 53, '6': 54, '7': 55, '8': 56, '9': 57, 'A': 65, 'B': 66, 'C': 67, 'D': 68, 'E': 69, 'F': 70, 'G': 71, 'H': 7... - dict() -> new empty dictionary
  • _has_resource = False - bool(x) -> bool
  • _has_task_group = False - bool(x) -> bool
  • _resource = <_Framework.Util.lazy_attribute object at 0x129db44d0>
  • _tasks = <_Framework.Util.lazy_attribute object at 0x129db4710>
  • canonical_parent = None
  • display_indexes = <_Framework.Util.lazy_attribute object at 0x12d510ed0>
  • display_slice = <_Framework.Util.lazy_attribute object at 0x11ac07890>
  • name = '' - str(object='') -> str
  • optimized_send_midi = True - bool(x) -> bool
  • proxied_interface = <_Framework.Util.lazy_attribute object at 0x129db4290>

class SlotManager(CompoundDisconnectable)

Methods

__init__(self, *a, **k)

Initialize self. See help(type(self)) for accurate signature.

disconnect(self)
disconnect_disconnectable(self, slot)
find_disconnectable(self, predicate)
has_disconnectable(self, slot)
register_disconnectable(self, slot)
register_slot(self, *a, **k)
register_slot_manager(self, *a, **k)
unregister_disconnectable(self, slot)

class Subject(Disconnectable)

Methods

__init__(self, /, *args, **kwargs)

Initialize self. See help(type(self)) for accurate signature.

disconnect(self)

class chain

chain(*iterables) --> chain object

Return a chain object whose .next() method returns elements from the first iterable until it is exhausted, then elements from the next iterable, until all of the iterables are exhausted.

Methods

__init__(self, /, *args, **kwargs)

Initialize self. See help(type(self)) for accurate signature.

from_iterable(iterable, /)

Alternative chain() constructor taking a single iterable argument that evaluates lazily.

class partial

partial(func, args, *keywords) - new function with partial application of the given arguments and keywords.

Methods

__call__(self, /, *args, **kwargs)

Call self as a function.

__init__(self, /, *args, **kwargs)

Initialize self. See help(type(self)) for accurate signature.

Attributes

  • args = <member 'args' of 'functools.partial' objects> - tuple of arguments to future partial calls
  • func = <member 'func' of 'functools.partial' objects> - function object to use in future partial calls
  • keywords = <member 'keywords' of 'functools.partial' objects> - dictionary of keyword arguments to future partial calls