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.
      6e113ad4
  2. 27 Jul, 2016 1 commit
    • Utkarsh Ayachit's avatar
      Cleanup QT5. · e1fe01a6
      Utkarsh Ayachit authored
      In module configuration files generated for Qt-based modules, we now
      export find_package() calls that find specific components from Qt5 i.e.
      `find_package(Qt5 COMPONENTS Widgets)` instead of
      `find_package(Qt5Widgets)`.
      e1fe01a6
  3. 08 Mar, 2016 1 commit
  4. 10 Sep, 2015 1 commit
  5. 31 Aug, 2015 1 commit
    • Dan Lipsa's avatar
      COMP: Add logic to selectively use OpenGL or OSMesa. · f09903e4
      Dan Lipsa authored
      Use vtkOpenGL.cmake to decide to use (LINK_PRIVATE) OpenGL or Offscreen Mesa.
      OpenGL is now LINK_PRIVATE, so additional libraries and tests need to include OpenGL.
      Include the following in your CMakeLists.txt:
      
      include(vtkOpenGL)
      vtk_opengl_link(${module})
      
      for every ${module} that uses OpenGL. This takes care of include directories and
      linking of proper libraries.
      f09903e4
  6. 05 Aug, 2015 5 commits
  7. 09 Jul, 2015 1 commit
  8. 07 Jul, 2015 1 commit
  9. 06 Jul, 2015 1 commit
  10. 29 Apr, 2015 1 commit
  11. 11 Mar, 2015 1 commit
  12. 15 Jan, 2015 1 commit
  13. 03 Jul, 2014 1 commit
    • Ben Boeckel's avatar
      linking: wrap tll() with a module-aware function · 3cd0686a
      Ben Boeckel authored
      This will allow kits to gather all of the required libraries to link
      since the modules themselves won't "exist" to link anything when kits
      are enabled.
      
      Change-Id: Ic73220c7b97e17a5fbc0aa6c0f7a5e5a61dc6bef
      3cd0686a
  14. 16 Jun, 2014 2 commits
    • Marcus D. Hanwell's avatar
      Brought more of the OpenGL module logic over · e58ca401
      Marcus D. Hanwell authored
      Made the vtkGUISupportQt module work, moved the other QtOpenGL module
      to OpenGL backend only for now - uses vtkgl/extension manager stuff.
      Configure the header with options selected for the build.
      
      Change-Id: I7099e6c110ba080bb102e180d6d544ad3515c730
      e58ca401
    • Marcus D. Hanwell's avatar
      Added a concept of backends, added OpenGL and OpenGL2 · cf406e96
      Marcus D. Hanwell authored
      This adds a concept of a rendering backend to the module API, with
      an OpenGL and OpenGL2 backend. They are mutually exclusive and one
      or the other should be selected (or None in the case when rendering
      is not requested). This needs a little more work as the default
      backend enables rendering when the group is disabled at this point.
      
      Change-Id: I98d660e063ef58d52698e08ab06dd45601bea9cd
      cf406e96
  15. 07 May, 2014 1 commit
    • Brad King's avatar
      Export the locations of Qt5 packages on which modules depend · 23fbbebc
      Brad King authored
      Qt5 packages provide libraries to VTK in the form of imported targets.
      VTK libraries that link to them get exported with dependencies on the
      imported targets.  We must make them available to applications that link
      to these VTK libraries too.
      
      Teach each module that depends on Qt5 to export code that runs when
      an application loads the module as part of its build process.  Find
      the needed Qt5 package on behalf of the application to satisfy the
      module's dependency on it.
      
      Change-Id: Ib638ccafa084fbb06c20eb09464265501ccafc80
      23fbbebc
  16. 06 May, 2014 1 commit
  17. 19 Aug, 2013 1 commit
    • Brad King's avatar
      COMP: Cleanup CMP0022 and CMP0023 warnings · ed6c07d0
      Brad King authored
      CMake 2.8.12 introduces policies CMP0022 and CMP0023 that trigger
      warnings in some of VTK's CMake code.  Fix them as follows.  The result
      is a cleaner and more explicit link specification anyway.
      
      CMP0022 warns when we set the LINK_INTERFACE_LIBRARIES property directly
      without also setting the newly introduced INTERFACE_LINK_LIBRARIES
      property directly.  Simply drop these settings because they are achieved
      already by use of the keyword-based target_link_libraries signature.
      
      CMP0023 warns when we use both the plain and keyword signatures of the
      target_link_libraries command for a single target.  The module macros
      use the keyword signature (LINK_PUBLIC/LINK_PRIVATE), so any direct
      calls to the plain target_link_libraries signature are doing "private"
      linking.  Add the LINK_PRIVATE keyword to such calls to make this
      explicit and avoid the warning.
      
      Change-Id: I1e5bf687733e3f19462da698c0d5e3899439bf02
      ed6c07d0
  18. 18 Aug, 2013 1 commit
  19. 11 Jul, 2013 1 commit
  20. 08 Jul, 2013 1 commit
    • Burlen Loring's avatar
      OpenGL error hunt · a6fa3e37
      Burlen Loring authored
      This patch implements OpenGL error checking in VTK.
      
      OpenGL's error handling implementation error is designed such
      that internal error flags remain set with the first error that
      occurred until they are explicitly checked. With this design
      it's important to check and clear the error flags regularly
      else they become unusable as code checking for errors ends
      up reporting earlier undetected unrelated errors.
      
      This patch takes the following approach:
      
      1) at public entry points into code that uses OpenGL clear the
      error flags without reporting errors. This guards against
      reportinig unrealted errors, such as those caused by code
      outside of VTK. See vtkOpenGLClearErrorMacro
      
      2) before returning from functions that made OpenGL calls check
      for and report OpenGL errors. This detects Open GL errors in the
      function/method where they occurred facilitating debugging and it
      clears error flags so that user code doesn't detect errors caused
      by VTK. See vtkOpenGLCheckErrorMacro
      
      This patch cleans up a number of bugs that were detected by
      the new error checking and reporting.
      
      This patch also contains improvements for OpenGL pixel buffers, a
      renderbuffer object, and fast paths through framebuffer objects,
      and texture objects, and fast path for setting uniform variables,
      all of which are needed in vtkSurfaceLICPainter and
      vtkLineIntegralConvolution2D GPGPU code.
      
      Change-Id: I4ecefe9a444a74128bf73ef2ddfd5d4acea387ec
      a6fa3e37
  21. 27 May, 2013 1 commit
    • Jean-Christophe Fillion-Robin's avatar
      COMP 12945: Allow VTK to build against Qt5 · 384636ec
      Jean-Christophe Fillion-Robin authored
      Since VTK build system has been updated to make use of CMake macros
      specific to Qt5, the support has to explicitly enabled configuring VTK
      with -DVTK_QT_VERSION:STRING="5"
      
      Additionally, in case Qt5 is not installed in a standard location,
      a custom prefix for "find_package" should be passed.
      For example:
        -DCMAKE_PREFIX_PATH:STRING=/home/jchris/Qt5.0.2/5.0.2/gcc_64/
      
      
      Finally, this commit also resolves the build errors reported below.
      
      Fix missing header build error by including Qt headers directly without
      specifying the intermediate directory.
      
      * Fix build error changing QString::toAscii into  QString::toLatin
      The method "toAscii" has been deprecated and is not available in
      default Qt5 distribution.
      See http://qt-project.org/doc/qt-5.0/qtcore/qstring.html#toAscii
      
      * Fix build error changing Qt::WFlags into Qt::WindowFlags
      See http://qt-project.org/doc/qt-5.0/qtcore/qt-obsolete.html
      
      * Fix build error changing QAbstractItemModel::reset() into
      combo QAbstractItemModel::beginResetModel()/QAbstractItemModel::endResetModel()
      The method "reset" has been deprecated and is not available in
      default Qt5 distribution.
      See http://qt-project.org/doc/qt-5.0/qtcore/qabstractitemmodel-compat.html#reset
      
      * Fix build error by including "vtkObjectBase.h":
      /home/jchris/Projects/Qt5.0.2/5.0.2/gcc_64/include/QtCore/qmetatype.h:464: error: invalid application of ‘sizeof’ to incomplete type ‘QStaticAssertFailure<false>’
      
      * Fix "no matching function for call to ‘QPixmap::grabWidget(QWidget*)’" by using
      "QWidget::grab"
      See http://qt-project.org/doc/qt-5.0/qtwidgets/qwidget.html#grab
      
      * Fix missing QHttpHeader/QHttpRequestHeader headers by removing them.
      They have been removed from Qt5 and were not used in the code.
      
      * Fix error: ‘qInstallMsgHandler’ was not declared in this scope
      by using "qInstallMessageHandler"
      See http://qt-project.org/doc/qt-5.0/qtdoc/sourcebreaks.html
      
      * Fix Q4VTKWidgetPlugin.cxx:147: error: invalid application of
      ‘sizeof’ to incomplete type ‘QStaticAssertFailure<false>’ by
      using "Q_PLUGIN_METADATA" macro instead of Q_EXPORT_PLUGIN
      or Q_EXPORT_PLUGIN2.
      See http://qt-project.org/wiki/Transition_from_Qt_4.x_to_Qt5#7ec1b8f08d7f31ebcb53188f0bd15ed5
      
      Change-Id: Ie7123e5990e3a8afb4d7d2efa0fda5bd7b98c1e3
      384636ec
  22. 07 Aug, 2012 1 commit
    • Jeff Baumes's avatar
      Fixing context2d point sprites and graphics item · c4f5f3aa
      Jeff Baumes authored
      The OpenGL 2.0 device needed to load the 1.4 extension for point sprites.
      This was working previously because other rendering code was loading it.
      
      The QVTKGraphicsItem was not correctly resetting the bound texture to 0.
      
      Change-Id: I7d187d587116c9d3da4a8b6e23bd66a9fd37c1e2
      c4f5f3aa
  23. 09 Apr, 2012 5 commits
    • Brad King's avatar
      Restore VTK header tests removed by the modularization · 437db4b1
      Brad King authored
      Teach vtk_module_library to add a <module>.HeaderTest test.  Teach
      HeaderTesting.py to exclude headers containing a special comment like
      those added by the parent commit.
      
      Exclude GUISupport/Qt* and Views/Qt because the modules have headers
      that are not expected to follow VTK conventions.  Temporarily exclude
      the Chemistry/Core module until its headers are fixed or marked as
      excluded (they came from the Chemistry kit in monolithic VTK which had
      no header test).
      
      Change-Id: Ib6e1313a866db154f7b0e94aa340a10b16f8b9ca
      437db4b1
    • VTK Developers's avatar
      Remove trailing whitespace from all source files · 2d323fc4
      VTK Developers authored
      Exclude ThirdParty, Utilities/MetaIO, and Utilities/KWSys as these
      are maintained outside VTK.
      
      Co-Author: Marcus D. Hanwell <marcus.hanwell@kitware.com>
      Co-Author: Chris Harris <chris.harris@kitware.com>
      Co-Author: Brad King <brad.king@kitware.com>
      2d323fc4
    • VTK Developers's avatar
      Include module-wide headers and export macros · 144f03ca
      VTK Developers authored
      Include the module-wide header from every header in each module.
      Reference the export/visibility macro for the module.
      
      Co-Author: Marcus D. Hanwell <marcus.hanwell@kitware.com>
      Co-Author: Chris Harris <chris.harris@kitware.com>
      144f03ca
    • VTK Developers's avatar
      Add modular VTK build system · 0c1471f1
      VTK Developers authored
      Add module.cmake, CMakeLists.txt, and other build system files.
      
      The modular VTK build system is not yet mature.  The monolithic build
      files had a lot of infrastructure.  The modular build files reproduce
      much of the functionality but some features will need to be restored
      later.  Document status and tasks in "TODO-Modularization.txt".
      
      Co-Author: Marcus D. Hanwell <marcus.hanwell@kitware.com>
      Co-Author: Chris Harris <chris.harris@kitware.com>
      Co-Author: Brad King <brad.king@kitware.com>
      Co-Author: Nikhil Shetty <nikhil.shetty@kitware.com>
      0c1471f1
    • VTK Developers's avatar
      Modularize VTK tree layout · cdd4d6fd
      VTK Developers authored
      Move source files from their former monolithic VTK location to their new
      location in modular VTK without modification.  This preserves enough
      information for "git blame -M" and "git log --follow" to connect
      modularized VTK files to their original location and history.
      
      Co-Author: Marcus D. Hanwell <marcus.hanwell@kitware.com>
      Co-Author: Chris Harris <chris.harris@kitware.com>
      Co-Author: Brad King <brad.king@kitware.com>
      Co-Author: Nikhil Shetty <nikhil.shetty@kitware.com>
      cdd4d6fd