Commit Graph

2355 Commits

Author SHA1 Message Date
Robert Maynard
c4874340e5 Merge topic 'policy-inherit-defaults'
eb26b88c Change DefaultPolicy to PolicyDefault
bb32e408 Allow all policies to inherit defaults

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !619
2016-12-01 08:21:03 -05:00
Robert Maynard
a74bab02f4 Merge topic 'allow_reduction_to_different_T_type'
b97b4cc7 Allow thrust::reduce to work when iterator and initial value types differ.
64bcc343 Refactor MinAndMax to use vtkm::Vec<T,2> instead of Pair.
8d60ed57 Refactor MinAndMax to be a shared binary operator.
18375b54 Update Bound computations to always use a single Reduce call
2cfc9743 Reduce can support reduce to a T type that isn't the arrayhandles T type.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !614
2016-12-01 07:56:30 -05:00
Robert Maynard
f3c2f67660 Merge topic 'static-assert-windows'
349799fa Fix static assert for visual studio

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !618
2016-12-01 07:55:38 -05:00
Kenneth Moreland
ec5fd17536 Modify test_equal for values close to zero
I noticed the UnitTestTransform3D test failed using the random seed
1480544620. On closer inspection, I found that the issue was with the
comparison of two numbers close to 0. The numbers were just above the
threshold, but their difference was not quite enough to make the ratio
below the threshold.

After reviewing some other floating point comparisons, they seem to be
more forgiving of numbers close to 0. Thus, I changed this comparison to
pass if the difference between the numbers was below the threshold.

Because this makes the comparison a lot more forgiving for small
numbers, I lowered the default threshold by an order of magnitude. So
far it looks like the tests are passing, but we should look out for
occasional failures.
2016-11-30 21:57:15 -06:00
Robert Maynard
2b5b2ab1f8 Make sure FunctorsGeneral doest produce warnings when parsed by nvcc. 2016-11-30 17:13:12 -05:00
Robert Maynard
213188b2c3 Properly use CUDA signbit functions. 2016-11-30 15:36:51 -05:00
Robert Maynard
295de14deb Merge topic 'consistently_guard_around_windows_h'
6b1094c7 Consistently include windows.h by making a wrapper header.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !620
2016-11-30 13:56:49 -05:00
Dave Pugmire
cef40f853e Fix compiler warnings. 2016-11-30 12:52:40 -05:00
Dave Pugmire
3046d45900 Fix some compiler warnings.
Add another rectilinear test.
2016-11-30 12:41:59 -05:00
Dave Pugmire
8383f21a81 Add VTK reader for rectilinear grids. 2016-11-30 10:39:32 -05:00
Robert Maynard
80df037f73 CellSetExplicit Reverse Connectivity is abit more efficient.
Both computing the reverse connectivity and also the total footprint are now
smaller.
2016-11-29 14:17:02 -05:00
Dave Pugmire
52aa9b9ad0 Fix some compile errors. 2016-11-29 09:33:46 -05:00
Dave Pugmire
23d8d585a0 Add explicit 1D rendering. Also added some data model suport. 2016-11-28 16:07:40 -05:00
Robert Maynard
6b1094c767 Consistently include windows.h by making a wrapper header.
We previously included windows.h in numerous locations using different
techniques to guard against bringing in parts of the file that are bad
(min/max macros, etc). This solves the problem by consistently using
vtkm/internal/Windows.h to setup everything.
2016-11-28 09:54:37 -05:00
Dave Pugmire
db522c4cd1 Add GetCanvas calls to the mapper classes. 2016-11-28 09:41:01 -05:00
Robert Maynard
b97b4cc7ef Allow thrust::reduce to work when iterator and initial value types differ.
natively thrust::reduce is unable to handle the use case where the
iterator type and the initial value/return value are two different
types. We use array handle cast to work around this problem when
we detect this usecase.
2016-11-25 13:11:19 -05:00
Robert Maynard
64bcc34389 Refactor MinAndMax to use vtkm::Vec<T,2> instead of Pair.
The types are the same which makes Vec a more suitable container.
2016-11-25 13:11:19 -05:00
Robert Maynard
8d60ed57ad Refactor MinAndMax to be a shared binary operator. 2016-11-25 11:40:46 -05:00
Robert Maynard
18375b5424 Update Bound computations to always use a single Reduce call 2016-11-25 11:40:46 -05:00
Robert Maynard
2cfc9743e3 Reduce can support reduce to a T type that isn't the arrayhandles T type.
This has been done so that operations such as computing the Min/Max of
an array can be done in a single reduce step.
2016-11-25 11:40:46 -05:00
Robert Maynard
b470af4cc3 Merge topic 'render-no-opengl'
767fc9c6 Do not declare OpenGLHeaders.h when there is no OpenGL
10d9dd44 Remove GLEW_LIBRARIES from Rendering module libraries
0772a157 Revert "Don't build vtkm_rendering if we can't find opengl"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !617
2016-11-25 10:58:20 -05:00
Robert Maynard
53f4e6016d Merge topic 'tbb_parallel_reduce'
c8da8ae3 TBB now uses tbb::parallel_reduce for reductions.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !615
2016-11-25 10:58:03 -05:00
Kenneth Moreland
292500becf Merge topic 're-add-test-builds'
5a444af6 Make ArrayPortalStreaming methods CONT
e1a9264d Re-enable test builds

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !609
2016-11-23 17:54:13 -05:00
Kenneth Moreland
eb26b88cec Change DefaultPolicy to PolicyDefault
This is more in line with the VTK-m coding standards.
2016-11-23 14:05:16 -07:00
Kenneth Moreland
bb32e40804 Allow all policies to inherit defaults
Previously, all declared policies had to implement every tag required by
the policy, even if it was the same as the default. In addition to being
annoying, this makes us less forward compatible because if we add a new
item to the policy any unchanged policy would become incorrect.

This change moves the default policy declarations from the default
policy to PolicyBase. The default policy inherits all of them without
any change. Other policies need only override those that are different
than the default.
2016-11-23 14:00:49 -07:00
Kenneth Moreland
767fc9c659 Do not declare OpenGLHeaders.h when there is no OpenGL 2016-11-23 13:17:33 -07:00
Kenneth Moreland
349799fa81 Fix static assert for visual studio
For some reason on my Visual Studio 2013 the definition of
VTKM_STATIC_ASSERT (without the message) did not report where the actual
error message happened. This change seems to get Visual Studio to report
the location of the failed assert with a reasonable message.
2016-11-23 13:10:56 -07:00
Robert Maynard
c8da8ae354 TBB now uses tbb::parallel_reduce for reductions.
This results in a reductions under tbb have a 2x to 4x performance increase.
2016-11-23 14:32:18 -05:00
Kenneth Moreland
0772a157fd Revert "Don't build vtkm_rendering if we can't find opengl"
There are many rendering classes that do not rely on OpenGL. We really
want to be able to use this functionality on systems that do not have
OpenGL. That is a big part of the point.

This reverts commit c75feb74bb6add43e1be9a42a9bf4bf205b97c39.
2016-11-23 12:14:44 -07:00
Kenneth Moreland
4c0f909a2f Merge topic 'cast-error'
02e37f4b Fix an issue with casting a float to an int too soon

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !613
2016-11-23 13:57:04 -05:00
Dave Pugmire
87b1cdcacf cleanup. Remove some compiler warnings. 2016-11-23 13:45:03 -05:00
Dave Pugmire
d38e627057 Support for 1D rendering. 2016-11-23 10:48:22 -05:00
Kenneth Moreland
e43acbac28 Fix issue with private class in CUDA
CUDA has some strange rules about using private classes and anonymous
namespaces. For whatever reason, recent changes have introduced such an
issue. When compiling on CUDA, expose the problematic class. It is
testing code, so it does not matter much.
2016-11-22 17:31:50 -07:00
Kenneth Moreland
b142a8c032 Fix change in new Gradient worklet
Didn't catch the change in the last rebase.
2016-11-22 17:24:10 -07:00
Kenneth Moreland
c6cd9d02ba Implement CleanGrid filter 2016-11-22 17:16:49 -07:00
Kenneth Moreland
ce338d1484 Add a worklet for copying cell sets 2016-11-22 17:15:10 -07:00
Kenneth Moreland
3f9a1edb7b Change CellShapeTag*:Id type to vtkm::UInt8
The shape array in CellSetExplicit was changed a while ago to be of type
vtkm::UInt8. However, the shape types remained at vtkm::IdComponent. I
can think of no reason why they should not be the same type.
2016-11-22 17:12:54 -07:00
Kenneth Moreland
b175468082 Add RemoveUnusedPoints class
RemoveUnusedPoints contains a couple of worklets and some helper methods
to compact the points in a CellSetExplicit. This is helpful when you
have an operation that creates new cells but might not use all the
original points of the inputs.
2016-11-22 17:11:52 -07:00
Kenneth Moreland
63c748f049 Implement ArrayHandleGroupVecVariable
This is a fancy array handle that can group entries in another array by
arbitrary amounts. This allows us to implement input and output arrays
with a different sized Vec for each instance. This is necessary for
generating new topologies with cells of different types.
2016-11-22 17:10:09 -07:00
Kenneth Moreland
b3d0e1f99b Move VecFromPortal classes to vtkm package
These Vec-like objects can be generally usable in both the control and
execution environments.
2016-11-22 17:04:55 -07:00
Kenneth Moreland
02e37f4bc5 Fix an issue with casting a float to an int too soon
There was a case of bad casting where a Float32 that should be in the
range between 0 and 1 was cast to an Id and then multiplied by the size
of an array. The intention is to get a proportional index into the
array, but because the float was cast to an int first, you get either
the first or last index.

Instead, first cast the size of the array to a Float32, multiply it by
the fraction, and then cast back to an Id. That should give the desired
effect.
2016-11-22 15:34:56 -07:00
Robert Maynard
719a8bd35d Merge topic 'nvcc_version_check'
4de37559 fix a pragma location bug
9048e0ba detect cuda versions and decide if to put a diagnostic inside or outside of a class.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !611
2016-11-16 19:21:31 -05:00
Samuel Li
4de37559fd fix a pragma location bug 2016-11-16 09:55:22 -08:00
Kenneth Moreland
5a444af67b Make ArrayPortalStreaming methods CONT
Changing the macros of the methods of ArrayPortalStreaming to be only
for CONT (the control environment) rather than both CONT and EXEC (both
the control and export environments). ArrayPortalStreaming is really
only used in the control environment and passed to the default transport
where the data is copied to the execution environment.

My hope is that this change will eliminate some rather odd and non-
descriptive warnings on the dashboard.
2016-11-16 09:55:15 -07:00
Samuel Li
9048e0bac1 detect cuda versions and decide if to put a diagnostic inside or outside of a class. 2016-11-15 22:43:40 -08:00
Kenneth Moreland
fdaccc22db Remove exports for header-only functions/methods
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.
2016-11-15 22:22:13 -07:00
Robert Maynard
8861beda4b Merge topic 'add_vector_cell_gradient'
8dadf560 Add in support for vector fields to Gradient worklet.
d53f43fb CellDerivaties now support computing the derivatives of vtkm::Vec fields.
b4378c85 Allow vtkm::Matrix to support T values which are vtkm::Vec.
9caabf97 vtkm::Vec now supports +=, -=, *=, and /=.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !608
2016-11-15 23:39:10 -05:00
Robert Maynard
8dadf560cd Add in support for vector fields to Gradient worklet. 2016-11-15 18:54:53 -05:00
Robert Maynard
d53f43fb48 CellDerivaties now support computing the derivatives of vtkm::Vec fields. 2016-11-15 18:54:53 -05:00
Robert Maynard
b4378c8546 Allow vtkm::Matrix to support T values which are vtkm::Vec. 2016-11-15 18:54:53 -05:00
Robert Maynard
b936de0976 Merge topic 'fix_thrust_183_proxy_assignment_regression'
632d2a52 Thrust 1.8.3 uses raw_reference_cast instead of a direct assignment operator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !610
2016-11-15 18:52:51 -05:00
Robert Maynard
632d2a5211 Thrust 1.8.3 uses raw_reference_cast instead of a direct assignment operator
This usage of raw_referenc_cast returns a const PortalValue which is than
assigned too. So to work around the problem we need to mark operator= on
the class as const.
2016-11-15 17:03:59 -05:00
Robert Maynard
9caabf97ce vtkm::Vec now supports +=, -=, *=, and /=.
It is common to write template code that needs to operate across both
scalar and vector values. To facilitate code like this we are required
to provide these common operators.
2016-11-14 13:07:33 -05:00
Robert Maynard
7a52fa3940 Add in Cell Gradient for scalar fields. 2016-11-14 12:52:00 -05:00
Robert Maynard
7c07afffba Reduce the compilation size of the gradient computations. 2016-11-11 14:36:51 -05:00
Robert Maynard
c867b9bcca Remove unused variable 'coordinates' 2016-11-11 08:34:05 -05:00
Robert Maynard
b879ce84bc Merge topic 'remove_unused_class'
d52fc1f7 Remove PointCoordinatesBase which is not used.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !605
2016-11-10 15:34:51 -05:00
Robert Maynard
d52fc1f76c Remove PointCoordinatesBase which is not used. 2016-11-10 15:07:34 -05:00
Robert Maynard
3a9bcca016 Merge topic 'add_whole_topology_tag'
c4183cfa Refactor WholeCellSetIn to handle Point->Cell and Cell->Point
f65f5ea6 WorkletBase can now transport CellSets as a whole execution object.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !601
2016-11-10 14:50:04 -05:00
Robert Maynard
a21c02ce76 Merge topic 'correct_failing_math_tests'
97b3b4ce Increase tolerance on ACos tests when using ICC.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !604
2016-11-10 14:49:30 -05:00
Robert Maynard
97b3b4ceff Increase tolerance on ACos tests when using ICC.
When the intel compiler has vectorization enabled ( -O2/-O3 ) it converts the
`adjacent/hypotenuse` divide operation into reciprocal (rcpps) and
multiply (mulps) operations. This causes a change in the expected result that
is larger than the default tolerance of test_equal. So to resolve the problem
we increase the tolerance for acos when using icc.
2016-11-10 13:48:19 -05:00
Robert Maynard
c4183cfacc Refactor WholeCellSetIn to handle Point->Cell and Cell->Point 2016-11-10 13:21:19 -05:00
Christopher Sewell
f779e8a1bd Removing streaming scan inclusive for now 2016-11-09 15:43:57 -07:00
Christopher Sewell
faa69e539d vtkm::internal::Add to vtkm::Add 2016-11-09 14:21:50 -07:00
Christopher Sewell
8a8b409d4c Merge remote-tracking branch 'upstream/master' into StreamingArray 2016-11-09 12:15:58 -07:00
Robert Maynard
ad0593e845 Merge topic 'wavelet2'
35a81df0 change variable names to avoid confusion
b2719157 simplify functions to get the approximation and detail coefficients length
d7e94e3a update 2D idwt to not assign zero to the last element of cDTemp
568bd63f fix a few warnings
514dcf4b see if unused warning shows up
30660bf4 fix comments by Rob
97118931 improved error message when test failing
9b45dba3 fix 2 warnings
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !577
2016-11-08 16:10:15 -05:00
Dave Pugmire
c2b28a4437 Merge branch 'render_warnings' into 'master'
fix compiler warnings.

Fix a bunch of compiler warnings that were in the rendering code and dataset builder classes.

@kmorel 
@robertmaynard 

See merge request !597
2016-11-08 15:24:15 -05:00
Kenneth Moreland
01901e2c97 Merge topic 'dll-export-warnings'
08d857fe Suppress warnings about exporting classes in dll

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !600
2016-11-08 11:59:30 -05:00
Robert Maynard
f65f5ea6bb WorkletBase can now transport CellSets as a whole execution object. 2016-11-08 08:54:52 -05:00
Dave Pugmire
80eb8621e2 more uninitialized compiler warnings... 2016-11-07 15:24:38 -05:00
Kenneth Moreland
08d857fe92 Suppress warnings about exporting classes in dll
In VTK-m libraries, we are typically exporting (with declspec) classes rather
than the independent methods within the class. When you are exporting to a
dll in MSVC and the class contains a field that is not similarly exported,
then you get a warning. This is generally not an issue for our use since we
are really only using classes from the standard library and distributed with
VTK-m itself. The only sane way to fix the issue is to just disable the
warning.
2016-11-07 13:16:23 -07:00
Dave Pugmire
2975b03a53 Remove 'uninitialized variable' warning. 2016-11-07 15:07:03 -05:00
Dave Pugmire
80df759238 Force uniform datasets to always produce FloatDefault point coordiantes. 2016-11-07 14:12:32 -05:00
Kenneth Moreland
f17a6b3774 Fix warning about comparing signed/unsigned integers 2016-11-07 10:56:11 -07:00
Dave Pugmire
6b16948d0f Force uniform datasets to always produce FloatDefault point coordiantes. 2016-11-07 11:27:00 -05:00
Dave Pugmire
cd842c696e fix warnings. 2016-11-04 15:28:48 -04:00
Dave Pugmire
f413bac78c Fix compiler warnings. 2016-11-04 11:43:30 -04:00
Dave Pugmire
dc547ec671 compiler warnings. 2016-11-04 08:32:46 -04:00
Dave Pugmire
5bd9b0ff5f minor fixes. 2016-11-03 16:57:30 -04:00
Dave Pugmire
3e306a9d7b compiler warnings... 2016-11-03 16:09:24 -04:00
Dave Pugmire
e1c659a4fb fix compiler warnings. 2016-11-03 15:15:40 -04:00
Robert Maynard
653a9a1c42 Make sure we install the brigand header. 2016-11-03 08:03:51 -04:00
Robert Maynard
25dae61fa7 Merge topic 'allow_rendering_to_build_on_windows'
6d9dd7d2 Correct conversion warning in VolumeRendererStructured
cc8121d9 Fix uninitialized warnings from DecodePNG.
c75feb74 Don't build vtkm_rendering if we can't find opengl.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !595
2016-10-31 17:41:56 -04:00
Robert Maynard
6d9dd7d233 Correct conversion warning in VolumeRendererStructured 2016-10-31 15:27:45 -04:00
Robert Maynard
cc8121d997 Fix uninitialized warnings from DecodePNG. 2016-10-31 15:26:05 -04:00
Robert Maynard
c75feb74bb Don't build vtkm_rendering if we can't find opengl. 2016-10-31 15:16:36 -04:00
Robert Maynard
c23c91de14 Exclude a specific ACos test on ICC in release mode.
When the intel compiler has vectorization enabled ( -O2/-O3 ) it converts the
`adjacent/hypotenuse` divide operation into reciprocal (rcpps) and
multiply (mulps) operations. This causes a change in the expected result that
is larger than the tolerance of test_equal.
2016-10-28 14:57:16 -04:00
Robert Maynard
5cd9acadf6 Fixup for 1 back. 2016-10-28 14:57:16 -04:00
Robert Maynard
f31d6c2258 Refactor vtkm::Types to be concise and move math helpers out of internal.
I have verified that the optimized assembly for Vec<3> and Vec<4> are consistent
with what we generated before.
2016-10-28 14:57:16 -04:00
Christopher Sewell
d7ff809716 Attempt to resolve warnings for streaming device adapter algorithms 2016-10-27 11:09:27 -06:00
Samuel Li
35a81df04f change variable names to avoid confusion 2016-10-25 19:19:55 -07:00
Samuel Li
b2719157c5 simplify functions to get the approximation and detail coefficients length 2016-10-25 19:08:11 -07:00
Christopher Sewell
9afbdffbf5 Attempt fix warning in streaming 2016-10-25 08:36:24 -06:00
Samuel Li
d7e94e3ad5 update 2D idwt to not assign zero to the last element of cDTemp 2016-10-24 19:11:05 -07:00
Kenneth Moreland
4f81f04ff3 Fix warning about type conversion 2016-10-24 16:47:36 -04:00
Kenneth Moreland
622a44339d Add VTK_EXEC_EXPORT to new CellAverage methods
Frankly, I am surprised that the CellAverage worklet compiled on CUDA
when the parenthesis operator relied on methods that were not delcared
as __device__.
2016-10-23 11:51:09 -04:00
Kenneth Moreland
adfb0bba55 Fix ApplyPolicy for CoordinateSystem objects
There was a mismatch in the ApplyPolicy function for CoordinateSystem
objects. The return type declared for the function was not the same as
the type of object actually returned.

Also added a test that actually uses a filter with a CoordinateSystem as
a field to actually test this functionality.
2016-10-23 11:51:09 -04:00
Kenneth Moreland
f820f0c76d Support arbitrary field types in CellAverage
Previously, the CellAverage worklet only operated on scalar fields.
However, there is no reason why you cannot average vectors. This change
allows passing input fields with arbitrary value types in the field
array.

We will use this functionality in the commit to test running filters on
coordinate systems (which, of course, are Vec 3 objects).
2016-10-23 11:51:09 -04:00
Kenneth Moreland
fe277ca895 Merge topic 'remove-unneeded-glfw'
797d30d7 Remove unnecessary link from vtkm_rendering to glfw

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !593
2016-10-23 09:48:06 -04:00
Christopher Sewell
a5a487b365 Attempt 15 to resolve Windows compiler warning with streaming storage 2016-10-23 07:24:28 -06:00
Kenneth Moreland
797d30d7bb Remove unnecessary link from vtkm_rendering to glfw
There is no code in the rendering library that uses GLFW. (GLFW is
currently only used directly by tests and examples.) This adds
unnecessary link dependencies that can only hurt us later.
2016-10-22 16:03:16 -06:00
Robert Maynard
72c44dc993 Merge topic 'remove_boost_cmake_logic'
49cf198b Update the documentation to reflect we don't require boost.
e506afee Remove warning suppressions that are specifically for boost.
ab98ae89 Remove boost CMake logic as VTK-m doesn't require boost now.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !591
2016-10-22 09:15:20 -04:00
Christopher Sewell
b9d8172635 Attempt 14 to resolve Windows compiler warning with streaming storage 2016-10-21 17:31:45 -06:00
Christopher Sewell
93d7956daf Attempt 13 to resolve Windows compiler warning with streaming storage 2016-10-21 16:08:13 -06:00
Christopher Sewell
92d686fccd Attempt 12 to resolve Windows compiler warning with streaming storage 2016-10-21 15:12:22 -06:00
Christopher Sewell
8e7caab8dc Attempt 11 to resolve Windows compiler warning with streaming storage 2016-10-21 13:42:21 -06:00
Christopher Sewell
1ebf0c17b6 Attempt 10 to resolve Windows compiler warning with streaming storage 2016-10-21 13:10:49 -06:00
Christopher Sewell
45208e83cc Attempt 9 to resolve Windows compiler warning with streaming storage 2016-10-21 12:41:23 -06:00
Christopher Sewell
f1af30804e Attempt 8 to resolve Windows compiler warning with streaming storage 2016-10-21 10:58:14 -06:00
Matt Larsen
e15c858f8c Merge topic 'fix/dataset_reader'
4f482474 Fixing error in data set reader that zeroed out cell asscociated fields in unstructured data sets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !587
2016-10-21 12:35:18 -04:00
Christopher Sewell
c540a699f2 Attempt 7 to resolve Windows compiler warning with streaming storage 2016-10-21 10:12:15 -06:00
Robert Maynard
e506afee3d Remove warning suppressions that are specifically for boost. 2016-10-21 08:41:22 -04:00
Robert Maynard
ab98ae8992 Remove boost CMake logic as VTK-m doesn't require boost now. 2016-10-21 08:41:22 -04:00
Christopher Sewell
6096b6f12a Attempt 6 to resolve Windows compiler warning with streaming storage 2016-10-20 15:35:54 -06:00
Robert Maynard
5ec273aade Remove all occurrences of boost::lexical_cast from vtk-m.
Replaced with the new std::stof/stoi functions.
2016-10-20 16:55:15 -04:00
Christopher Sewell
2c8d2d3006 Attempt 5 to resolve Windows compiler warning with streaming storage 2016-10-20 14:27:07 -06:00
Robert Maynard
285e594e7a Merge topic 'cxx11_relax_for_intel'
a8e06d8e Expand how we check that we have a c++11 compiler.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !589
2016-10-20 15:45:32 -04:00
Robert Maynard
a8e06d8ec6 Expand how we check that we have a c++11 compiler.
certain versions of the intel compiler set __cplusplus to 1, so instead
we need to check for __INTEL_CXX11_MODE__.
2016-10-20 15:05:05 -04:00
Christopher Sewell
4af0cd4bfb Attempt 4 to resolve Windows compiler warning with streaming storage 2016-10-20 13:00:43 -06:00
Christopher Sewell
05975a2325 Attempt 3 to resolve Windows compiler warning with streaming storage 2016-10-20 10:32:30 -06:00
Robert Maynard
5e6169f720 Merge topic 'cellset_single_type_correct_num_points'
37efba15 CellSetSingleType now can be constructed with proper number of points

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !586
2016-10-20 10:53:19 -04:00
Robert Maynard
37efba159c CellSetSingleType now can be constructed with proper number of points
This is important so that when we execute a Cell->Point worklet we
don't have to compute the number of points from the connectivity array.
2016-10-20 08:33:16 -04:00
Robert Maynard
ca9233226e Merge topic 'refactor_vtkm_rendering_export_markup'
7d295de8 Refactor vtk-m symbol visibility macros to be on the classes.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !585
2016-10-19 20:02:04 -04:00
Matt Larsen
4f482474e9 Fixing error in data set reader that zeroed out cell asscociated fields in unstructured data sets 2016-10-19 15:00:39 -07:00
Christopher Sewell
278db37c08 Attempt 2 to resolve Windows compiler warning with streaming storage 2016-10-19 14:44:48 -06:00
Robert Maynard
7d295de8c9 Refactor vtk-m symbol visibility macros to be on the classes.
Instead of labeling each method that needs to have visibility
we can label entire classes, this reduces the amount of noise and
potential for mistakes when writing classes.
2016-10-19 15:01:32 -04:00
Christopher Sewell
c5bd2a3e80 Attempt 1 to resolve Windows compiler warning with streaming storage 2016-10-19 12:17:01 -06:00
Robert Maynard
788458b0c7 Correct failures finding ptrdiff_t now that boost is gone. 2016-10-19 08:35:45 -04:00
Robert Maynard
5c564b0657 Replace usage of boost::iterator_facade with hand rolled iterator. 2016-10-19 08:35:42 -04:00
Christopher Sewell
72d9783c38 Merge remote-tracking branch 'upstream/master' into StreamingArray 2016-10-17 17:51:23 -06:00
Mark Kim
4f835fb31d Need to continuously upload the camera for examples/Rendering. 2016-10-17 10:34:20 -04:00
Dave Pugmire
b9b2774e1a Merge branch 'master' into 'master'
Rendering using VBOs.

2D and 3D rendering is now done using VBOs.


@kmorel @robertmaynard 
I think this is redy. You guys ok with this merge req?

See merge request !566
2016-10-13 15:46:03 -04:00
Kenneth Moreland
4205b94f72 Fix warnings about unused method parameters
This probably sneaked by the dashboards because not many of them compile
the benchmarking code.
2016-10-13 11:51:17 -06:00
Samuel Li
568bd63fbe fix a few warnings 2016-10-13 09:11:41 -07:00
Mark Kim
464da87d5a Merge branch 'master' of gitlab.kitware.com:vtk/vtk-m 2016-10-12 14:40:32 -04:00
Robert Maynard
3e09b2cebc VecFromPortal::CopyTo can now handle const value Portals. 2016-10-12 13:28:36 -04:00
Dave Pugmire
b5007de0ab compile warnings. 2016-10-12 08:35:45 -04:00
Samuel Li
514dcf4b44 see if unused warning shows up 2016-10-11 21:40:11 -07:00
Samuel Li
30660bf475 fix comments by Rob 2016-10-11 13:42:51 -07:00
Samuel Li
971189313a improved error message when test failing 2016-10-11 07:26:14 -07:00
Kenneth Moreland
6159190669 Fix function signature for UnitTestTransferGLUT
The function UnitTestTransferGLUT's second argument was declared as type
char **. However, the automatic code generated by CMake's testing
framework calls the function with the type char *[]. Some compilers
distinguish between these two types and were causing linking errors.
Fixed the type so the signatures match.
2016-10-11 08:03:36 -06:00
Samuel Li
9b45dba368 fix 2 warnings 2016-10-10 10:13:22 -07:00
Samuel Li
e4a9304926 Merge branch 'vtkm/master' into wavelet2 2016-10-10 09:16:16 -07:00
Robert Maynard
c0273cef0d Merge topic 'tbb_disable_implict_library_linking'
154a4ab6 Make sure tbb doesn't enable autolinking on windows.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !576
2016-10-10 11:31:58 -04:00
Samuel Li
8e98eeea6c fixed a few warnings 2016-10-09 22:34:32 -07:00
Samuel Li
ff16e47229 remove file not needed 2016-10-09 22:07:01 -07:00
Samuel Li
548e212e55 2D wavelet compressor ready for Rob to review 2016-10-09 21:52:02 -07:00
Samuel Li
edd93c435a new implementation of 2D transforms pass test 2016-10-09 17:07:49 -07:00
Christopher Sewell
c6e15c1240 Merge remote-tracking branch 'upstream/master' into StreamingArray 2016-10-07 18:10:29 -06:00
Christopher Sewell
1aa092e027 Removing unnecessary allocation in streaming scan 2016-10-07 18:09:50 -06:00
Robert Maynard
f30ebeffa4 Merge topic 'update_interop_tests_to_handle_osmesa'
59a24105 Refactor the Interop tests to work with OSMesa and GLUT.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !575
2016-10-07 17:42:51 -04:00
Robert Maynard
154a4ab6e5 Make sure tbb doesn't enable autolinking on windows.
Since vtk-m is header only, we don't want everybody that is including
the tbb headers to auto-link to libtbb. So disable this behavior.
2016-10-07 16:08:16 -04:00
Robert Maynard
59a24105c3 Refactor the Interop tests to work with OSMesa and GLUT. 2016-10-06 12:57:29 -04:00
Robert Maynard
e6bbfbe5ce Update the Worklet based benchmarks to also test dynamic arrays.
This is useful so that we know the performance impact on different
ways to implement virtual arrays in vtk-m.
2016-10-06 11:54:06 -04:00
Samuel Li
7eb494895f forward transform now avoids data copy when performing multi-level transforms 2016-10-05 15:52:07 -07:00
Dave Pugmire
60b67fef71 code cleanup. 2016-10-05 09:33:47 -04:00
Dave Pugmire
c7da86f04c compiler warning. 2016-10-05 08:55:19 -04:00
Dave Pugmire
ebef07299e Remove some -Wreorder warnings. 2016-10-04 17:00:05 -04:00
Dave Pugmire
c25a028dcc compile warnings. 2016-10-04 15:29:42 -04:00
Dave Pugmire
a8feb67ad3 warnings.... 2016-10-04 15:10:20 -04:00
Dave Pugmire
31654c2545 fix compiler warning. 2016-10-04 14:38:35 -04:00
Dave Pugmire
fed8c7228c fix compiler warnings. 2016-10-04 13:31:52 -04:00
Dave Pugmire
827bf10795 compiler warnings. 2016-10-04 12:43:04 -04:00
Dave Pugmire
668e8115af Fix compiler warnings. 2016-10-04 11:59:00 -04:00
Kenneth Moreland
039efd6b7e Fix some issues with OpenGL configuration
Change the OpenGL configuration to require GLEW as most of the OpenGL
code actually requires GLEW (or will as soon as the VBO branch gets
merged in).

Also removed some stray find_package commands and rearranged the
configuration to use the vtkm_configure_component_* commands instead.
2016-10-03 17:34:15 -06:00
Kenneth Moreland
30e9651658 Merge topic 'restore-function-interface-api'
452af3a0 Restore the AppendType and ReplaceType templates of FunctionInterface

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !570
2016-10-03 12:20:36 -04:00
Christopher Sewell
3ee96d9fbd Fixing warning about typedef in ArrayHandleStreaming 2016-09-30 14:47:50 -06:00
Robert Maynard
43fe1a92cb Enable the serial backend tests. 2016-09-30 15:12:34 -04:00
Christopher Sewell
58952e1465 Adding streaming reduce 2016-09-29 15:06:34 -06:00
Christopher Sewell
bf9e1366f5 Fixing warning about char* 2016-09-29 14:33:21 -06:00
Kenneth Moreland
452af3a0eb Restore the AppendType and ReplaceType templates of FunctionInterface
These are documented and an expected part of the interface. (The
examples in the user's guide started to fail because they were removed.
2016-09-29 16:22:26 -04:00
Christopher Sewell
9e2210927e Adding streaming exclusive scan and fixing bugs with streaming inclusive scan, but still need to make it treat input as const 2016-09-28 18:29:04 -06:00
Dave Pugmire
c4bd8913c2 Use a new worklet to map vertex colors through a colormap. 2016-09-28 14:23:18 -04:00
Robert Maynard
0f58d6fc54 Add vtkm/cont/serial directory for the serial backend. 2016-09-28 14:22:53 -04:00
Robert Maynard
f7a9bbe0e7 All cuda / tbb unit tests follow the same naming pattern. 2016-09-28 14:22:53 -04:00
Mark Kim
0ace430746 Merge branch 'master' of gitlab.kitware.com:dpugmire/vtk-m 2016-09-28 10:59:27 -04:00
Mark Kim
f2a6d8d5e3 Change the for loop that converts color to Worklet. 2016-09-28 10:57:05 -04:00
Robert Maynard
80b220ff0d Remove boost::random usage from DataSetBuilder tests. 2016-09-28 10:54:04 -04:00
Robert Maynard
70abe603c5 Merge topic 'use_brigand_over_boost_mpl'
ba8c8586 Get IntegerSequence to work correctly with MSVC.
377532c7 Update brigand to get a chunk of msvc2013 fixes.
a7f7cfe4 Update brigand.hpp to get corrections for MSVC2013.
a931b8e2 FunctionInterface and DispatcherBase don't require boost now.
ac0929a1 Add fast tracks for ListTag operations on size <= 4.
7ad88b6e Use c++11 variadic templates as storage of ListTags.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !559
2016-09-28 08:41:25 -04:00
Dave Pugmire
c99fe8b65e Remove rendering tests that have been moved to subdirectories.
Fix a compile error in canvas constructor in the GLFW test.
2016-09-27 14:04:28 -04:00
Robert Maynard
ba8c85866a Get IntegerSequence to work correctly with MSVC. 2016-09-27 09:02:53 -04:00
Robert Maynard
377532c7a6 Update brigand to get a chunk of msvc2013 fixes. 2016-09-27 09:02:39 -04:00
Mark Kim
a41e0f28df Merge branch 'master' of gitlab.kitware.com:vtk/vtk-m 2016-09-26 16:12:19 -04:00
Mark Kim
2db35b0041 Removed extraneous debug output. 2016-09-26 15:09:41 -04:00
Robert Maynard
a7f7cfe4f9 Update brigand.hpp to get corrections for MSVC2013. 2016-09-26 10:11:29 -04:00
Robert Maynard
a931b8e295 FunctionInterface and DispatcherBase don't require boost now. 2016-09-23 16:39:20 -04:00
Robert Maynard
ac0929a1cc Add fast tracks for ListTag operations on size <= 4.
As the significant majority of Lists contain for or less items,
this is a significant improvement to performance.
2016-09-23 16:39:20 -04:00
Robert Maynard
7ad88b6e5c Use c++11 variadic templates as storage of ListTags. 2016-09-23 16:39:20 -04:00
Robert Maynard
248ec04db7 Correct double trailing semicolons with VTKM_IS_TOPOLOGY_ELEMENT_TAG 2016-09-23 16:38:52 -04:00
Samuel Li
edd74febd8 Resolving merge conflicts 2016-09-23 09:27:44 -07:00
Christopher Sewell
8f892bf8a0 Changing namespaces in ArrayHandleStreaming 2016-09-23 10:12:37 -06:00
Christopher Sewell
b27190e54b Merge remote-tracking branch 'upstream/master' into StreamingArray 2016-09-23 09:49:25 -06:00
Mark Kim
5827473abb Merge branch 'master' of gitlab.kitware.com:dpugmire/vtk-m 2016-09-23 09:46:48 -04:00
Dave Pugmire
7a2874cf44 Add 1D support for uniform and rectilinear data. 2016-09-23 09:00:40 -04:00
Samuel Li
2271751f79 merge request to conclude LANL work 2016-09-22 16:13:50 -07:00
Mark Kim
9100a58da4 glew undefs GLAPI and GLAPIENTRY. osmesa.h needs them. 2016-09-22 16:44:52 -04:00
Mark Kim
4076aef075 Ubuntu 16.04's OSMesa version 11.2.0 is compiled without gallium/llvmpipe, so it doesn't support GLSL 1.3 or higher. 2016-09-22 16:25:41 -04:00
Kenneth Moreland
30de41271e Merge topic 'build-rendering-to-enable-rendering'
4b838263 Fix uninitialized variable warning in structured volume renderer
1e819c33 Remove uninitialized value warnings from PNGDecode
c1de0e07 Change VTKm_BUILD_RENDERING to VTKm_ENABLE_RENDERING

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !553
2016-09-22 15:40:36 -04:00
Kenneth Moreland
4b83826345 Fix uninitialized variable warning in structured volume renderer
One of the dashboard was complaining that the bottomLeft variable might
have been used uninitialized because it got set in a condition above it.
In fact, that condition is always true the first during the first
iteration, but it is not worth fighting the compiler over it. Instead,
just initialize the value of bottomLeft when it is constructed.
2016-09-22 09:52:12 -06:00
Kenneth Moreland
1e819c335f Remove uninitialized value warnings from PNGDecode
One of the dashboard compilers found a code path in PNGDecode where if
given a buffer too short for a header the info.width and info.height
were not initialized but their values still returned to the calling
function. This case does not really matter since an error is also
returned, but still technically incorrect. Fixed the problem by
initializing the width and height to 0 (which could help anyway if the
error is not properly checked).
2016-09-22 09:43:24 -06:00
Samuel Li
d19bbfac81 sync to laptop 2016-09-21 20:25:56 -07:00
Matt Larsen
69d4ced2ac Fixing typo 2016-09-21 14:14:27 -07:00
Matt Larsen
a564ca0f3e Casting size_t 2016-09-21 14:14:26 -07:00
Matt Larsen
0015e3150b Adding static cast to suppress warnings 2016-09-21 14:14:26 -07:00
Matt Larsen
d9bd4cb698 Adding else statement 2016-09-21 14:14:26 -07:00
Matt Larsen
f623400151 Adding support in the vtk data set reader for skipping strings in field data 2016-09-21 14:14:26 -07:00
Kenneth Moreland
c1de0e0746 Change VTKm_BUILD_RENDERING to VTKm_ENABLE_RENDERING
This makes the name more consistent with the names of the other VTK-m
CMake options.

Also changed the default to be ON. I do not see a big downside to
compiling the rendering library most of the time.
2016-09-21 14:38:00 -06:00
Dave Pugmire
a12b5eeae3 Fix compile errors. decl for memcpy required. 2016-09-20 11:03:25 -04:00
Kenneth Moreland
0ca69cf65f Merge topic 'osmesa-option'
123bc8b6 Add a configuration error if OSMesa was not found
0a61085d Do not load OpenGL libraries if OSMesa already loaded
640e92c7 Add VTKm_ENABLE_OSMESA option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !548
2016-09-17 10:11:55 -04:00
Samuel Li
9a3c2ea2a0 1 level DWT/IDWT pass all my tests 2016-09-16 19:39:42 -07:00
Samuel Li
093db83474 almost pass all tests, move to Alaska to debug one more case 2016-09-16 19:20:53 -06:00
Christopher Sewell
5f6ff438da Fixing typename issue in UnitTestStreamingSine 2016-09-15 18:30:50 -06:00
Christopher Sewell
d92f39df12 Merge branch 'master' into StreamingArray 2016-09-15 17:54:59 -06:00
Christopher Sewell
610f96a831 Adding streaming inclusive scan 2016-09-15 17:46:09 -06:00
Mark Kim
c99c05b6f0 Change glfw unit test to also test vbo uploading. 2016-09-15 13:56:50 -04:00
Mark Kim
bb7fe4ad8e It's possible that the length of shader compiler message to be less than
or equal to zero. If we don't check for that, it'll spit out garbage.
2016-09-15 13:55:16 -04:00
Kenneth Moreland
123bc8b6e2 Add a configuration error if OSMesa was not found
If VTKm_ENABLE_OSMesa was on but OSMesa was not found, CMake would just
give a status update but happily configure. This change checks for the
condition where VTKm_ENABLE_OSMesa is on but OSMesa was not configured
correctly and raises an error in this case.
2016-09-14 16:04:37 -06:00
Mark Kim
7cfc119999 Demo.cxx: MapperRayTracer is no longer a templated class.
UnitTestMapperEGL.cxx: MapperGL is no longer a templated class.
UnitTestMapperGLFW.cxx: strmp needs cstring
rendering/CMakeLists.txt: need to append egl_sources to sources.
2016-09-14 15:58:45 -04:00
Mark Kim
ecf57f8f31 need glewInit. 2016-09-14 11:25:03 -04:00
Mark Kim
c216c98c57 Merge branch 'umaster' 2016-09-14 10:39:52 -04:00
Mark Kim
fbaee11da9 Demo.cxx: MapperRayTracer is no longer a templated class.
UnitTestMapperEGL.cxx: MapperGL is no longer a templated class.
UnitTestMapperGLFW.cxx: strmp needs cstring
rendering/CMakeLists.txt: need to append egl_sources to sources.
2016-09-14 10:33:51 -04:00
Mark Kim
f293c5a0bc Merge branch 'glut-unittest' 2016-09-14 09:19:57 -04:00
Samuel Li
32fb705c2c sync test program 2016-09-13 19:53:17 -07:00
Samuel Li
d6ceac7eb5 sync to mac to keep developing 2016-09-13 19:46:42 -07:00
Samuel Li
a045a767fa sync to use gdb 2016-09-13 13:10:38 -06:00
Dave Pugmire
36be354980 Merge branch 'glut-rendertest' into 'master'
Add glut rendering unittest.

Make the GLFW package variables advanced, and add it to the configure components.
Modify the other examples that use GLUT to use the configure components command.

See merge request !546
2016-09-13 14:20:04 -04:00
Samuel Li
2ea00857e3 ForwardTransform takes 2 extensions separately 2016-09-12 17:56:48 -06:00
Kenneth Moreland
5455608c69 Remove boost::shared_ptr from rendering library
The remove boost::shared_ptr and the rendering library branches where
developed simultaneously, and thus some of the rendering library
implementation was using boost::shared_ptr like the old code. Bring up
to date with the rest of VTK-m by using std::shared_ptr instead.
2016-09-12 11:08:06 -06:00
Samuel Li
ac82b2ca2e newer version of extend2D pass tests 2016-09-11 15:47:26 -07:00
Samuel Li
7e756e3a5a move to linux to debug 2016-09-11 16:14:01 -06:00
Samuel Li
c0a35c01fb 2DExtendRight now deals with signal that comes with a padded zero 2016-09-09 17:57:50 -06:00
Samuel Li
d1be8e5873 add const keyword to worklet member variables 2016-09-09 17:16:33 -06:00
Kenneth Moreland
e6686e8be7 Merge branch 'master' into rendering-library 2016-09-09 13:59:15 -06:00
Dave Pugmire
ffd2d0eac6 Add glut rendering unittest.
Make the GLFW package variables advanced, and add it to the configure components.
Modify the other examples that use GLUT to use the configure components command.
2016-09-09 15:33:34 -04:00
Robert Maynard
4f65da41b9 Remove usage of BOOST_CONCEPT_CHECK.
Instead manually verify the iterator type ourselves inside CopyInto.
2016-09-09 09:43:09 -04:00
Samuel Li
3ef6d284cf InverseTransform2D takes filters in constructor. 2016-09-08 17:35:17 -06:00
Kenneth Moreland
77ecfbeb78 Explicitly implement constructors and destructors
The clang compiler was running into linker errors constructors of
classes with virtual methods that were inline and destructors that were
not declared at all. In this case, the compiler was not creating
everything needed by a virtual table and the link died.
2016-09-08 17:08:17 -06:00
Samuel Li
b813c4c9c5 ForwardTransform2D() takes the filters in constructor. 2016-09-08 17:05:58 -06:00
Samuel Li
39267ce4fb InverseTransformEven() keeps coeffs by itself 2016-09-08 16:49:20 -06:00
Samuel Li
89c1efda59 InverseTransformOdd() keeps coeffs by itself 2016-09-08 16:28:03 -06:00
Kenneth Moreland
0bcac3eb5d Remove "export" from virtual ArrayHandle destructor
One of the dashboards is complaining about the destructor implementation
not being used in a particular test build. I suspect it is because the
export macro has an inline, so I am trying removing it.
2016-09-08 16:06:09 -06:00
Samuel Li
d1e12ebcaa put filter coeffs into worklet 2016-09-08 15:49:23 -06:00
Robert Maynard
c2769b81e6 Move over from boost/random to c++11 random. 2016-09-08 17:10:39 -04:00
Kenneth Moreland
5c1352872a Remove VTKm_BUILD_SHARED_LIBS from Configure.h
It is not really necessary.
2016-09-08 07:58:04 -06:00
Samuel Li
ff4ee81d02 fix a cuda memory bug 2016-09-07 16:43:10 -07:00
Kenneth Moreland
52838e9ed2 Make font factory arrays static for faster compilation
I noticed that Visual Studio was taking an insane amount of time to
compile BitmapFontFactory.cxx (~20 minutes). Following some suggestions
on stackoverflow (http://stackoverflow.com/questions/7893850/long-
compile-times-in-visual-c-2010-with-large-static-arrays) I changed the
arrays to be static const (something that is more viable when compiling
a library instead of header-only). The compile after this changes seems
basically immediate now.
2016-09-07 16:48:11 -06:00
Kenneth Moreland
7e0ec48cab Enable building shared libraries 2016-09-07 16:48:09 -06:00
Kenneth Moreland
17194ff3a6 Update OSMesa test for new rendering class interfaces 2016-09-07 16:48:07 -06:00
Kenneth Moreland
0dab3f2adf Fix warning about precision conversion 2016-09-07 16:48:05 -06:00
Kenneth Moreland
22c6741152 Add View to rendering library
To get rid of some templates, I added the ability to create new
instances of mappers and canvases without knowing their type.
2016-09-07 16:48:04 -06:00
Kenneth Moreland
26671e9fd6 Add WorldAnnotator to rendering library 2016-09-07 16:48:01 -06:00
Kenneth Moreland
219d6c02a1 Add TextureGL to rendering library
Also hide internals and other GL-ness from the interface.
2016-09-07 16:48:00 -06:00
Kenneth Moreland
c446f1bc7a Add TextAnnotation to rendering library
Also made the TextAnnotation classes conform better to VTK-m coding
style. Specifically, changed the order of words in subclass names (e.g.
TextAnnotationBillboard instead of BillboardTextAnnotation) and broke
out each subclass into its own header/source files.
2016-09-07 16:47:58 -06:00
Kenneth Moreland
d4afc12add Add Actor and Scene to rendering library
Also took away some unnecessary templates.
2016-09-07 16:47:56 -06:00
Kenneth Moreland
668f93a66b Move Mappers to rendering library
Also changed the mappers to not be templated on the device adapter.
Instead, use TryExecute to determine the device adapter at runtime.
2016-09-07 16:47:52 -06:00
Kenneth Moreland
111850ef08 Use TryExecute within the rendeirng library
When things in the rendering library need to execute things in parallel
(outside of another rendering library like OpenGL) it should run it on
available parallel devices. This means using TryExecute to attempt on
whatever devices may be available. It also means that some of the
sources must be compiled with CUDA's nvcc. To enable this, made a code
wrapping mechanism to compile within a .cu file.
2016-09-07 16:47:50 -06:00
Kenneth Moreland
d8ca9f0125 Add ColorBarAnnotation and ColorTable to rendering library 2016-09-07 16:47:48 -06:00
Kenneth Moreland
1073fdede1 Move Canvas classes to rendering library 2016-09-07 16:47:46 -06:00
Kenneth Moreland
e20648b845 Add Camera code to rendering library 2016-09-07 16:47:44 -06:00
Kenneth Moreland
2c34c1ac9d Move BitmapFont code to library 2016-09-07 16:47:42 -06:00
Kenneth Moreland
07df53d7d1 Move AxisAnnotation classes to rendering library 2016-09-07 16:47:40 -06:00
Kenneth Moreland
0c8919dc6a Add VTKM_OVERRIDE macro
This is using the C++11 override keyword to make the compiler check to
ensure that we are correctly overriding virtual methods when we mean to.
Currently this will not compile without C++11. However, we are planning
on moving to C++11 very soon, and we can fix the macro if we don't.
2016-09-07 16:47:39 -06:00
Kenneth Moreland
ea8602d882 Create configuration for rendering library
I have noticed at least on my windows machine that source code that uses
the rendering package is taking a long time to compile. The rendering
library does not rely much on templates and more on virtual methods.
Thus, it is a good candidate for moving to a library so that it need be
compiled only once.

This sets up the configure scripts to create the library. There is also
a simple port of one class to the library. More will follow.
2016-09-07 16:47:35 -06:00
Robert Maynard
7d031f6187 Merge topic 'divide_by_zero_warnings'
912e2362 Adjust the range so we don't potential divide by zero.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !536
2016-09-07 14:07:13 -04:00
Kenneth Moreland
8cb2803b45 Merge branch 'precision-warnings' into 'master'
Fix precision warnings when FloatDefault is 64 bit

When VTKm_USE_DOUBLE_PRECISION is on (not the default), then
vtkm::FloatDefault is set to 64 bit values. There was some code that was
coded for 32 bit and never checked for 64 bit (on all compilers).

See merge request !526
2016-09-07 13:54:13 -04:00
Samuel Li
a196e9b42d timer tweak 2016-09-06 15:54:12 -07:00
Samuel Li
a07e6ab71e fix a bug, run final tests 2016-09-06 14:28:46 -07:00
Robert Maynard
96692134d2 Merge topic 'error_out_on_non_cxx11_compilers'
1881d375 Explicitly error out if vtk-m is used with a non c++11 compiler.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !532
2016-09-06 09:22:25 -04:00
Samuel Li
42a80662d8 finish 2D re-write. Some tests pass and some others fail. Need to keep debugging 2016-09-05 19:52:35 -06:00
Samuel Li
48588c3852 extend2D finally works well 2016-09-05 16:53:44 -06:00
Robert Maynard
912e236241 Adjust the range so we don't potential divide by zero. 2016-09-03 17:04:25 -04:00
Robert Maynard
310f1bc0a5 Correct missing std::time includes that vtkm::Math was hiding. 2016-09-02 14:44:30 -04:00
Robert Maynard
801473bc58 vtkm::Math now doesn't require boost 2016-09-02 13:32:26 -04:00
Robert Maynard
12a0afa773 Merge topic 'simplify_dispatcherdetail'
aff8c021 Remove DispatcherBaseDetailInvoke as it unnecessary with C++11.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !537
2016-09-02 08:21:25 -04:00
Samuel Li
02cede6937 need to change IDWTHelper API a little bit 2016-09-01 18:47:50 -06:00
Samuel Li
cb87d02ef3 officially abandoned ArrayHandleInterpreter 2016-09-01 16:58:20 -06:00
Robert Maynard
1a4d66b7e7 Merge topic 'remove_boost_shared_ptr'
c9834283 Remove vtkm usage of boost::shared and scoped pointers.
f81c42b9 Replace NULL with nullptr where applicable.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !535
2016-09-01 16:15:55 -04:00
Samuel Li
27d0f00ce9 tried a new idea on transform worklets, without success. Need to discuss with Chris. 2016-09-01 12:20:22 -07:00
Robert Maynard
aff8c0211f Remove DispatcherBaseDetailInvoke as it unnecessary with C++11. 2016-09-01 10:41:45 -04:00
Robert Maynard
1881d375f5 Explicitly error out if vtk-m is used with a non c++11 compiler. 2016-09-01 09:45:43 -04:00
Robert Maynard
c9834283ea Remove vtkm usage of boost::shared and scoped pointers.
Now we are using c++11 shared_ptr and unique_ptr
2016-09-01 09:38:25 -04:00
Robert Maynard
f81c42b9b4 Replace NULL with nullptr where applicable. 2016-09-01 09:38:25 -04:00
Robert Maynard
7acbdfa0ea Update StaticAssert.h to use the c++11 static_assert function 2016-09-01 09:35:43 -04:00
Samuel Li
ccbff3ff67 DWT2Dv2 passes all my tests! 2016-08-31 15:58:58 -07:00
Samuel Li
c4387bb71c need to debug a memory problem 2016-08-31 16:03:25 -06:00
Robert Maynard
12810165bb Switch over to c++11 type_traits. 2016-08-31 16:11:26 -04:00
Samuel Li
63ecc94613 a smarter transpose worklet 2016-08-31 11:19:07 -06:00
Samuel Li
d3aa6c0e49 smarter 2D extension now 2016-08-31 10:30:11 -06:00
Samuel Li
56b533b875 2D DWT left right working now 2016-08-31 08:01:48 -06:00
Samuel Li
7eabf1b44d new implementation on extend 2D seems to be working 2016-08-29 18:20:49 -06:00
Samuel Li
d79c879a5a seems 2D array handle has too many problems without touching the portal. I'll make a brand new 2D array handle. 2016-08-29 13:51:09 -06:00
Samuel Li
b2117ca87a RightRight Extension mode pass test. Now work on LeftRight extension mode 2016-08-29 11:08:22 -06:00
Mark Kim
387d2a6a76 Stop copying the data in the render call. Instead, upload it on the first
call and then never upload again.

RenderTest: overload the Render function to pass in a Mapper.
UnitTestMapperGLFW: global variable for the MapperGL to pass into RenderTest::Render

MapperGL: Creating the VBO/VAO is now wrapped in check to see if the data's
already been loaded.

Moved some variables to class scope.
2016-08-29 04:33:14 -06:00
Samuel Li
858895d3c8 Extend2D passes initial test, need to test more. 2016-08-26 14:51:23 -06:00
Samuel Li
b988591be5 2D extend on right side with just one worklet 2016-08-26 11:43:23 -06:00
Samuel Li
3cb1d24ede use one worklet to perform 4 different kinds of left extensions 2016-08-26 11:18:50 -06:00
Samuel Li
4bda2f3042 one left extend worklet works correct 2016-08-26 10:54:47 -06:00
Kenneth Moreland
893f3115f2 Fix precision warnings when FloatDefault is 64 bit
When VTKm_USE_DOUBLE_PRECISION is on (not the default), then
vtkm::FloatDefault is set to 64 bit values. There was some code that was
coded for 32 bit and never checked for 64 bit (on all compilers).
2016-08-26 09:33:37 -06:00
Kenneth Moreland
4fd9ba7e11 Make glfw auto-terminate during testing
The UnitTestMapperGLFW test was coded to run in an interactive mode,
which was problematic when simply running the test. If no one was there
to exit the interactive window, the test would time out. This change
adds a "batch" mode that is on when run by ctest. The batch mode runs
through all configurations and exits.
2016-08-26 08:28:35 -06:00
Samuel Li
871e040002 ArrayHandleConcatenate2DLeftRight.h works 2016-08-25 17:36:56 -06:00
Kenneth Moreland
b568dcee62 Merge branch 'incorrect-configure-in-rendering' into 'master'
Fix configuration of dependent rendering libraries

The VTKmConfigureComponents.cmake file has lots of careful configuration
of many of VTK-m components and dependent libraries (like OpenGL,
OSMesa, etc.) that takes care of several corner cases. The configuration
is consolidated here so that it can be consistent across the many
directories in VTK-m as well as other projects that use VTK-m.

Recent changes to the configuration in rendering circumvented these and
directly tried to configure dependent rendering libraries. This is wrong
(and more importantly broke my OSX build).

See merge request !519
2016-08-25 18:20:56 -04:00
Kenneth Moreland
7f8ea09f88 Fix configuration of dependent rendering libraries
The VTKmConfigureComponents.cmake file has lots of careful configuration
of many of VTK-m components and dependent libraries (like OpenGL,
OSMesa, etc.) that takes care of several corner cases. The configuration
is consolidated here so that it can be consistent across the many
directories in VTK-m as well as other projects that use VTK-m.

Recent changes to the configuration in rendering circumvented these and
directly tried to configure dependent rendering libraries. This is wrong
(and more importantly broke my OSX build).
2016-08-25 14:44:30 -06:00
Kenneth Moreland
8a961f5b12 Generalize BufferTypePicker
Previously there was a bug where BufferTypePicker was not implemented
correctly when LONG was 32 bits (even though 64 bit integers were
available).

This changes fixes the problem and also makes the implementation more
general by using the TypeTraits already available.
2016-08-25 14:42:12 -06:00
Kenneth Moreland
2da053ce67 Merge branch 'source-in-build-missing' into 'master'
Add RenderTest.h to configure scripts

The SourceInBuild was failing because of that.

See merge request !521
2016-08-25 16:40:19 -04:00
Samuel Li
e62952fc58 ArrayHandleConcatenate2DTopDown.h works 2016-08-25 14:27:29 -06:00
Kenneth Moreland
40db6c1cd1 Merge branch 'faster-compile' into 'master'
Faster compile

Some small change to make modest improvements to the
compile time.

See merge request !520
2016-08-25 16:03:58 -04:00
Kenneth Moreland
1b69a83423 Don't add tests from parent directories
The testing subdirectories were including the tests from the parent
directory. I believe this was a copy-paste error from the tests
originally all being in one file (where the unit_tests variable had all
tests appended) and then moved to subdirectories where they should not
be appended.
2016-08-25 13:20:40 -06:00
Kenneth Moreland
8ac6ce4501 Add back a condition to zip array test with vec as first
In the test for the ArrayHandleZip fancy array handle, re-add a
condition where the first array being zipped is of type Vec.
2016-08-25 13:11:04 -06:00
Kenneth Moreland
8fd0768b39 Add RenderTest.h to configure scripts
The SourceInBuild was failing because of that.
2016-08-25 10:34:40 -06:00
Dave Pugmire
be7a8d5019 Merge branch 'fresh_smelling_branch' into 'master'
Add GLFW unit test.

Simplify the test code with a class templated on mapper, canvas and view.

See merge request !518
2016-08-25 08:39:39 -04:00
Robert Maynard
0413ca10d8 Merge topic 'add_copy_subrange'
14ad996d Update vtk-m to use CopySubRange where applicable.
51e50d29 Add DeviceAdapter::CopySubRange to all device adapters.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !516
2016-08-25 08:22:40 -04:00
Kenneth Moreland
f8442903d8 Replace TryAllTypes with trying exemplar tests
There were many tests that created code paths for every base and Vec
type that VTK-m supports (up to 4 components). Although this is
admirable, it is also excessive, and our compile times for the tests are
very long.

To shorten compile times, remove the TryAllTypes method. Replace it with
a version of TryTypes that uses a default list of "exemplar" set of
integers, floats, and Vecs.
2016-08-24 16:02:18 -06:00
Samuel Li
87e80fc9c0 Merge branch 'master' into wavelet2 2016-08-24 15:53:52 -06:00
Kenneth Moreland
fc0d804ad0 Reduce conditions to check in TestingFancyArrayHandles
By far the source file that was taking the longest to compile was that
for the fancy array handles. This is because this test was being
pedantic about all the different types it was testing. This change
should drastically reduce the types actually compiled for and,
therefore, also drastically reduce the compile time for this test.
2016-08-24 15:43:33 -06:00
Samuel Li
56017a1007 1st version of ArrayHandle2D works 2016-08-24 15:36:39 -06:00
Dave Pugmire
6f30b786f5 Add GLFW unit test.
Simplify the test code with a class templated on mapper, canvas and view.
2016-08-24 16:22:48 -04:00
Robert Maynard
14ad996d93 Update vtk-m to use CopySubRange where applicable. 2016-08-24 15:42:51 -04:00
Robert Maynard
51e50d2933 Add DeviceAdapter::CopySubRange to all device adapters.
This allows callers to copy a subsection of an array into another array,
without clearing the contents of the destination array if a resize
is required.
2016-08-24 15:42:51 -04:00
Dave Pugmire
78f368486c Did a chmod on these files that had the execute bit set. 2016-08-24 13:08:23 -04:00
Kenneth Moreland
6c09bbb64a Merge branch 'msvc-include-directories' into 'master'
Fix config issues with headers and libraries

There were a couple of places where the configure scripts did not add
either includes to VTKm_INCLUDE_DIRS or libraries to VTKm_LIBRARIES.

The biggest offender was when the examples used find_package to load the
VTK-m configuration it needed. find_package cleared out the includes and
libraries, but it did not clear out the VTKm_<COMPONENT>_FOUND
variables. Normally, these variables would not be set before
find_package is called, but in this case the examples were called after
some partial configuration. I got around this issue by clearing out all
the *_FOUND variables in VTKmConfig.cmake.

See merge request !515
2016-08-24 10:47:07 -04:00
Samuel Li
f9dc98d0e6 add timers to report worklet computation time 2016-08-23 17:52:40 -06:00
Robert Maynard
2d31774b3b Add a Clip filter that can do iso value clipping. 2016-08-23 16:12:22 -04:00
Kenneth Moreland
866c617cbf Fix config issues with headers and libraries
There were a couple of places where the configure scripts did not add
either includes to VTKm_INCLUDE_DIRS or libraries to VTKm_LIBRARIES.

The biggest offender was when the examples used find_package to load the
VTK-m configuration it needed. find_package cleared out the includes and
libraries, but it did not clear out the VTKm_<COMPONENT>_FOUND
variables. Normally, these variables would not be set before
find_package is called, but in this case the examples were called after
some partial configuration. I got around this issue by clearing out all
the *_FOUND variables in VTKmConfig.cmake.
2016-08-23 14:07:38 -06:00
Samuel Li
c5613b2cbb optimized a few worklets 2016-08-23 08:56:03 -07:00
Samuel Li
ec185e3ade WaveletFilter now stores array handles, so less data transfer between host and device 2016-08-22 14:28:29 -07:00
Samuel Li
daa80669f2 get rid of many small memory transfers 2016-08-22 13:49:13 -07:00
Samuel Li
553e396c6e 2D decompose/reconstruct seem to work well 2016-08-22 10:13:45 -06:00
Robert Maynard
ce3c7f64b5 Merge topic 'clip_restructure'
af05ea0e Cleanup clipping so we can use it from a filter.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !508
2016-08-22 09:56:21 -04:00
Samuel Li
165199c890 keep fighting on compiler errors 2016-08-21 23:10:05 -06:00
Christopher Sewell
e3858cb047 Eliminating more warnings in streaming sine unit test 2016-08-19 14:48:51 -06:00
Mark Kim
e920659ab8 Don't need to set uni_tests. 2016-08-19 14:27:40 -06:00
Christopher Sewell
2855512962 Adding ArrayHandleStreaming to CMake and fixing warnings 2016-08-19 13:47:44 -06:00
Samuel Li
372cd6729b merge updates from the 1D wavelets branch 2016-08-18 22:42:29 -06:00
Christopher Sewell
330bdb9ff3 Attempting to eliminate warnings 2016-08-18 18:39:21 -06:00
Christopher Sewell
9f01b59b97 Adding global thread index offset to ThreadIndicesTopologyMap, eliminating warnings 2016-08-18 17:22:17 -06:00
Mark Kim
e3834d1c73 Merge https://gitlab.kitware.com/vtk/vtk-m 2016-08-18 14:33:37 -06:00
Mark Kim
5fbc55fa52 Check to see if osmesa or egl were found before adding testing. 2016-08-18 14:04:37 -06:00
Robert Maynard
9712de8b24 Merge topic 'wavelets'
d677d0d1 small tweaks
816364d2 in an effort to get rid of a warning
778da350 In attempt to fix errors and warnings
bb450c51 fix a warning
49e56b61 two new wavelet filters, HAAR and CDF8/4 supported now
767356bc working on even length filters; need ASYM* support in Extend1D()
a6efad04 half done even length filters implementation
ee32ea4c took off timing code
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !482
2016-08-18 15:47:33 -04:00
Kenneth Moreland
069fc69869 Merge branch 'try-run-on-device' into 'master'
Add general purpose TryExecute

The filters directory had a couple of classes designed to try executing
filters on a list of devices until one succeeds. There was quite a bit
of code duplication in these, and the code was inaccessible to other
parts of VTK-m. This resolves both of these issues by moving the
functionality to a TryExecute method located in the vtkm::cont
package.

See merge request !507
2016-08-18 15:05:03 -04:00
Robert Maynard
af05ea0e8d Cleanup clipping so we can use it from a filter. 2016-08-18 12:50:20 -04:00
Samuel Li
d677d0d175 small tweaks 2016-08-18 10:28:41 -06:00
Samuel Li
816364d204 in an effort to get rid of a warning 2016-08-18 09:10:38 -06:00
Robert Maynard
b934c1c71b Remove improper defaults for worklets device adapter.
Without requiring c++11 we can't properly provided default device adapters
to templated functions.
2016-08-18 10:15:05 -04:00
Christopher Sewell
7892ebf67c Making work index return global value when streaming 2016-08-17 21:33:04 -06:00
Kenneth Moreland
ece53f514a Fix inappropriate placement of typename keyword
How did any compiler accept that?

Also fix minor warning with topology algorithm benchmark.
2016-08-17 15:51:43 -06:00
Kenneth Moreland
e488967c8f Use general TryExecute for filter execution
The TryExecute function was based off of the ResolveFieldTypeAnd*
classes made for filters. To reduce the amount of code duplication,
modify these two filter classes to use the more general TryExecute
functionality.
2016-08-17 14:13:51 -06:00
Christopher Sewell
11a29a98ce Adding proper headings in ArrayHandleStreaming.h 2016-08-17 12:23:53 -06:00
Samuel Li
778da350d5 In attempt to fix errors and warnings 2016-08-17 09:37:56 -07:00
Samuel Li
bb450c5156 fix a warning 2016-08-17 09:14:29 -07:00
Christopher Sewell
81da5f0407 Fixing macro name in DispatcherStreamingMapField 2016-08-17 09:53:35 -06:00