Skip to content

Make PVDReader initialize VTKReaders lazily

Lukas Riedel requested to merge pvdreader-with-lazy-initialization into master

What does this MR do?

PVDReader now only stores the paths to VTK files and initializes VTKReader instances when they are explicitly accessed. This passes effective memory management to the user. Users can choose if missing VTK files should result in exceptions or warnings.

Additionally, the associated time can now be passed to VTKReader in its constructor.

Why was this MR needed?

The current PVDReader loads VTKReaders for all referenced files immediately. For large VTK files, and especially for many of them, this can be very costly and even max out the RAM.

Is there something that needs to be double checked?

No.

Can this MR be accepted?

  • Implemented lazy initialization in PVDReader
  • Added/Updated tests:
    • Initialization of PVDReader
    • Initialization of VTKReader
  • Added/Updated documentation
  • Pipeline passing
  • Squash option set
  • Delete branch option set
  • Added entry to CHANGELOG.md

Assignee: If the Squash option is set, check/update the commit message right before merging!

Related issues

None

Edited by Lukas Riedel

Merge request reports