Skip to content
  • Bill Lorensen's avatar
    ENH: Introduce vtkMTimeType · 9333d9d1
    Bill Lorensen authored
    This is a fix for:
    vtk/vtk#14310
    
    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
    9333d9d1