Commit Graph

181 Commits

Author SHA1 Message Date
Kenneth Moreland
8657a9b3c8 Update VTKDataSetWriter to compile into vtkm_io 2020-05-19 14:32:48 -06:00
Kenneth Moreland
086439e71e Update variants of VTKDataSetReaders to compile into vtkm_io 2020-05-19 13:04:12 -06:00
Kenneth Moreland
0612be9c5b Move VTKDataSetReaderBase code to vtkm_io
Most of this code is not templated methods. Rather, it implements over
several types to call templated functions, which creates quite a bit of
code. Rather than have all code using a reader recompile the code, just
compile it once and put it in a library.
2020-05-19 12:27:01 -06:00
Nick Thompson
5d20506a5d Remove overly verbose log pring. 2020-05-18 22:25:29 -04:00
Nick
a55596b38c Reorder member functions. 2020-05-14 16:10:33 -04:00
Nick
6fba7347a9 Mark pixel destructors as virtual to fix build error. 2020-05-14 14:29:34 -04:00
nadavi
24d022b02b Implement and test ImageReader and ImageWriter capabilities in the io library 2020-05-13 16:10:21 -06:00
NAThompson
2fc636c276 Test BOV reader. Fix slow WritePortal().Set(idx, val) loop. 2020-05-11 17:08:44 -04:00
NAThompson
46faf574fa ReadPortal().Get(idx) is slow in a loop. 2020-05-08 11:30:59 -04:00
NAThompson
697369fc14 Remove deprecation warnings throughout the project. 2020-04-30 08:12:04 -04:00
NAThompson
d610176aba First commit demos backwards compatibility and printing of warnings. 2020-04-30 07:37:55 -04:00
NAThompson
b82051746c Test that no warnings are generated and tests pass. 2020-04-29 11:30:18 -04:00
NAThompson
20c6e69338 Deprecate writer/ directory. 2020-04-29 11:11:02 -04:00
Nick
54e15e8f14 Export symbol as VTK_IO_EXPORT. 2020-04-28 09:12:11 -04:00
Nick
1a16299b8c Fix build error. 2020-04-28 07:47:31 -04:00
Nick
981f0ed0d9 First stab at building a vtkm_io library target. 2020-04-28 07:13:27 -04:00
Nick
cad7b593d2 Fix warning. 2020-03-26 12:12:54 -04:00
Nick
7da30d2540 Write data in fixed point, not scientific notation. Increase performance by removing buffer flushes. 2020-03-20 07:05:08 -04:00
Nick
98dbf7c1a9 Replace spaces by underscores in SCALAR name field. 2020-03-17 10:00:46 -04:00
Nick
b3d170f2d9 Compound datatypes for writer. 2020-03-16 11:41:52 -04:00
Kenneth Moreland
ec34cb56c4 Use new ways to get array portal in control environment
Also fix deadlocks that occur when portals are not destroyed
in time.
2020-02-26 13:10:46 -07:00
Kenneth Moreland
cd302effb3 Update lists in TypeListTag.h
A new header named TypeList.h and the type lists have been redefined in
this new file. All the types have been renamed from `TypeListTag*` to
`TypeList*`. TypeListTag.h has been gutted to provide deprecated
versions of the old type list names.

There were also some other type lists that were changed from using the
old `ListTagBase` to the new `List`.
2019-12-05 11:05:19 -07:00
Allison Vacanti
3886b7dfb8 Refactor CellSetExplicit to remove NumIndices.
See #408 for details.
2019-09-30 12:27:13 -04:00
Kenneth Moreland
82a58c2f0a Fix error with whitespace at end of file
The VTK file reader caused an error to be thrown when reading a file
that had a METADATA section at the end of the file. The problem was that
the METADATA section had some whitespace after its last line (which is
probably typical). This caused an eof check to pass and then a
subsequent search for a token to fail.

The solution was to eat the whitespace after the METADATA section to get
the reader at the next token or in eof condition if it is at the end of
the file.
2019-09-25 16:20:20 -06:00
Robert Maynard
3b89bc0db2 CellSet classes don't require a name 2019-09-02 10:39:58 -04:00
Robert Maynard
89fa2c0293 Remove multiple vtkm::cont::CellSet from vtkm::cont::DataSet
By removing the ability to have multiple CellSets in a DataSet
we can simplify the following things:

  - Cell Fields now don't require a CellSet name when being constructed
  - Filters don't need to manage what the active cellset is
2019-09-02 09:04:51 -04:00
Kenneth Moreland
b0b000263e Write out all test data sets in VTKDataSetWriter
Although convenient, one of the issues of creating data with
MakeTestDataSet is that it is hard to look at the data created. It is
often helpful to be able to bring in the data into something like
ParaView or VisIt to play with it. To enable that, write them all out as
part of UnitTestVTKDataSetWriter.
2019-08-29 16:48:53 -06:00
Kenneth Moreland
a9bbb6ead9 Permute cells inline
The poly data and unstructured grid readers have to permute the cell
data to componsate for differences between VTK and VTK-m cell shapes.
Previously, this permutation was implemented by casting the read data to
a type and then changing the data. However, some code paths caused the
cast to fail. Get around that by doing the permutation in line when the
data are read.
2019-08-26 13:35:20 -06:00
Kenneth Moreland
d37ab77326 Add ability to read FIELD section in vtk legacy files
Previously, the VTK file readers just skipped over everything in FIELD
sections. However, it is common for many point and cell fields to be
written in this section (it is how ParaView writes out most of its
data). This change will allow these fields to be read in correctly.
2019-08-26 12:36:55 -06:00
Kenneth Moreland
19a610f5e9 Fix skipping over information in vtk files
Previously, if a legacy VTK file had a METADATA section with an
INFORMATION subsection, the reader did not skip over it correctly.
Instead, it just read the rest of the file (and often encountered an
error). Change this to read and skip over the INFORMATION subsection
correctly.
2019-08-26 12:36:54 -06:00
Kenneth Moreland
0be50c119d Update VTK-m code to use new Vec aliases
Should make the code easier to read.
2019-07-31 12:55:40 -06:00
Hank Childs
2fc7cb02a3 remove unused variable 2019-07-16 10:58:40 -07:00
Hank Childs
5064854a0d Add error message with bad file open 2019-07-12 18:19:48 -07:00
Kenneth Moreland
fbbc185901 Use logging to output status of VTKDataSetReaderBase
The original implementation predates the logging and so just outputted
error and warning messages to stderr. Changed these to the more
appropriate logging mechanism.
2019-06-12 09:40:54 -06:00
Sujin Philip
b74ab327dc Improve VTK DataSet Reader
1. Support reading Tensors (Vec<T, 9>)
2. Support reading files having `METADATA`.
2019-05-13 15:26:15 -04:00
Robert Maynard
ff687016ee For VTK-m libs all includes of DeviceAdapterTagCuda happen from cuda files
It is very easy to cause ODR violations with DeviceAdapterTagCuda.
If you include that header from a C++ file and a CUDA file inside
the same program we an ODR violation. The reasons is that the C++
versions will say the tag is invalid, and the CUDA will say the
tag is valid.

The solution to this is that any compilation unit that includes
DeviceAdapterTagCuda from a version of VTK-m that has CUDA enabled
must be invoked by the cuda compiler.
2019-04-22 10:39:54 -04:00
nadavi
fbcea82e78 conslidate the license statement 2019-04-17 10:57:13 -06:00
Robert Maynard
b9e0e541b8 VTK-m once again uses consistent include style 2019-03-28 14:12:08 -04:00
Sujin Philip
d4e1c18254 Update existing code to use the new functions 2019-03-15 13:28:55 -04:00
Robert Maynard
d6f66d17a3 Testing run methods now take argc/argv to init logging/runtime device
`vtkm::cont::testing` now initializes with logging enabled and support
for device being passed on the command line, `vtkm::testing` only
enables logging.
2019-01-17 13:16:27 -06:00
Kenneth Moreland
d59ce11c00 Allow VariantArrayHandle CastAndCall to cast to concrete types
When you call VariantArrayHandle::CastAndCall, it now tries both basic
storage and virtual storage. You can modify the types of storages tried
by giving a type list of storage tags as the first argument.
2019-01-16 22:31:55 -06:00
Robert Maynard
0a40c620ac Rename ArrayHandleVariant to VariantArrayHandle. 2018-12-27 14:35:56 -05:00
Robert Maynard
39929d5a7c Update vtkm/io to work with vtkm::cont::ArrayHandleVariant 2018-12-27 14:35:56 -05:00
Allison Vacanti
16deb120da Add std::string constructor to VTKDataSetReader. 2018-08-23 11:50:55 -04:00
Robert Maynard
8e38e383b7 VTKDataSetWriter now uses const ref wherever possible to reduce copies. 2018-06-01 10:32:43 -04:00
Shreeraj Jadhav
16b06c8577 Fix VTKDataSetWriter::WriteDataset() overload const correctness
Compilation error (C2666) is caused by ambiguous call to overloaded function
vtkm::io::writer::VTKDataSetWriter::WriteDataSet().
One of the overloaded functions was not constant (though it is supposed to be).
This fixes compilation error in example "ParticleAdvection" when building
in Windows 7 Visual Studio 2015.
2018-05-29 14:36:07 -04:00
Haocheng LIU
5c797169ec Use the strong typed enums for vtkm::cont::Field
Since Field association is used either when creating or working
with 'vtkm::cont::Field', it's put in the class itself.
2018-05-22 11:44:51 -04:00
Sujin Philip
0c1634bbc3 Fix a few more warnings
These warnings were detected on my local machine.
2018-05-09 17:49:45 -04:00
Robert Maynard
8808b41fbd Merge branch 'master' into vtk-m-cmake_refactor 2018-03-29 22:51:26 -04:00
Robert Maynard
7c54125b66 Switch over from static const to static constexpr where possible. 2018-03-10 11:39:58 -05:00
Robert Maynard
ee69c7a4b7 Remove VS2013 workarounds from VTK-m. 2018-02-23 15:39:39 -05:00
Robert Maynard
e630ac5aa4 Merge branch 'master' into vtk-m-cmake_refactor 2018-02-23 14:52:00 -05:00
luz.paz
80b11afa24 Misc. typos
Found via `codespell -q 3` via downstream VTK
2018-01-30 06:51:47 -05:00
Robert Maynard
4f239ed3b9 Correct casting warnings found with new cmake code 2018-01-16 15:42:36 -05:00
Sujin Philip
70fcd1d1cc Update CoordinateSystem to use the Virtual Array 2018-01-10 10:19:19 -05:00
Dave Pugmire
1d8165344f Local var for the array portal instead of inside the for loop. 2017-12-19 11:48:38 -05:00
Robert Maynard
fe8b75f7bf Consistenly use nullptr in vtk-m. 2017-09-25 09:57:23 -04:00
Robert Maynard
311618a15f Enable highest level of warnings(W4) under MSVC
This will make VTK-m warning level match the one used by VTK. This commit
also resolves the first round of warnings that W4 exposes.
2017-09-22 13:04:28 -04:00
Robert Maynard
abf038b181 vtkm/io now prefers 'using' over typedef. 2017-09-21 13:54:36 -04:00
Kenneth Moreland
c3a3184d51 Update copyright for Sandia
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
accordingly.
2017-09-20 15:33:44 -06:00
Dave Pugmire
1c0f721b96 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into streamline_returntype 2017-08-28 15:27:04 -04:00
Dave Pugmire
3759887aed Merge branch 'master' of gitlab.kitware.com:dpugmire/vtk-m 2017-07-28 10:07:37 -04:00
Dave Pugmire
6a480bad65 Fix compiler warnings. Add ArrayHandle method for getting cell id 2017-07-27 10:10:43 -04:00
ayenpure
f209d670be Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into PICS 2017-07-07 15:01:24 -04:00
ayenpure
0495b2f224 Updated BOV reader and removed unnecessary files.
Removed the PICS.h file which was the initial file for the particle advection
filter. Updated the BOV reader for compile warning fixes and formatting issues.
2017-07-07 14:05:56 -04:00
ayenpure
b2765881df removing most of the compile warnings, and adding CUDA and TBB tests for rectilinear grids 2017-07-07 13:46:45 -04:00
ayenpure
fc8d2a27b2 improved regular grid evaluator and added rectilinear grid evaluator 2017-07-07 13:46:45 -04:00
Dave Pugmire
e1ca111b9c remove warning for now... 2017-07-07 13:45:52 -04:00
Dave Pugmire
b38ace16f9 temp fix for path issues in BOV 2017-07-07 13:45:52 -04:00
Dave Pugmire
9fb82e9832 Fix for BOV files and relative paths. 2017-07-07 13:45:52 -04:00
Dave Pugmire
d956f000e4 Enhanced PICS filter and added BOV reader.
Add a particle advection test program for doing studies using BOV files.
Added state recording particles
Cleanup in the filter.
2017-07-07 13:43:58 -04:00
Dave Pugmire
d04a1043ab Add a BOV file reader. 2017-07-07 13:43:58 -04:00
Robert Maynard
5dd346007b Respect VTK-m convention of parameters all or nothing on a line
clang-format BinPack settings have been disabled to make sure that the
VTK-m style guideline is obeyed.
2017-05-26 13:53:28 -04:00
Kitware Robot
4ade5f5770 clang-format: apply to the entire tree 2017-05-25 07:51:37 -04:00
Sujin Philip
3a7a62673c Fix VTKRectilinearGridReader
Fix for cases when the coordinate types in the file do not match
vtkm::FloatDefault. This resulted in bad dynamic cast exceptions.
2017-05-24 11:47:46 -04:00
Kitware Robot
efbde1d54b clang-format: sort include directives 2017-05-18 12:59:33 -04:00
David C. Lonie
4807b3c472 Silence warnings about unavoidable weak vtables.
- Exception classes cannot be exported due to MSVC's design decisions.
  See http://stackoverflow.com/questions/24511376. We must leave these
  classes as header only and silence the warnings.
- TransferResource in BufferState.h must remain a header-only class since
  there is no vtkm_interop library to compile the class into.
- The VTKDataSetReader hierarchy must similarly remain header-only since
  there is no vtkm_io library.
- The OptionParser Action classes are part of a header-only utility and
  cannot be easily compiled into a library.
-
2017-04-13 14:06:33 -04:00
Dave Pugmire
ca93142512 Merge branch 'master' of gitlab.kitware.com:dpugmire/vtk-m 2017-03-28 09:30:13 -04:00
Dave Pugmire
69f9125663 Experiment with speeding up the GetHexahedronClassification. 2017-03-28 09:28:03 -04:00
Sujin Philip
07cb111904 Fix more issues with the readers
1) Fix parsing issues related to visit style field data
2) Create appropriate dimension cellset for structured cell sets
2017-03-13 13:46:26 -04:00
Sujin Philip
6d6b599115 Support reading VTK files with empty title 2017-03-09 15:48:25 -05:00
Sujin Philip
a88807fd7e Catch all exceptions by reference 2017-02-23 13:25:01 -05:00
David C. Lonie
f601e38ba8 Simplify exception hierarchy.
Remove the ErrorControl class such that all subclasses now inherit from
error. Renamed all exception classes via s/ErrorControl/Error/.

See issue #57.
2017-02-07 15:42:38 -05:00
Robert Maynard
bd1ff7a5ac Allow vtkm errors to properly work with shared libraries. 2017-01-16 09:17:38 -05: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
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
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
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
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
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
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
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
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