1. 28 Nov, 2017 1 commit
  2. 10 Oct, 2017 1 commit
  3. 03 Oct, 2017 2 commits
  4. 12 Sep, 2017 1 commit
  5. 10 Sep, 2017 2 commits
  6. 08 Sep, 2017 1 commit
  7. 07 Sep, 2017 1 commit
  8. 07 Aug, 2017 1 commit
  9. 06 Jul, 2017 1 commit
  10. 16 May, 2017 1 commit
  11. 15 May, 2017 2 commits
  12. 05 Apr, 2017 1 commit
  13. 31 Mar, 2017 1 commit
  14. 26 Mar, 2017 1 commit
  15. 22 Mar, 2017 1 commit
  16. 21 Mar, 2017 3 commits
  17. 13 Mar, 2017 1 commit
    • Alexis Girault's avatar
      ENH: Allow custom library definition · ddb6347f
      Alexis Girault authored
      Expand the imstk_add_library cmake function by exposing the variables
      H_FILES (headers) CPP_FILES (source) and SUBDIR_LIST (build interface
      directories - the current source dir is always included).
      
      If those values are not manually set, the previous behavior applies,
      where all the files and directories in the root directory are used for
      that target.
      
      Used that new mechanism for the Rendering target to prepare for Vulkan
      integration.
      ddb6347f
  18. 24 Feb, 2017 1 commit
    • Mayeul Chassagnard's avatar
      ENH: Add ExternalData Management System · 267b7f72
      Mayeul Chassagnard authored
      Download Data from Girder according to data key files contained in iMSTK/Data
      
      This uses ExternalData.cmake (Requires CMake >= 2.8.11 release).
      
      Add TEST: Add ExternalDataTest to verify downloaded files from Girder
      * Be sure the data requiered for the test is not there (delete it)
      * Add the imstk_add_data(${target} ${data_list}) function in CMakeList.txt
      which calls ExternalData_expand_arguments().
      * It downloads the data provided by the data_list (relative path from
      iMSTK/Data)
      
      Add DOC: Add documentation on ExternalData Management
      * How to add data to iMSTK from Grider
      * Update data
      * Use data
      267b7f72
  19. 30 Jan, 2017 1 commit
  20. 26 Jan, 2017 1 commit
    • Alexis Girault's avatar
      ENH: Use vtkTriangleMeshPointNormals · 969659fd
      Alexis Girault authored
      The main bottleneck with real-time VTK rendering so far
      appeared to be the normals computation. This commit addresses
      that issue by making use of the latest normals computation
      filter in VTK: vtkTriangleMeshPointNormals.
      
      While this filter is much (5 to 16 times) faster than
      vtkPolyDataNormals, it does not check for consistency in the
      cell orientations that could cause inverted normals, which
      is why the vtkPolyDataNormals is called once in the surfacemesh
      renderdelegate to retrieve consistent cells for the input mesh.
      
      See VTK merge request for more information :
      vtk/vtk!2271
      
      PS: That MR requires the latest commits from VTK master, which
      does not include work made on texture wrap mode nor on multi
      texture attributes yet:
      - vtk@62a7ecd8
      - vtk@ae373026
      969659fd
  21. 14 Nov, 2016 1 commit
  22. 10 Nov, 2016 1 commit
    • Alexis Girault's avatar
      ENH: use HTTPS for external dependencies on github · aceb5d17
      Alexis Girault authored
      googletest git repository was using the SSH protocol
      instead of HTTPS, which requires users to add an
      ssh_key on github.com.
      
      We switch all those external projects to HTTPS protocol,
      but keep the ones hosted by ourselves on gitlab.kitware.com
      in SSH since we might be contributing back to those
      during development.
      aceb5d17
  23. 08 Nov, 2016 5 commits
    • Alexis Girault's avatar
      COMP: Allow CTest to cover innerbuild tests · f3522cb8
      Alexis Girault authored
      With the superbuild architecture, the inner project
      is not added as a subdirectory in the superbuild project,
      but configured through ExternalProject_Add(). For this
      reason, the CTestTestfile.cmake at the top level (superbuild
      project) does not add the Innerbuild directory in which
      there is another CTestTestfile.cmake referencing the tests
      of the inner project.
      
      This commit includes the file `imstkCTestAddInnerbuild.cmake.in`
      which calls `subdirs()` on the Innerbuild directory. That file
      is configured in the top-level build directory, and added as
      the TEST_INCLUDE_FILE property to that directory. This will
      include that file to the top-level CTestTestfile.cmake, which
      will therefore be able to reach the CTestTestfile.cmake in the
      Innerbuild directory when running ctest.
      
      Use this commit to also only solve external dependencies
      in the superbuild tree, no need to to it in the innerbuild tree.
      f3522cb8
    • Alexis Girault's avatar
      COMP: remove testing source files from targets · 34f78b7e
      Alexis Girault authored
      By adding testing source files in the same directory
      than the target source files, those first ones were
      included in the target executables by mistake.
      34f78b7e
    • Alexis Girault's avatar
      TEST: Use custom GTEST_ADD_TESTS to register all tests · 866e208d
      Alexis Girault authored
      ctests would currently only be created for each test file,
      but the GTEST_ADD_TESTS function[1] could allow to register
      all gtests as independent tests.
      
      [1] https://cmake.org/cmake/help/v3.0/module/FindGTest.html
      
      However, that function would not allow the use of a driver
      executable, since it would force the `gtest_filter` flag to
      appear right after the executable name in the command, while
      a driver executable would need the name of the test file
      beforehand.
      
      This commit introduces a custom version of GTEST_ADD_TESTS
      where `extra_args` is called before the `gtest_filter` flag
      to allow the use of an executable driver.
      
      Note: as noted in the doc above[1], testing each gtest is
      slow since they all necessite the startup of an executable.
      The previous option of testing per file is therefore kept
      but commented. A future focus of interest could be to
      customize `add_test` to then run all gtests at once like
      GoogleTest does by default.
      866e208d
    • Alexis Girault's avatar
      TEST: implement CMake function imstk_add_test · 661b052a
      Alexis Girault authored
      Allows to create tests in iMSTK using google test and ctest.
      Ctests are created by test files, and not by gtest functions.
      
      Requirements:
      - Requires a 'Testing' subdirectory with cpp files for each
        class to test.
      - Google Test and Google Mock should be used to create unit
        tests, see the documentation below:
        https://github.com/google/googletest/blob/master/googletest/docs/Documentation.md
        https://github.com/google/googletest/blob/master/googlemock/docs/Documentation.md
      - Test files should be constructed as described under\
        `imstk_add_test()` declaration
      661b052a
    • Alexis Girault's avatar
      ENH: Add Google Test as external project · 25c20bb7
      Alexis Girault authored
      25c20bb7
  24. 17 Oct, 2016 1 commit
    • Alexis Girault's avatar
      COMP: Fix FindVRPN when USE_OMNI · 01668a67
      Alexis Girault authored
      FindVRPN: The order in which the libraries were
      found was creating an compilation error during
      linking on Linux, as well as windows when being
      read from an external project.
      
      iMSTKConfig.cmake.in: ${PROJECT_NAME} would not be
      set to "iMSTK" from an external project.
      
      External_VRPN: VRPN_BUILD_SERVERS:BOOL was defined
      twice in imstk_add_external_project(VRPN)
      01668a67
  25. 03 Oct, 2016 2 commits
  26. 29 Sep, 2016 2 commits
  27. 27 Sep, 2016 1 commit
    • Alexis Girault's avatar
      COMP: fix ftd2xx.lib copy at compile time · 1fdfa17a
      Alexis Girault authored
      On some windows systems, the command `cmake -E copy`
      within `copy_ftd2xx_static_command` renames the ftd2xx.lib
      file as `lib\${BUILD_TYPE}` instead of copying it within
      the directory of the same name. Because of this, the directory
      can not be created in the future for other libraries, explaining
      the high number of compilation errors (~50)
      1fdfa17a
  28. 22 Sep, 2016 1 commit
  29. 21 Sep, 2016 1 commit