1. 11 Jan, 2019 2 commits
  2. 23 Nov, 2018 1 commit
    • Haocheng LIU's avatar
      Merge worklet testing executables into a device dependent shared library · 88596366
      Haocheng LIU authored
      VTK-m has been updated to replace old per device worklet testing executables with a device
      dependent shared library so that it's able to accept a device adapter
      at runtime.
      Meanwhile, it updates the testing infrastructure APIs. vtkm::cont::testing::Run
      function would call ForceDevice when needed and if users need the device
      adapter info at runtime, RunOnDevice function would pass the adapter into the functor.
      Optional Parser is bumped from 1.3 to 1.7.
  3. 06 Jul, 2018 1 commit
    • Robert Maynard's avatar
      VTK-m now supports passing pointers when invoking worklets. · 64958b01
      Robert Maynard authored
      The original design of invoke and the transport infrastructure
      relied on the implementation behavior of vtkm::cont types
      such as ArrayHandle that used an internal shared_ptr to managed
      state. This allowed passing by value instead of passing by
      non-const ref when needing to transfer information to the device.
      As VTK-m adds support for classes that use virtuals the ability
      to pass by base pointer type allows for us to invoke worklets
      using a base type without the risk of type slicing.
      Additional by moving over to a non-const ref Invocation we
      can update all transports that have 'output' to now be
      by ref and therefore support types that can't be copied while
      being 'more' correct.
  4. 05 Jun, 2018 1 commit
  5. 25 May, 2018 1 commit
  6. 23 Feb, 2018 1 commit
  7. 20 Sep, 2017 1 commit
    • Kenneth Moreland's avatar
      Update copyright for Sandia · c3a3184d
      Kenneth Moreland authored
      Sandia National Laboratories recently changed management from the
      Sandia Corporation to the National Technology & Engineering Solutions
      of Sandia, LLC (NTESS). The copyright statements need to be updated
  8. 26 May, 2017 1 commit
  9. 25 May, 2017 1 commit
  10. 18 May, 2017 1 commit
  11. 23 Feb, 2017 1 commit
  12. 07 Feb, 2017 1 commit
    • David C. Lonie's avatar
      Simplify exception hierarchy. · f601e38b
      David C. Lonie authored
      Remove the ErrorControl class such that all subclasses now inherit from
      error. Renamed all exception classes via s/ErrorControl/Error/.
      See issue #57.
  13. 19 Dec, 2016 1 commit
  14. 14 Dec, 2016 1 commit
  15. 16 Nov, 2016 1 commit
    • Kenneth Moreland's avatar
      Remove exports for header-only functions/methods · fdaccc22
      Kenneth Moreland authored
      Change the VTKM_CONT_EXPORT to VTKM_CONT. (Likewise for EXEC and
      EXEC_CONT.) Remove the inline from these macros so that they can be
      applied to everything, including implementations in a library.
      Because inline is not declared in these modifies, you have to add the
      keyword to functions and methods where the implementation is not inlined
      in the class.
  16. 05 Aug, 2016 1 commit
  17. 17 May, 2016 1 commit
  18. 21 Jan, 2016 1 commit
    • Kenneth Moreland's avatar
      Fix issues with Field constructor overloads · f9750e83
      Kenneth Moreland authored
      I ran into a few minor issues with the constructors to the Field class.
      The big change I made was that I removed the Field constructors that
      take an example type and create an empty field of that type. The problem
      was that the example type was easily confused with some other type that
      was supposed to describe an array. This lead to some odd behavior in the
      compiler and resulted in errors in unexpected places.
      The use case for this constructor is dubious. There were several tests
      in the code that would create an empty field, add it to a data set, then
      get it back out to pass to the worklet. The code is much simpler if you
      just make an ArrayHandle of the right type and use that in the worklet
      invoke directly. It is also faster to compile with smaller code because
      the type is known statically (whereas it is lost the other way).
      The other change was to declare references to ArrayHandle and
      DynamicArrayHandle as const. There is nothing in the behavior that
      invalidates the const, and it accepts arrays constructed in the
  19. 20 Jan, 2016 1 commit
    • Kenneth Moreland's avatar
      Add WorkletMapCellToPoint class · c346d40e
      Kenneth Moreland authored
      The map topology worklets are to have convenience classes for all the
      common mappings. However WorkletMapCellToPoint was left out as an
      oversight. This adds the class.
  20. 18 Jan, 2016 1 commit
    • Kenneth Moreland's avatar
      Simplify and unify cast interface. · ed43dad6
      Kenneth Moreland authored
      Previously, DynamicArrayHandle and DynamicCellSet had slightly different
      interfaces to their CastTo feature. It was a bit confusing and not all
      that easy to use.
      This change simplifies and unifies them by making each class have a single
      CopyTo method that takes a reference to a cast object (an ArrayHandle or
      CellSet, respectively) and fills that object with the data contained if
      the cast is successfull. This interface gets around having to declare
      strange types.
      Each object also has a Cast method that has to have a template parameter
      specified and returns a reference of that type (if possible).
      In addition, the old behavior is preserved for DynamicArrayHandle (but
      not DynamicCellSet). To avoid confusion, the name of that cast method is
      CastToTypeStorage. However, the method was chaned to not take parameters
      to make it consistent with the other Cast method.
      Also, the IsType methods have been modified to reflect changes in
      cast/copy. IsType now no longer takes arguments. However, an alternate
      IsSameType does the same thing but does take an argument.
  21. 16 Dec, 2015 1 commit
    • Robert Maynard's avatar
      Extend vtkm::DeviceAdapterTraits to include a unique numeric identifier. · c70da5fc
      Robert Maynard authored
      Previously each device adapter only had a unique string name. This was
      not the best when it came to developing data structures to track the status
      of a given device at runtime.
      This adds in a unique numeric identifier to each device adapter. This will
      allow classes to easily create bitmasks / lookup tables for the validity of
  22. 11 Dec, 2015 1 commit
  23. 08 Dec, 2015 1 commit
  24. 01 Dec, 2015 1 commit
  25. 03 Nov, 2015 1 commit
  26. 23 Oct, 2015 1 commit
  27. 22 Oct, 2015 1 commit
  28. 28 Aug, 2015 3 commits
  29. 27 Aug, 2015 2 commits
  30. 25 Aug, 2015 3 commits
    • Kenneth Moreland's avatar
      Have CoordinateSystem inherit from Field · 9f624f0a
      Kenneth Moreland authored
      Previously, coordinate systems in a DataSet simply pointed to field data
      specifying the coordinate information (although the ability to get that
      back out of the DataSet was missing). This makes sense since point
      coordinates are in fact just fields with a particular semantic meaning
      to them.
      However, there is an issue with this approach. It turns out that there
      are special representations that are very common for point coordinates
      and very uncommon for other types of fields. For example, a uniform
      (a.k.a. regular or image) grid has point coordinates that are easily
      derived from the point index, but such fields are quite uncommon
      Representing this kind of structure in the Field list of a DataSet is
      problematic. Either all fields have to check to see if they are this
      type, which will cause an explosion of unnecessary generated code, or
      you will have to actually write out the coordinates in memory, which is
      really wasteful but what was done previously.
      However, by storing fields representing coordinate systems in a separate
      batch, we can use these special types without the stated explosion.
    • Jeremy Meredith's avatar
      removing explicit from/to topology template types for dispatcher. · d1a97978
      Jeremy Meredith authored
      these can be obtained from the topology worklet type.
    • Jeremy Meredith's avatar
  31. 14 Aug, 2015 2 commits
    • Kenneth Moreland's avatar
      Use variable Vec-like objects for topology map fetching · f7a6946d
      Kenneth Moreland authored
      This change removes the requirement to specify some maximum cell length
      in each of the worklets, which is basically impossible. It also makes
      some of the loading more lazy, which might help reduce the number of
      registers required in a worklet.
    • Kenneth Moreland's avatar
      Get FromIndices as unknown type. · c847f0b1
      Kenneth Moreland authored
      We want to be able to get topological connections where it is difficult
      to know how many values you get each time. In this change, the type of
      the vector holding the from indices is determined from the connectivity
      object, and the worklet does not know the type (it must be templated).
      Although you do not need to specify the max number for this value set
      (you still currently do for field values), we still need to change the
      type for explicit sets that uses something that does not rely on the Vec
      class. The cell-to-point method also needs a Vec wrapper that allows it
      to shorten the vector dynamically.
  32. 03 Aug, 2015 2 commits
    • Kenneth Moreland's avatar
      Consistently use from/to for topological links · 63b45ad1
      Kenneth Moreland authored
      In the CellSet and related classes, a connection was referred to by a
      "from" topology element and a "to" topology element. However, in the
      worklet control signature tags the elements were referred to by "src"
      and "dest." To make things consistent, use "from" and "to" everywhere.
    • Kenneth Moreland's avatar
      Change Node -> Point · 01757ea1
      Kenneth Moreland authored
      Most of VTK-m follows the convention of calling the 0D topology elements
      "points" (which follows the convention of VTK). However, there were
      several places where they were referred to as "nodes." Make things
      consistent by calling them points everywhere.
      Also merged some redundant ExecutionSignature tags.