Merge, unmerge signals into one link

Merge links

One node merges various signals like booleans, pusles, strings, etc, into one link.
Then, a second node unmerges the link into separate signals.

This would greatly improve the aesthetics and the feel of XOD.

Inputs (Merge node)

  • IN - Generic input (booleans, pulses, strings, etc.)
  • IN - Generic input (booleans, pulses, strings, etc.)
  • IN - Generic input (booleans, pulses, strings, etc.)
  • And so on (Node can be expandable)

Output (Merge node)

  • OUT - Merged link.

Inputs (Unmerge node)

  • IN - Merged link.

Output (Unmerge node)

  • OUT - Generic output (booleans, pulses, strings, etc.)
  • OUT - Generic output (booleans, pulses, strings, etc.)
  • OUT - Generic output (booleans, pulses, strings, etc.)

XOD already lets you do this. See color-rgb-bytes and to-rgb-bytes for an example.

1 Like

To be fair. How user friendly is Xod if we have to use a RGB node to do this? Xod should just add this node to their core and rename it something else with new pinout labels so people can understand what it is more easily. Considering the node already exists it should take them less than 10 minutes to add this to their next update. Also while I’m on this. Please add a gate node that sends out on a false boolean.

1 Like

RGB is only an example of how you can create your own node to combine any values. You create your own node for combining the values you want & make the required changes to the C++ code.

1 Like

Documentation for doing this can be found here: https://xod.io/docs/guide/custom-types/, which is part of the general documentation here: https://xod.io/docs/guide/

1 Like

See, I done that. I modified the RGB nodes to be generic types BUT, there is a problem.
If you put for example a string in the first little bubble in the node, the other bubbles become strings too. But I don’t want that, in the second bubble I want to have a boolean, or some sort of changing value. That’s the problem.
XOD
Also I don’t have any coding skills.

there you must use inputs and outputs T1 T2 T3, and the connection between nodes with output-self

Doesn’t work, already tried that
And the node cannot be expandable then.

didnt work

I think you are asking for trouble trying to make generic merge/unmerge. If you pass data between the two, then try to unmerge to different data type, it will either generate a compile error, or just produce very unpredictable results. It would be much safer to create merge/unmerge nodes for specific data types.

1 Like

That’s I think the closest answer right here :grin:

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.