1. 12 Sep, 2016 1 commit
    • Haocheng LIU's avatar
      Rewrite all public&private dependency in module.cmake file · 6e113ad4
      Haocheng LIU authored
      The current dependency relationship in vtk is unclear and misleading.
      This MR tries to rewrite them based on header files inclusion of headers
      and source files in each module. Corner cases are considered and
      modules are sorted in alphabetical order to facilitate future reference.
      See details in my gitlab python based script project. In future we can continue
      using this script to clean the VTK Dependency easily from
      time to time.
  2. 01 Sep, 2016 2 commits
  3. 31 Aug, 2016 2 commits
  4. 19 Aug, 2016 1 commit
    • Bill Lorensen's avatar
      ENH: Introduce vtkMTimeType · 9333d9d1
      Bill Lorensen authored
      This is a fix for:
      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
  5. 12 Aug, 2016 2 commits
    • Ben Boeckel's avatar
      issues: update issue URL references · 73e48cd9
      Ben Boeckel authored
    • Berk Geveci's avatar
      Added algorithms to mask NaNs. · cfd1eba0
      Berk Geveci authored
      VTK does not natively handle NaNs. To enable a preliminary support
      for this, I added a Python algorithm to create a ghost array
      based on NaN values. This algorithm creates an array which masks
      using HIDDENPOINT or HIDDENCELL values points or cells containing
      NaN values. This array can then be used to either threshold or
      simply as a ghost array.
  6. 09 Aug, 2016 1 commit
  7. 05 Aug, 2016 1 commit
  8. 11 Jul, 2016 1 commit
  9. 08 Jul, 2016 3 commits
  10. 07 Jul, 2016 2 commits
    • Sean McBride's avatar
      Applied VTK_DELETE_FUNCTION to many constructors · 1853e030
      Sean McBride authored
      vtk(.*)\(const vtk\1&\);\s*//\s*Not implemented[\.]*
      vtk\1(const vtk\1\&) VTK_DELETE_FUNCTION;
      vtk(.*)\(const vtk\1 &\);\s*//\s*Not implemented[\.]*
      vtk\1(const vtk\1 \&) VTK_DELETE_FUNCTION;
      vtk(.*)\( const vtk\1 & \);\s*//\s*Not implemented[\.]*
      vtk\1( const vtk\1 \& ) VTK_DELETE_FUNCTION;
      vtk(.*)\( const vtk\1& \);\s*//\s*Not implemented[\.]*
      vtk\1( const vtk\1\& ) VTK_DELETE_FUNCTION;
      vtk(.*) \(const vtk\1&\);\s*//\s*Not implemented[\.]*
      vtk\1 (const vtk\1\&) VTK_DELETE_FUNCTION;
    • Sean McBride's avatar
      Applied VTK_DELETE_FUNCTION for operator= · 2d0e11ef
      Sean McBride authored
      After that, this finds basically nothing:
      then manually reverted changed files in VPIC and KWSys folders.
  11. 28 Jun, 2016 1 commit
    • Robert Maynard's avatar
      Namespace VTK's GenerateExportHeader as it differs from CMake's · 44dafc3e
      Robert Maynard authored
      The VTK version of GenerateExportHeader has been modified from the CMake
      official version to include support for adding arbitrary additional information
      through the EXPORT_CODE define. Because of this modification we need to
      namespace all the function calls to make sure that consumers properly call
      our version instead of the CMake official version.
  12. 26 Jun, 2016 1 commit
    • Michka Popoff's avatar
      ENH: Do not link against libpython when possible · 772cc086
      Michka Popoff authored
      This is similar to what is already done in ITK and SimpleITK.
      The new vtkTargetLinkLibrariesWithDynamicLookup.cmake file is slightly modified copy from ITK (things have been renamed from ITK to VTK). The explanation of what this patch tries to achieve is documented in this file.
      A new argument is introduced, called OPTIONAL_PYTHON_LINK. When used, the module will be optionally be linked against libpython. In the module.cmake files, most vtkPython dependencies were moved to COMPILE_DEPENDS, so that libpython is not added to the target_link_libraries() call.
      The vtkPython is explicitely linked against the python libraries, as this is a python executable.
      Also, the find_package calls for the PythonLibs were made optional when possible.
      This fixes the following bug: http://www.vtk.org/Bug/view.php?id=16068
  13. 24 Jun, 2016 1 commit
  14. 20 Jun, 2016 1 commit
  15. 13 Jun, 2016 1 commit
    • David Gobbi's avatar
      Use RAII instead of new/delete for wrapper temp array · e258c73c
      David Gobbi authored
      For array and pointer args, the Python wrappers sometimes have to
      dynamically allocate an array.  This patch adds a simple class that
      uses stack storage for small arrays, heap storage for large arrays,
      and releases resources upon destruction.
  16. 11 Jun, 2016 2 commits
  17. 10 Jun, 2016 1 commit
  18. 08 Jun, 2016 2 commits
  19. 07 Jun, 2016 1 commit
    • David Gobbi's avatar
      Use VTK_NEWINSTANCE hint for factory methods · b342b394
      David Gobbi authored
      The wrapper-generators used to have a hard-coded list of methods that
      returned new vtkObject instances, so that the wrappers could properly
      manage the reference counts.  This patch replaces the hard-coded list
      with a hint macro that can be used anywhere.
  20. 06 Jun, 2016 4 commits
  21. 27 May, 2016 1 commit
    • David Gobbi's avatar
      Add preprocessor macros for each wrapper language. · 755ea6bc
      David Gobbi authored
      These new macros can be used to detect when the headers are being
      parsed by one of the wrapper tools, rather than by the C++ compiler:
      Also, the old __WRAP__ macro should no longer be used, it has been
      replaced with __VTK_WRAP__.
  22. 25 May, 2016 1 commit
  23. 21 May, 2016 1 commit
  24. 19 May, 2016 1 commit
    • Sean McBride's avatar
      Manual search & destroy of (B|E)TX · 55878a23
      Sean McBride authored
      First automatically removed lines with only BTX/ETX
      from .h files with the following regexes:
      ^ *// *BTX\r
      ^ *// *ETX\r
      and replaced occurances with nothing. Committed that, then manually
      removed various remaining cases of BTX/ETX, and related comments, and parsing stuff,
      then trashed the first commit.
  25. 28 Apr, 2016 1 commit
    • David Gobbi's avatar
      BUG 16054: Reduce chance of mistaken swig pointer string. · aa308fc9
      David Gobbi authored
      In the Python wrappers, the vtkDataArray::SetVoidArray() method can take
      two kinds of arguments:
      1) a string formatted as a swig pointer "_addr_type" where "addr" is
      the hexadecimal address and "type" is the type, e.g. "p_void".
      2) a Python buffer object (any Python object with buffer protocol)
      A Python string (in Python 2) is also a buffer object, therefore there
      is some ambiguity.  The use of swig pointers with VTK is exceedingly
      rare, so this fix requires that the string exactly matches the format
      "_addr_p_void" to be interpreted as a swig pointer.
      Note that in Python 3, the ambiguity disappears because a string in Py3K
      does not have the buffer protocol.
  26. 22 Mar, 2016 1 commit
  27. 13 Mar, 2016 1 commit
    • David Gobbi's avatar
      Allow variables to be initialized with constructor args. · 21f04e40
      David Gobbi authored
      In vtkParse.y, there was no rule for variable initialization via
      constructor args, for example "someclass variablename(arglist)".
      Unfortunately, this syntax looks similar to function declaration
      "someclass functionname(parameterlist)" and leads to ambiguity
      because the parser cannot always distinguish between "arglist"
      (a list of values) and "parameterlist" (a list of types).
      The reason the parser has difficulty with this is that it lacks
      the ability to tell which identifiers refer to types, and which
      refer to values.  For now the parser demands that "arglist" begins
      with a literal, since a literal is always a value.
  28. 10 Mar, 2016 1 commit
  29. 09 Mar, 2016 1 commit