Meta filter automation in ParaView?
For a long time, every "data set" object could be abstracted as a
vtkDataSet. This is not the case anymore when you come with very specific inner structure / algorithms, like
vtkHyperTreeGrid for instance, which are not
vtkDataSet. However, aside this differentiation, many filters semantically make sense for both. I'll give the example of the slice, clip, contour, threshold, ghost cell generation, global id generation filters. There could be potentially more.
As of today, you can deal with both inputs for the same meta filter using
InputDataTypeDecorator in the xml description. In C++, there is usually the handling of the route to take for both sub filters. This design is repetitive, tedious, and could totally be automatized with some meta filter class in the VTK side on which you could plug in different input / output types, and an interface to tell the filter route depending on which input. In the ParaView side, there whould be some new proxy mechanism to handle it nicely.
This design could have a broader impact, as we could potentially plug in VTKm filters as needed for certain cases when it is relevant, and if in 10 years, someone comes with a new amazing data structure not compatible with the
vtkDataSet design, plugging it to meta filters would be a piece of cake.
Let's discuss on the potentiality of implementing this kind of mechanism, on how to implement it, and on which deadline to put on it.