I have two C++ plugins, A (source) and B (filter). However B uses additional data that only source A can provide. Therefore, in a pipeline, A-B is perfectly fine, while A-C-B (where C is some other filter) should not be possible.
Also I noticed that unavailable filters are gray and cannot be selected in PV.
My questions are:
How does PV decides what filters can be used?
How can I reproduce this effect for my source and filter?
That’s not currently possible. One could extend vtkSMInputArrayDomain to add an XML attribute that specifies which array names must be present, then add an InputArrayDomain entry to the InputProperty element in your filter XML definition.