DocSunset / sygaldry

Other
1 stars 0 forks source link

Non-unique endpoints in different components assigned to the same OSC address #2

Open aburt2 opened 10 months ago

aburt2 commented 10 months ago

I know that this is already on your todo list @DocSunset , but thought I would leave an issue open for the other people who are exploring Sygaldry.

Description: If two components have endpoints with the same name and description, the OSC addresses get merged see screenshot for how it looks like.

ie: if MAX17055_Fuel_Gauge and ICM20948_MIMU component both have an endpoint called running.

toggle<"running"> running;

We want the OSC address to resolve to, MAX17055_Fuel_Gauge/running and ICM20948_MIMU/running

Instead we get the screenshot below: image

Temporary workaround: Ensure all endpoints have a unique description.

DocSunset commented 10 months ago

Thanks. For further detail, the OSC address meta-programming wrongly assumes that every endpoint has a unique type. This is why adding a unique description fixes the issue; if I've well understood, providing a unique non-type template parameter to the endpoint helper templates creates a unique instantiation of the template that counts as a unique type and sidesteps the issue.