Skip to content

ENH: Introduce vtkMTimeType

Bill Lorensen requested to merge lorensen/vtk:MTime into master

This is a fix for: #14310 (closed)

Windows applications that run for a long time report that rendered objects do not change. This is because the modified time on a Windows system is 32 bits. This causes overflows that defeat the modified time mechanism. This patch defines a new type, vtkMTimeType that is 64 unsigned integer regardless of the architecture.

A mechanism to provide backward compatibility is introduced. The preprocessor define "VTK_HAS_MTIME_TYPE" can be used in applications that must build against VTK versions that use the "unsigned long" type for MTime's.

Methodology used to find MTime occurences:

  1. Identify files as follows: git grep "unsigned long" | grep ime | cut -d":" -f1,1 | sort | uniq
  2. Hand edit each of those files replacing "unsigned long" with "vtkMTimeType" where appropriate.
  3. Temporarily change typedef for vtkMTimeType to "double" to detect missing conversions

Merge request reports