A proposal to redesign file series
Status
file series is a useful mechanism in ParaView that lets anyone create transient data using multiple dataset as individual timesteps.
It can either be based on the names of the datasets (data_1.ext
, data_2.ext
, ...) or managed using a .series
file.
While very useful, this approach has many downsides:
- XML complexity
The way it is currently implemented rely on the vtkFileSeriesReader that encapsulate the reader doing the actual reading. It makes senses to use this VTK class for this purpose however it requires an exlicit usage of a FileSeriesReader proxy that also encapsulate the actual reader proxy, which is internal.
This means that adding the series feature to a reader is a not a simple boolean to turn on or off and is actually quite complex to setup for beginners.
This approach also do not scale at all, one cannot add, eg, a new "BlockSeries" concept to this.
- Extensions configuration
Some readers actually defined .ext.series
as compatible in the XML of the reader, which means that a reader with multiple extension supported should duplicate
each of them. Once again, not scallable.
- Confusion for readers supporting temporal data
Some readers supports temporal data, yet also support file series, increasing the complexity again.
Solution
file series should not be part of a reader declaration but should be a feature of ParaView directly, completely hidden from the XML declaration. For the rare cases where a reader wants to opt out of the file series mechanism, a dedicated hint could be added.
Implementation design
TODO if we agree to move forward.