Data Model support: Stream over a series of file names
Created by: pnorbert
Let's unify the API for applications that write a single file with multiple steps and applications that write each step into a new file, so that we can read both of them the same way. We propose here to support a file name pattern in printf style in the Open() call, e.g.:
engine = io.Open("xgc.3d.%05d.bp", ...)
This can write/read a series of
xgc.3d.00000.bp
xgc.3d.00001.bp
xgc.3d.00002.bp
...
On the write side, this way one can write one code (Open, BeginStep, ..., EndStep, Close) and then just control with the filename if a single file is created and append each step, or a series of files. On the read side then, one can read in data from a series of files the same way as multiple steps from a single file (only step by step, not all of them at once).
The Kitware designed ADIOS Data Model will rely on this functionality to easily read in multiple steps, no matter where they come from.