There’s been a plugin programming feature request by VVIPP vux to get a custom node pin that could also accept value/color/string/transforms which got resolved a while ago. As there were no further complaints about the way it got implemented in the API we now will commit us to the following changes:
- All pins are now based upon the rather abstract node pins implementing different data interfaces.
- You now can create an unspecific node input that just asks for different interfaces dynamically and by that can work with different types of data of the builtin pins.
[](Input("X"))
public INodeIn FX; // unspecific regarding the expected data
later on you then can ask for a handle on the data via:
FX.GetUpstreamInterface(out myData);
- test for specific data by asking if myData supports IValueData, IStringData, IColorData, IRawData
As a side node: Making all pins compatible might help users at times. All data can now flow over GetSlice (Node)node and Switch (Node)node nodes.
See “girlpower\VVVV Plugin API\VariantPins” for an example for a Switch that is connected to colors, strings, values and whatnot at the same time.
original request: https://discourse.vvvv.org/t/plugin-interface-feature-request/12639
Comments:
Comments are no longer accepted for this post.
“Oi! Pin! Move your bloody arse over here!” (there’s a typo in the title)
sorry discovered that that I (upper case i) is actually an l (lower case L)
Getting an error trying to load this in latest alpha34.106_x64:
http://hastebin.com/diwemayowe.tex
Happens when loading the example patch, and as well when dropping the .csproj file into 0.v4p. Have addons and DX11 installed, Win10.
Sorry, hectic days…
I copied the version number from the install folder, I think I clicked the link at the top, but I don’t know the commit hash. Anyway, I updated to latest now, alpha34.107_x64, a7fc71ebb9, and it does indeed work. So, sorry for the noise. :P
nice thing, thanks!
one minor thing:
the ouput pin says ‘mixed types’ when hovered, but when connecting an iobox it always says ‘any type ok’
anyway, when playing around with switch(node) for example, i figured out this annotation is not reliable…
imo best would be if it tells us the real type like ‘color’ until the types are mixed. then it should display ‘mixed types’