Controller scripts need to be able to cross-communicate

Bug #374239 reported by Sean M. Pappalardo
22
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Mixxx
Confirmed
Wishlist
Unassigned

Bug Description

Adding this as a wish list item so I/we don't forget...

We need to implement a way for controller scripts to communicate across device instances so that operating controls on one device can have some effect on another when ControlChanged signals aren't involved. (E.g. pressing Deck Swap on one unit would change the currently controlled deck on all units.) So they would pretty much just need to be able to call arbitrary functions in other instances (but the names may be the same since one could conceivably have multiple SCS.3ds attached that all use the same script code, but each has its own ControllerEngine instance.)

Changed in mixxx:
importance: Undecided → Wishlist
milestone: none → 1.8.0
RJ Skerry-Ryan (rryan)
Changed in mixxx:
milestone: 1.8.0 → 1.9.0
RJ Skerry-Ryan (rryan)
Changed in mixxx:
status: New → Confirmed
RJ Skerry-Ryan (rryan)
Changed in mixxx:
milestone: 1.9.0 → none
Changed in mixxx:
status: Confirmed → New
summary: - After multiple device support, MIDI scripts need to be able to cross-
- communicate
+ MIDI scripts need to be able to cross-communicate
Changed in mixxx:
status: New → Confirmed
summary: - MIDI scripts need to be able to cross-communicate
+ Controller scripts need to be able to cross-communicate
description: updated
tags: added: communication controllers midi
Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

With the current state of the Controller subsystem, I don't think it would be terribly difficult to implement this. We already have unique IDs for each controller, so this should just be a matter of adding methods to ControllerEngine and ControllerEnumerator that allow the CEngine to obtain a pointer to another CEngine instance from the CEnumerator which it could then interact with directly.

Revision history for this message
Ferran Pujol (ferranpujol) wrote :

We could allow many-to-many relations between devices and mappings. So many devices can be routed to the same scripts and many scripts could receive events from the same device.

Revision history for this message
Be (be.ing) wrote :

That would be a one-to-many relationship (one script, many devices).

tags: removed: communication
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/5165

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.