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