Skip to content

Comments

Move OSC code to CardinalOSC.{cpp,hpp}#903

Open
akx wants to merge 1 commit intoDISTRHO:mainfrom
akx:split-osc
Open

Move OSC code to CardinalOSC.{cpp,hpp}#903
akx wants to merge 1 commit intoDISTRHO:mainfrom
akx:split-osc

Conversation

@akx
Copy link

@akx akx commented Feb 7, 2026

A simple refactor of the OSC code from CardinalCommon to separate files for future (soon, if things end up working) extension.

I'm not totally happy with the CARDINAL_OSC_THREAD_FIELD hack – I think it wouldn't be totally bad to have an unused thread handle field, but this works.

Let's see if all the variants build in CI, too 😵‍💫, this works on my machine :)

@dromer
Copy link
Collaborator

dromer commented Feb 8, 2026

Hmm, now I'm wondering what you are up to 🤔

class CardinalBasePlugin;
struct Initializer;

#ifdef CARDINAL_INIT_OSC_THREAD
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

defining class members through macros looks way too messy and ugly, there must be some better way.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pushed a cleaner variant: the thread field is always there (even if possibly unused depending on OSC server threading mode), so the "intrusion" in CardinalCommon.hpp is now just ~3 lines.

@akx
Copy link
Author

akx commented Feb 8, 2026

Hmm, now I'm wondering what you are up to 🤔

Guess I can spill the beans a bit, since I got a prototype working last night: OSC commands to manipulate (list, introspect, add, delete) modules and cables, and an MCP bridge, so an LLM agent can patch a rack 😀

@falkTX
Copy link
Contributor

falkTX commented Feb 8, 2026

Well FYI we have no intentions of helping LLMs here.

@akx
Copy link
Author

akx commented Feb 8, 2026

Well FYI we have no intentions of helping LLMs here.

Sure. 👍 That won't touch this repo, but I feel being able to wire the rack over OSC is interesting for other uses too.

@falkTX
Copy link
Contributor

falkTX commented Feb 8, 2026

Well FYI we have no intentions of helping LLMs here.

Sure. 👍 That won't touch this repo, but I feel being able to wire the rack over OSC is interesting for other uses too.

Thank you for understanding, and I agree about OSC being interesting on other cases too.
Though the current approach in this PR doesn't seem the way to go for me.

@akx akx force-pushed the split-osc branch 2 times, most recently from d7990c8 to 3c830ef Compare February 10, 2026 10:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants