SynthiX:
Filter:
Mx/Classes (extension) | Mx

SynthiX
ExtensionExtension

A patching matrix for Mx inspired by the EMS Synthi A

Description

A patching matrix for Mx inspired by the EMS Synthi A

http://en.wikipedia.org/wiki/EMS_Synthi_Ahttp://www.thesynthi.de/data/SYNTHIA/A2011_1.jpg

The Mx patchbay uses cables, which does't scale very well once a network gets large. It turns into the usual tangled mess of cables.

SynthiX is another way to connect outlets to inlets.

[Needs a big example with lots of sounds and efx]

The SynthiX grid shows Outlets x Inlets. An outlet may connect to multiple inlets, but an inlet may only accept one outlet.

Outlets and inlets should be iterables, preferrably MxQuery

Some inlets and outlets support getting and setting value on a one-time basis without needing a cable. This is mainly simple connections that just have a float value like an control rate inlet, a CC outlet, a SplineFr outlet

Usage:

Click in a square to connect or disconnect. If you look in the Mx patchbay you can see the cables connecting or disconnecting.

Control-click in the header column to set the value of the inlet for testing/wiggling purposes (where supported by the inlet)

Outlet values are shown in the row header (where supported by the outlet)

Clicking in the row header will update the whole view, useful if the outlet values have changed.

Control-click in top left corner will toggle the auto-refresh task so that values will be continuously updated. This uses a fair bit of CPU.

Resize the window or use full screen for best results.

Note: the original synthi pegs are red yellow white : varying resistance.

Varying the mapping range is planned for a future release.

Class Methods

.new

Arguments:

outlets

An MxQuery : x.outlets

inlets

An MxQuery : x.inlets

Instance Methods

.outlets

You may dynamically set the outlets query. Call update and refresh.

Returns:

(returnvalue)

.inlets

You may dynamically set the inlets query. Call update and refresh.

Returns:

(returnvalue)

.labelSize

(describe method here)

Returns:

(returnvalue)

.on

Color for on, default is yellow

Returns:

(returnvalue)

.off

Color for off, default is black

Returns:

(returnvalue)

.cant

Color for a square where connection between outlet and inlet is impossible. Default grey.

Returns:

(returnvalue)

.font

(describe method here)

Returns:

(returnvalue)

.updateRate

Rate of the auto-updater. Control-click in top left corner to toggle the auto-update task.

Returns:

(returnvalue)

.gui

(describe method here)

Arguments:

parent

(describe argument here)

bounds

(describe argument here)

Returns:

(returnvalue)

.update

Rechecks the inlets and outlets. At the moment MxQuery are not-lazy: they evaluate their query and save the results. When they are changed to allow lazy evaluation then update will be more interesting because the SynthiX could update if units are added or removed.

Returns:

(returnvalue)

.draw

private

Returns:

(returnvalue)

.mouseDownAction

private

Arguments:

view

(describe argument here)

x

(describe argument here)

y

(describe argument here)

modifiers

(describe argument here)

buttonNumber

(describe argument here)

clickCount

(describe argument here)

Returns:

(returnvalue)

.refresh

refresh the view. Also updates any values (the little yellow lines)

Returns:

(returnvalue)

Examples