Commit Graph

2868 Commits

Author SHA1 Message Date
Thomas J. Otahal
556b922733 Created a filter for the vector magnitude worklet.
Modified the vector magnitude worklet to accept VecAll instead
of Vec3 and return Scalar. Modified the Magnitude() and Sqrt() functions
to return FloatDefault for all inputs except for Float64.

Perhaps we should modify other functions in Math.h and VectorAnalysis.h to
return float types for intergral arguments instead of integral types?
2017-01-19 13:27:42 -07:00
Robert Maynard
f79cc9df8a Add in support for Git LFS to vtk-m.
The root level data folder is where all data files should exist.
2017-01-19 14:20:14 -05:00
Robert Maynard
2dc23cf1a8 Correct compilation errors on Windows with CUDA. 2017-01-19 14:02:35 -05:00
Kenneth Moreland
503bebda54 Merge topic 'array-handle-zip-in-place'
4d1da547 Fix ArrayHandleZip::PrepareForInPlace

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !660
2017-01-18 10:00:45 -05:00
Kenneth Moreland
d6eb477a45 Minor fixes to UnitTestWorkletReduceByKey 2017-01-17 15:53:17 -07:00
Kenneth Moreland
058439851e Remove static assert from templated function
There was a static assert in a templated function that was never
supposed to be used. Some compilers were fine as long as there was no
use of the templated function, but others errored out anyway. Change the
implementation to use the =delete keyword instead.

This won't have as nice of an error message, but you would have to jump
through some hoops to get to this point anyway. If this still does not
work, we could just probably remove the invalid templated function. The
compiler error would get even more obfuscated, but again I don't expect
anyone to actually run into it.
2017-01-17 15:53:15 -07:00
Kenneth Moreland
72b85559c2 Add ReducedValues[In][Out] tags to WorkletReduceByKey 2017-01-17 15:53:13 -07:00
Kenneth Moreland
ffa3b167b5 Add ValueCount tag to WorkletReduceByKey 2017-01-17 15:53:10 -07:00
Kenneth Moreland
add10f56cf Add Value[In][Out] tags for WorkletReduceByKey
This lets you give arrays of values paired with the keys that will be
grouped into (hopefully) small Vecs.
2017-01-17 15:53:08 -07:00
Kenneth Moreland
58eb8f168d Add WorkletReduceByKey and dispatcher
And the basic type for a reduce by key worklet and its associated
adapter. Right now the worklet only supports passing in keys. Values
come next.
2017-01-17 15:53:06 -07:00
Kenneth Moreland
cd64b69a55 Add Keys class
This class will manage the keys during a reduce-by-key worklet
execution.
2017-01-17 15:53:04 -07:00
Kenneth Moreland
4d1da5474a Fix ArrayHandleZip::PrepareForInPlace
The implementation was calling PrepareForOutput on the delegate arrays
rather than PrepareForInPlace, do when used with CUDA you did not get
the data on the device.

Also added a regression test to check this.
2017-01-17 15:33:18 -07:00
Robert Maynard
4a56e9f129 Merge branch 'contour-tree' into 'master'
Contour tree

See merge request !658
2017-01-17 17:00:54 -05:00
Robert Maynard
a6bd3a22e0 Make sure all custom storage containers are exported. 2017-01-16 09:17:38 -05:00
Robert Maynard
fc398d36a1 Make sure vtkm::Vec types are always exported. 2017-01-16 09:17:38 -05:00
Robert Maynard
bd1ff7a5ac Allow vtkm errors to properly work with shared libraries. 2017-01-16 09:17:38 -05:00
Robert Maynard
5921c8d9b8 vtkm_cont now contains explicit instantiations of common StorageBasic types. 2017-01-16 09:17:38 -05:00
Robert Maynard
0a34a4027c vtkm_cont now contains explicit instantiations of common ArrayHandles.
To help reduce compile and library size the vtkm_cont library now holds
common instantiations.
2017-01-16 09:17:38 -05:00
Robert Maynard
3c07c77fa7 Introduce vtkm_cont library to reduce weak vtable creation.
This reduces the number of weak vtables vtkm generates, resulting in
a reduction of binary sizes for projects that include vtkm classes in
multiple translation units.
2017-01-16 09:17:38 -05:00
Robert Maynard
d8d6fd1741 StorageTags are now always exported to resolve future dynamic_cast issues.
Class that need to be passed across dynamic library boundaries such as
DynamicArrayHandle need to be properly export. One of 'tricks' of this
is that templated classes such as PolymorphicArrayHandleContainer need
the Type and Storage types to have public visibility.

This makes sure that all vtkm storage tags have public visibility so
in the future we can transfer dynamic array handles across libraries.
2017-01-16 09:17:38 -05:00
Robert Maynard
a16f9fedbe Reduce the amount of vtables that vtkm::rendering produce. 2017-01-16 09:17:38 -05:00
Robert Maynard
4387dcf0f8 Introduce macros VTKM_ALWAYS_EXPORT and VTKM_NEVER_EXPORT
These are designed so that we can safely export template classes from
multiple dynamic libraries and have them all resolve to the same
type at runtime
2017-01-16 09:17:38 -05:00
Robert Maynard
4f43089fe3 Redesign our export headers to handle template exports. 2017-01-16 09:17:38 -05:00
Kenneth Moreland
f0413c4801 Merge topic 'require-num-points-in-explicit-cell'
713cf422 Make it not possible to create a cell set without specifying num points

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !644
2017-01-12 18:42:13 -05:00
Patricia Kroll Fasel - 090207
fd7f34c95d Fix warnings 2017-01-12 15:44:41 -07:00
Patricia Kroll Fasel - 090207
0950af7aeb Compiler warnings 2017-01-12 14:35:34 -07:00
Patricia Kroll Fasel - 090207
834f81f622 Fix order on class members to match constructor initialization -Wreorder
Make all non-templated PrintVectors methods inline
2017-01-12 13:57:04 -07:00
Kenneth Moreland
713cf4228a Make it not possible to create a cell set without specifying num points
The CellSetExplicit and CellSetSingleType classes have an ivar that
marks the number of points. There were several instances of code
creating cell sets without specifying the number of points. This can be
very bad if subsequent code needs that information.
2017-01-12 13:02:10 -07:00
Patricia Kroll Fasel - 090207
6db0c4e763 PrintVectors.h must be in CMakeLists.txt. Problem with the
non-templated code it contains causing doubly defineds.
2017-01-12 10:52:48 -07:00
Patricia Kroll Fasel - 090207
b3b5149b28 Use cont/testing/MakeTestDataSet.h and add contour tree tests.
Remove worklet/contourtree/PrintVectors.h from CMakeLists.txt.
2017-01-12 10:40:29 -07:00
Robert Maynard
be1e6588c1 Merge topic 'correct_exclusive_scan_tbb_2017'
35585f39 Correct a bug in tbb scan exclusive that was found using tbb 2017.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !652
2017-01-12 11:25:34 -05:00
Patricia Kroll Fasel - 090207
bed40256c8 Fix compiler warnings. Fix case table operation to comply. 2017-01-11 14:02:32 -07:00
Robert Maynard
79b74ccd3c Merge branch 'gcc6_warnings' into 'master'
Fix warnings on GCC6.

See merge request !656
2017-01-11 15:37:30 -05:00
David Lonie
a771c72c84 Merge topic 'exception_hierarchy'
4a9b8b6f Inherit std::exception in vtkm::cont::Error.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !655
2017-01-11 15:28:14 -05:00
Robert Maynard
35585f39ba Correct a bug in tbb scan exclusive that was found using tbb 2017. 2017-01-11 14:10:49 -05:00
Robert Maynard
69006fba60 Merge topic 'TestingDeviceAdapter_warnings'
9335e75e Fix casting warnings in TestingDeviceAdapter.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !659
2017-01-11 10:50:41 -05:00
Kenneth Moreland
5e752a2396 Merge topic 'warnings-compiling-with-vtk'
f23ff9fa Fix warnings about assignment operators not being generated
7ec8c034 Remove warning about constant conditional in VTKM_ASSUME

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !657
2017-01-11 10:46:57 -05:00
Robert Maynard
9335e75e51 Fix casting warnings in TestingDeviceAdapter. 2017-01-11 09:47:24 -05:00
Patricia Kroll Fasel - 090207
9548441565 Fix compiler warnings and test errors before merge. 2017-01-10 16:52:59 -07:00
Patricia Kroll Fasel - 090207
851dfc094b Correct the example compilation for TBB. 2017-01-10 12:33:45 -07:00
David C. Lonie
c928b14cfe Fix warnings on GCC6. 2017-01-10 14:22:22 -05:00
Kenneth Moreland
f23ff9fa49 Fix warnings about assignment operators not being generated
For some reason when VTK-m was being compiled as an accelerator in VTK,
Visual Studio 2013 gave a bunch of warnings about not being able to generate
assignment operators for many classes. This happened for classes with a
const ivar that could not be automatically set. (Automatic copy constructors
are fine on this count.) I'm not sure why these warnings did not happen
when just compiling VTK-m, nor am I sure why they were generated at all as
no code actually used the copy constructors.

This commit fixes the problems by adding a private declaration for assignment
operators that cannot be automatically created. No implementation is
provided, nor should any be needed.
2017-01-10 11:10:38 -07:00
Robert Maynard
03292c7149 Merge topic 'expose_failing_tbb_tests'
ad28ccad Update the default ARRAY_SIZE in TestingDeviceAdapter.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !653
2017-01-10 12:58:51 -05:00
Kenneth Moreland
7ec8c03489 Remove warning about constant conditional in VTKM_ASSUME
It is common practice to swallow a semicolon in a macro using a do/
while(false) loop that only executes once. However, the Visual Studio
2013 compiler was stupidly warning about having a constant expression
for the loop. Get around the problem by creating our own swallow
semicolon macros that disable this warning as necessary.
2017-01-10 10:40:17 -07:00
David C. Lonie
4a9b8b6f77 Inherit std::exception in vtkm::cont::Error.
Fixes #58.
2017-01-10 12:23:42 -05:00
Patricia Kroll Fasel - 090207
62a1cceea6 Add file that creates test data sets and use that instead for contour tree. 2017-01-09 15:50:23 -07:00
Patricia Kroll Fasel - 090207
f6140c39e2 Add LANL/LLC copyright notification. 2017-01-09 14:53:59 -07:00
Patricia Kroll Fasel - 090207
9412584bf2 First implementation of contour tree 2D and 3D, serial and cuda. 2017-01-09 13:54:47 -07:00
Robert Maynard
ad28ccad5a Update the default ARRAY_SIZE in TestingDeviceAdapter.
This will expose bugs inside the tbb backend. We had to use heap allocations
for test arrays, instead of stack as the new array increases started to
cause stack overflow on windows.
2017-01-09 13:41:21 -05:00
Robert Maynard
589285eb5e Merge topic 'correct_reduce_tbb'
a339f3ac Had to rewrite tbb reduce to correct all the problems.
0120157e Correct tbb reduction algorithm to be correct when using multiple threads.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !654
2017-01-05 09:25:23 -05:00