Commit Graph

9540 Commits

Author SHA1 Message Date
Kenneth Moreland
0b84787f78 Deprecate DynamicCellSet and remove from code
The `DynamicCellSet` class is now marked as deprecated (as is the header
that contains it), and all non-deprecated code is moved to its
`UnknownCellSet` replacement.

Also added a deprecation warning for the VariantArrayHandle.h header
file and deleted a couple inappropriate uses of it.
2022-01-04 15:38:18 -07:00
Kenneth Moreland
de14629c1f Merge topic 'render-test-improvements'
1981f9061 Add secondary image for MapperConnectivity test
d4d1ef955 Add secondary image for MapperQuad test
54c1a85d0 Reduce templating in RenderTest code
c0fbe5f30 Remove antiquated templated render test functions
0fe9300ee Expand test_equal_images
12e116417 Redefine RenderTest interface for library
afa8c9082 Add struct for passing options to render tests
9173d6bba Rename RegressionTests to RenderTests
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Nickolas Davis <nadavi@sandia.gov>
Merge-request: !2657
2022-01-04 14:54:31 -05:00
Kenneth Moreland
2eabba3366 Merge topic 'get-value-fallback'
5b34e6f70 Better fallback for ArrayGetValue

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !2659
2022-01-04 10:09:00 -05:00
Kenneth Moreland
3b0206e45c Merge topic 'dataset-uses-uknowncellset'
0a89a5fff Store UnknownCellSet instead of DynamicCellSet in DataSet

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !2654
2022-01-04 09:51:32 -05:00
Kenneth Moreland
0a89a5fff5 Store UnknownCellSet instead of DynamicCellSet in DataSet
`UnknownCellSet` is an updated replacement for `DynamicCellSet`. The
next step in the replacement is to change `DataSet` to use the new
class.

Also replaced `DynamicCellSet` with `UnknownCellSet` in a few
places where `DynamicCellSet.h` was not directly included (and
therefore now no longer included at all). This change would have
to be made at some point anyway.
2022-01-03 13:52:30 -07:00
Kenneth Moreland
c1d3bd8529 Merge topic 'less-device-compile'
a2ab460f5 Compile more sources without device compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !2658
2022-01-03 12:58:18 -05:00
Kenneth Moreland
5b34e6f70b Better fallback for ArrayGetValue
To avoid having to use a device compiler every time you wish to use
`ArrayGetValue`, the actual implementation is compiled into the `vtkm_cont`
library. To allow this to work for all the templated versions of
`ArrayHandle`, the implementation uses the extract component features of
`UnknownArrayHandle`. This works for most common arrays, but not all
arrays.

For arrays that cannot be directly represented by an `ArrayHandleStride`,
the fallback is bad. The entire array has to be pulled to the host and then
copied serially to a basic array.

For `ArrayGetValue`, this is just silly. So, for arrays that cannot be
simply represented by `ArrayHandleStride`, make a fallback that just uses
`ReadPortal` to get the data. Often this is not the most efficient method,
but it is better than the current alternative.
2022-01-03 10:08:39 -07:00
Kenneth Moreland
a2ab460f5d Compile more sources without device compiler
We have been doing a better job at hiding device code (and moving code
into libraries). Smoke out source that no longer needs to be compiled by
device compilers.
2022-01-03 08:23:04 -07:00
Kenneth Moreland
1981f90612 Add secondary image for MapperConnectivity test
It looks like there might be a precision problem that is causing some
rays to terminate before they start. However, I leave that to someone
else to diagnose.
2022-01-03 06:52:34 -07:00
Kenneth Moreland
d4d1ef9555 Add secondary image for MapperQuad test
I suspect that this test is not actually mapping colors correctly, and
the difference in images might be part of that problem. However, I leave
that to someone else to diagnose.
2021-12-30 11:41:15 -07:00
Kenneth Moreland
54c1a85d05 Reduce templating in RenderTest code
The `Canvas`, `Mapper`, and `View` classes use virtual polymorphism
amongst each other, so might as well use it.
2021-12-30 10:53:30 -07:00
Kenneth Moreland
c0fbe5f30f Remove antiquated templated render test functions 2021-12-30 10:53:30 -07:00
Kenneth Moreland
0fe9300eed Expand test_equal_images
The `test_equal_images` function has been expanded to supply the
generated image in a `Canvas` or a `DataSet` in addition to a `View`.
Much of the templating code has been removed from `test_equal_images`
and most of the code has moved into the `vtkm_rendering_testing`
library.
2021-12-30 10:53:30 -07:00
Kenneth Moreland
12e1164179 Redefine RenderTest interface for library
The previous functions that enabled the render regression tests were
heavily templated, which required every test using rendering to
recompile the entire rendering system being used. Changed the interface
to not rely on templating so that the RenderTest method can be moved
into a library.

Also moved the options into a struct where they can be better managed.
The render testing functions tended to have lots of arguments that were
difficult to manage. Instead, created a single `struct` that holds all
the potential options. That way when someone specifies on option, it is
clear what option is being set.
2021-12-30 10:53:23 -07:00
Kenneth Moreland
afa8c9082e Add struct for passing options to render tests
This allows you to set the parameters of the `test_equal_image` without
having to call it directly.
2021-12-29 13:12:36 -07:00
Kenneth Moreland
9173d6bba9 Rename RegressionTests to RenderTests
The tests that used rendering and image comparison were named
`RegressionTest*`. However, this name is not very descriptive as all the
tests are regression tests. These have all been renamed to be
`RenderTest*` to more clearly indicate that they are tests that use
rendering as part of the test.
2021-12-29 13:12:36 -07:00
Kenneth Moreland
d29532c23c Move non-templated testing functions to library
Previously, all methods in the `vtkm::cont::testing::Testing` class were
inlined in the header file. This makes sense for the methods that are
templated, but not so much for methods that are not templated.

Although this change provides minimal improvements with compile times
and object sizes (maybe). But the real benefit is that some of these
methods declare static objects. When declared in inlined functions, a
different object will be created for each translation unit. This can
lead to unexpected behavior when multiple versions of a supposed
singleton static object exist.
2021-12-29 13:12:36 -07:00
Kenneth Moreland
d9ad05b683 Add warning when an invalid ColorTable preset was requested 2021-12-29 13:12:36 -07:00
Vicente Bolea
385ea820be Merge topic 'add-olcf-ci'
67b92d336 ci: Add OLCF GitLab-CI

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !2638
2021-12-17 10:51:37 -05:00
Kenneth Moreland
d7a4e0d757 Merge topic 'unknown-cell-set'
1dc3d145a Allow `UnknownCellSet::Cast` return a reference
030ac1fff Fix some copy/paste errors with comments and variable names
4cb392ca2 Make DynamicCellSet directly an UnknownCellSet
6da5aa456 Replace DynamicCellSet implementation with UnknownCellSet
ac024587a Add UncertainCellSet

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !2647
2021-12-17 09:44:53 -05:00
Kenneth Moreland
a282ba2e0e Merge topic 'perlin-noise-updates'
a200592f4 Fix type conversions in PerlinNoise source
4204e4455 Add changelog for perline noise generator
8f6705450 Allow automatic seed for perlin noise

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2650
2021-12-17 09:38:33 -05:00
Dave Pugmire
88bedf34f8 Merge topic 'template_particletype'
69af0f003 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into template_particletype
34a2e762f Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into template_particletype
c19e5eaab Remove newline that was added.
108f4f1f2 fix compile error.
7dc0194ea Fix compile error.
86fba6846 Create typedefs for existing filters with same name.
09f4ff380 fix compiler errors.
9ee00e395 Fix examples and test
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Abhishek Yenpure <abhishek@uoregon.edu>
Merge-request: !2636
2021-12-16 19:59:58 -05:00
Kenneth Moreland
a200592f4f Fix type conversions in PerlinNoise source
The `Permutations` array was created using floating point numbers. But
integers were put into it and then used when taken out of it. Simplified
everything by simply making the value type of `Permutations` as
`vtkm::Id`.
2021-12-16 09:46:01 -07:00
Kenneth Moreland
4204e4455e Add changelog for perline noise generator 2021-12-16 09:46:01 -07:00
Kenneth Moreland
8f67054504 Allow automatic seed for perlin noise 2021-12-16 09:46:01 -07:00
Kenneth Moreland
1dc3d145a5 Allow UnknownCellSet::Cast return a reference
The replacement method, `AsCellSet`, will not support returning a
reference. However, we can continue to allow the deprecated method to
return the reference and correct that later when we move from the
deprecated method.
2021-12-16 08:48:04 -07:00
Kenneth Moreland
030ac1fff4 Fix some copy/paste errors with comments and variable names 2021-12-16 08:20:42 -07:00
Kenneth Moreland
c96f3b86a4 Merge topic 'post-test-images'
1dce468ff Post test render images to dashboard

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Nickolas Davis <nadavi@sandia.gov>
Merge-request: !2652
2021-12-15 15:45:40 -05:00
Kenneth Moreland
4cb392ca24 Make DynamicCellSet directly an UnknownCellSet
Before it was a DynamicCellSetBase<VTKM_DEFAULT_CELL_SET_LIST>. This
change causes some calls to templated DynamicCellSetBase arguments to
fail to resolve, but there were only 4 in the code base. In exchange,
DynamicCellSet requires a lot less characters in its symbol.
2021-12-15 13:00:12 -07:00
Kenneth Moreland
6da5aa4564 Replace DynamicCellSet implementation with UnknownCellSet
Soon, the `DynamicCellSet` interface will be deprecated so that code can
move to `UnknownCellSet`.
2021-12-15 12:59:31 -07:00
Kenneth Moreland
ac024587a6 Add UncertainCellSet
This is a replacement for DynamicCellSet that requires less templating.
2021-12-15 12:59:18 -07:00
Kenneth Moreland
1dce468ff7 Post test render images to dashboard
By adding some XML tags to the test output, you can push the images used
and generated for tests to the dashboard where they will appear
alongside the test output.

Also made it more automatic to find alternate versions of test images.
2021-12-15 11:12:44 -07:00
Vicente Adolfo Bolea Sanchez
67b92d3365 ci: Add OLCF GitLab-CI
Co-authored-by: Vicente Bolea <vicente.bolea@kitware.com>
Co-authored-by: Chuck Atkins <chuck.atkins@kitware.com
2021-12-15 13:00:47 -05:00
Kenneth Moreland
b613c34e64 Merge topic 'git-lfs-instructions'
778eab038 Add instructions on how to commit Git-LFS files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2651
2021-12-15 11:09:13 -05:00
Kenneth Moreland
778eab038c Add instructions on how to commit Git-LFS files 2021-12-15 07:17:10 -07:00
Li-Ta Lo
bc890dc470 Merge topic 'DataSetBuilder'
6c3799f80 revert CLion's auto change
04b05ac84 remove ArrayCopy from CopyInto
bb383ab76 remove #include Algorithms
1b2ea8ea8 remove ArrayCopy
942653bbe Extract implementation of MakeTestDataSet to .cxx

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !2649
2021-12-15 09:16:45 -05:00
Li-Ta Lo
6c3799f802 revert CLion's auto change 2021-12-14 15:56:07 -07:00
Li-Ta Lo
04b05ac84c remove ArrayCopy from CopyInto 2021-12-14 15:18:23 -07:00
Roxana Bujack
557055b9cc Merge topic 'amrFilter'
11d770659 add worklet include
7139a1c8c add amr capability as filter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !2646
2021-12-14 15:57:19 -05:00
Li-Ta Lo
bb383ab768 remove #include Algorithms 2021-12-14 10:20:18 -07:00
Li-Ta Lo
1b2ea8ea81 remove ArrayCopy 2021-12-14 09:36:33 -07:00
Li-Ta Lo
942653bbe2 Extract implementation of MakeTestDataSet to .cxx 2021-12-13 19:11:40 -07:00
Li-Ta Lo
06428e2bc7 Merge topic 'NewFilter'
ba2a710e7 Update NewFitlerInterface.md
1469d34b4 rename DoExecutePartitions
74905a05c use new header file
161391656 Add ChangeLog
0e3cc8076 restore deprecated filter::GenerateIds
130d0d9df Updated Doxygen comments
8cf02d363 New Filter Interface Design

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2641
2021-12-13 16:33:11 -05:00
Li-Ta Lo
ba2a710e7f Update NewFitlerInterface.md 2021-12-13 16:31:29 -05:00
Li-Ta Lo
1469d34b43 rename DoExecutePartitions 2021-12-13 12:17:15 -07:00
Li-Ta Lo
74905a05cd use new header file 2021-12-13 10:41:42 -07:00
Roxana Bujack
11d7706594 add worklet include 2021-12-13 09:50:18 -07:00
Roxana Bujack
7139a1c8c4 add amr capability as filter 2021-12-13 09:33:47 -07:00
Li-Ta Lo
161391656a Add ChangeLog 2021-12-13 09:28:20 -07:00
Li-Ta Lo
0e3cc80767 restore deprecated filter::GenerateIds
update comments

privatize DoExecute

remove Pre|PostExecute

more Eecute -> DoExecute changes

fixed a typo so GeneratedIds.h gets installed
2021-12-13 09:28:17 -07:00