vtk-m/vtkm/cont
Kenneth Moreland 03c3f9e178 Update MapField helper functions to use extracted array components
Previously, the `MapFieldMergeAverage` and `MapFieldPermutation` helper
function had to iterate over every possible type and create a separate
code path. This change uses the new extract component functionality to
create separate code paths only for different component types. This both
requires less code (the common filter library dropped from 66MB to 42MB
on my Mac) and covers more cases (such as `Vec`s larger than 4
components).

To make the implementation easier, `UnknownArrayHandle` now can create a
new `UnknownArrayHandle` of the same `ValueType` but with the basic
storage (so you can work with read-only storage) and the ability to
allocate the unknown array.
2020-12-16 17:23:35 -07:00
..
arg Fix unnecessary deprecation warnings in visual studio 2020-09-09 06:13:08 -06:00
cuda Remove ArrayManagerExecution 2020-12-08 13:18:44 -07:00
internal Add ability to extract components in UnknownArrayHandle 2020-12-16 17:23:27 -07:00
kokkos VTK-m now uses CMake's future HIP lang for Kokkos+HIP 2020-12-11 09:13:12 -05:00
openmp Remove ArrayManagerExecution 2020-12-08 13:18:44 -07:00
serial Remove ArrayManagerExecution 2020-12-08 13:18:44 -07:00
tbb Remove ArrayManagerExecution 2020-12-08 13:18:44 -07:00
testing Add ability to extract components in UnknownArrayHandle 2020-12-16 17:23:27 -07:00
Algorithm.h Remove ArrayManagerExecution 2020-12-08 13:18:44 -07:00
ArrayCopy.h Swap call pattern of ArrayHandle::DeepCopy 2020-09-01 10:08:06 -06:00
ArrayExtractComponent.h Disable resizing of ArrayHandleStride 2020-12-16 17:22:44 -07:00
ArrayGetValues.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
ArrayHandle.cxx Store the number of bits of a BitField in the Buffer's metadata 2020-08-24 17:09:30 -06:00
ArrayHandle.h Fix issue with CreateBuffers function 2020-12-02 12:14:06 -07:00
ArrayHandle.hxx Bridge old-style ArrayHandle to new-style 2020-12-01 16:24:49 -07:00
ArrayHandleBasic.cxx Convert ArrayHandleSOA to use Buffer 2020-08-24 16:03:17 -06:00
ArrayHandleBasic.h Add ArrayHandleStride 2020-12-16 17:22:44 -07:00
ArrayHandleBitField.h Add constexpr to GetNumberOfBuffers 2020-11-17 12:25:11 -07:00
ArrayHandleCartesianProduct.h Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandleCast.h Fix compile error when template parameter shadows superclass 2020-12-03 09:49:21 -07:00
ArrayHandleCompositeVector.h Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandleConcatenate.h Bridge old-style ArrayHandle to new-style 2020-12-01 16:24:49 -07:00
ArrayHandleConstant.h Update ArrayHandleImplicit to new array style with Buffer 2020-10-21 08:36:29 -06:00
ArrayHandleCounting.h Update ArrayHandleImplicit to new array style with Buffer 2020-10-21 08:36:29 -06:00
ArrayHandleDecorator.h Convert ArrayHandleDecorator to new buffer-style arrays 2020-11-19 12:29:16 -07:00
ArrayHandleDiscard.h Add constexpr to GetNumberOfBuffers 2020-11-17 12:25:11 -07:00
ArrayHandleExtractComponent.h Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandleExtrudeCoords.h Use data method to get pointer from std::vector 2020-07-23 11:02:40 -06:00
ArrayHandleExtrudeField.h Don't generate doxygen for serialization helpers 2019-09-12 17:29:05 -04:00
ArrayHandleGroupVec.h Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandleGroupVecVariable.h Bridge old-style ArrayHandle to new-style 2020-12-01 16:24:49 -07:00
ArrayHandleImplicit.h Add standard support for read-only storage 2020-12-10 13:39:28 -07:00
ArrayHandleIndex.h Update ArrayHandleImplicit to new array style with Buffer 2020-10-21 08:36:29 -06:00
ArrayHandleMultiplexer.h Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandlePermutation.h Bridge old-style ArrayHandle to new-style 2020-12-01 16:24:49 -07:00
ArrayHandleRandomStandardNormal.h use make_ArrayHandleZip 2020-06-25 09:51:06 -06:00
ArrayHandleRandomUniformBits.h remove inline initialization of seed 2020-06-17 12:47:54 -06:00
ArrayHandleRandomUniformReal.h the random source is still 64 bits 2020-06-17 12:58:03 -06:00
ArrayHandleReverse.h Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandleSOA.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
ArrayHandleSOA.h Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandleStride.cxx Add ArrayHandleStride 2020-12-16 17:22:44 -07:00
ArrayHandleStride.h Disable resizing of ArrayHandleStride 2020-12-16 17:22:44 -07:00
ArrayHandleSwizzle.h Simplify ArrayHandleSwizzle 2020-11-25 09:28:49 -07:00
ArrayHandleTransform.h Add standard support for read-only storage 2020-12-10 13:39:28 -07:00
ArrayHandleUniformPointCoordinates.cxx Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandleUniformPointCoordinates.h Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandleView.h Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ArrayHandleVirtual.cxx Fix deprecated warnings 2020-09-09 06:13:07 -06:00
ArrayHandleVirtual.h Optionally remove all use of ArrayHandleVirtual 2020-09-04 22:52:45 -06:00
ArrayHandleVirtual.hxx Deprecate ArrayHandleVirtual 2020-09-04 22:52:45 -06:00
ArrayHandleVirtualCoordinates.h Fix deprecated warnings 2020-09-09 06:13:07 -06:00
ArrayHandleZip.h Convert ArrayHandleZip to new buffer-style array 2020-12-07 08:52:38 -07:00
ArrayPortal.h Fixup custom portal iterator logic. 2019-12-17 15:39:51 -05:00
ArrayPortalToIterators.h Add porting layer for future std features 2020-03-16 17:12:16 -06:00
ArrayRangeCompute.cxx Make sure all C scalar types are in TypeListScalarAll 2020-11-12 16:18:56 -07:00
ArrayRangeCompute.h Convert ArrayHandleCartesianProduct to new buffer-style array 2020-11-17 12:17:28 -07:00
ArrayRangeCompute.hxx Reintroduce ArrayRangeCompute.hxx as deprecated 2020-11-10 09:58:50 -07:00
ArrayRangeComputeTemplate.h Reintroduce ArrayRangeCompute.hxx as deprecated 2020-11-10 09:58:50 -07:00
AssignerPartitionedDataSet.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
AssignerPartitionedDataSet.h AssignerPartitionedDataSet: mark dtor as override 2020-09-10 10:03:18 -04:00
AtomicArray.h silenced doxygen unsupported c++ syntax 2020-03-23 19:55:46 -04:00
BitField.cxx Simplify creating metadata in Buffer objects 2020-11-10 16:22:05 -07:00
BitField.h Simplify creating metadata in Buffer objects 2020-11-10 16:22:05 -07:00
BoundsCompute.cxx MultiBlock renamed to PartitionedDataSet 2019-09-03 12:42:23 -04:00
BoundsCompute.h MultiBlock renamed to PartitionedDataSet 2019-09-03 12:42:23 -04:00
BoundsGlobalCompute.cxx Use new ways to get array portal in control environment 2020-02-26 13:10:46 -07:00
BoundsGlobalCompute.h MultiBlock renamed to PartitionedDataSet 2019-09-03 12:42:23 -04:00
CastAndCall.h Add UnknownArrayHandle 2020-08-31 09:46:56 -06:00
CellLocator.cxx conslidate the license statement 2019-04-17 10:57:13 -06:00
CellLocator.h Convert execution preparation to use tokens 2020-02-25 09:39:19 -07:00
CellLocatorBoundingIntervalHierarchy.cxx Add scope logs for building locators 2020-10-13 12:41:25 -06:00
CellLocatorBoundingIntervalHierarchy.h Convert execution preparation to use tokens 2020-02-25 09:39:19 -07:00
CellLocatorGeneral.cxx Rename CellLocatorUniformBins to CellLocatorTwoLevel 2020-09-21 15:42:47 -06:00
CellLocatorGeneral.h Convert execution preparation to use tokens 2020-02-25 09:39:19 -07:00
CellLocatorRectilinearGrid.cxx Convert execution preparation to use tokens 2020-02-25 09:39:19 -07:00
CellLocatorRectilinearGrid.h Convert execution preparation to use tokens 2020-02-25 09:39:19 -07:00
CellLocatorTwoLevel.cxx Add scope logs for building locators 2020-10-13 12:41:25 -06:00
CellLocatorTwoLevel.h Rename CellLocatorUniformBins to CellLocatorTwoLevel 2020-09-21 15:42:47 -06:00
CellLocatorUniformBins.h Rename CellLocatorUniformBins to CellLocatorTwoLevel 2020-09-21 15:42:47 -06:00
CellLocatorUniformGrid.cxx CoordinateSystem data is VariantArrayHandle 2020-07-14 08:50:39 -06:00
CellLocatorUniformGrid.h Convert execution preparation to use tokens 2020-02-25 09:39:19 -07:00
CellSet.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
CellSet.h Enable changing policy used for library compiles 2020-03-19 15:07:07 -06:00
CellSetExplicit.cxx Refactor CellSetExplicit to remove NumIndices. 2019-09-30 12:27:13 -04:00
CellSetExplicit.h Log the conversion of num components to offsets 2020-10-12 14:02:31 -06:00
CellSetExplicit.hxx Fix deprecation warning 2020-05-18 18:41:47 -06:00
CellSetExtrude.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
CellSetExtrude.h Improvements to moving data into ArrayHandle 2020-07-23 10:53:38 -06:00
CellSetExtrude.hxx Support using Token calling PrepareForExecution in ExecutionObject 2020-02-25 07:41:39 -07:00
CellSetList.h Enable changing policy used for library compiles 2020-03-19 15:07:07 -06:00
CellSetListTag.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
CellSetPermutation.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
CellSetSingleType.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
CellSetStructured.cxx conslidate the license statement 2019-04-17 10:57:13 -06:00
CellSetStructured.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
CellSetStructured.hxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
CMakeLists.txt Add ArrayExtractComponent function 2020-12-16 17:22:44 -07:00
ColorTable.cxx Move ColorTable mapping to its own header 2020-09-14 16:40:26 -06:00
ColorTable.h Move ColorTable mapping to its own header 2020-09-14 16:40:26 -06:00
ColorTableMap.h Move ColorTable mapping to its own header 2020-09-14 16:40:26 -06:00
ColorTablePresets.cxx Remove virtual methods from ColorTable 2020-09-14 13:26:16 -06:00
ColorTableSamples.h Update VTK-m code to use new Vec aliases 2019-07-31 12:55:40 -06:00
CoordinateSystem.cxx Optionally remove all use of ArrayHandleVirtual 2020-09-04 22:52:45 -06:00
CoordinateSystem.h Deprecate templated versions of Field::GetRange 2020-11-09 12:28:29 -07:00
DataSet.cxx replaces Dataset fields vector to a map 2020-05-01 14:05:03 -04:00
DataSet.h Nuke the ostream overload. 2020-06-12 16:07:16 -04:00
DataSetBuilderExplicit.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
DataSetBuilderExplicit.h Do not cast to ArrayHandleVirtual in VariantArrayHandle::CastAndCall 2020-07-14 08:53:03 -06:00
DataSetBuilderRectilinear.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
DataSetBuilderRectilinear.h Improvements to moving data into ArrayHandle 2020-07-23 10:53:38 -06:00
DataSetBuilderUniform.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
DataSetBuilderUniform.h DataSetBuilders don't require a cellset name 2019-09-02 09:05:56 -04:00
DataSetFieldAdd.h Deprecate DataSetFieldAdd. 2020-05-27 15:27:47 -04:00
DefaultTypes.h.in Enable changing policy used for library compiles 2020-03-19 15:07:07 -06:00
DeviceAdapter.h Remove ArrayManagerExecution 2020-12-08 13:18:44 -07:00
DeviceAdapterAlgorithm.h Remove ArrayManagerExecution 2020-12-08 13:18:44 -07:00
DeviceAdapterList.h Add Kokkos backend 2020-08-12 13:55:24 -04:00
DeviceAdapterListTag.h silenced doxygen unsupported c++ syntax 2020-03-23 19:55:46 -04:00
DeviceAdapterTag.cxx For VTK-m libs all includes of DeviceAdapterTagCuda happen from cuda files 2019-04-22 10:39:54 -04:00
DeviceAdapterTag.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
DynamicCellSet.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
EnvironmentTracker.cxx Build diy as a library 2020-06-08 15:57:51 -05:00
EnvironmentTracker.h conslidate the license statement 2019-04-17 10:57:13 -06:00
Error.h store What as a member var 2019-09-11 16:12:18 -06:00
ErrorBadAllocation.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ErrorBadDevice.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
ErrorBadDevice.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ErrorBadType.cxx conslidate the license statement 2019-04-17 10:57:13 -06:00
ErrorBadType.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ErrorBadValue.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ErrorExecution.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ErrorFilterExecution.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ErrorInternal.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ExecutionAndControlObjectBase.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
ExecutionObjectBase.h Enable ExecutionObjectBase::PrepareForExecution for DeviceAdapterId 2020-12-02 12:14:06 -07:00
Field.cxx Deprecate templated versions of Field::GetRange 2020-11-09 12:28:29 -07:00
Field.h Deprecate templated versions of Field::GetRange 2020-11-09 12:28:29 -07:00
FieldRangeCompute.cxx Deprecate templated versions of Field::GetRange 2020-11-09 12:28:29 -07:00
FieldRangeCompute.h Deprecate templated versions of Field::GetRange 2020-11-09 12:28:29 -07:00
FieldRangeGlobalCompute.cxx Deprecate templated versions of Field::GetRange 2020-11-09 12:28:29 -07:00
FieldRangeGlobalCompute.h Deprecate templated versions of Field::GetRange 2020-11-09 12:28:29 -07:00
ImplicitFunctionHandle.h Convert execution preparation to use tokens 2020-02-25 09:39:19 -07:00
Initialize.cxx Less verbose logging. 2020-11-20 15:12:23 -05:00
Initialize.h Moving new test code to the Testing.h header. 2020-01-08 14:32:15 -05:00
Invoker.h Reverse Invoker, Dispatcher and Worklet dependency 2020-07-21 17:25:43 -06:00
Logging.cxx Less verbose logging. 2020-11-20 15:12:23 -05:00
Logging.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
ParticleArrayCopy.cxx fix cuda compile, export function. 2020-06-19 10:57:30 -04:00
ParticleArrayCopy.h distributed memory support for streamline and particleadvect filters. 2020-08-13 09:53:57 -04:00
ParticleArrayCopy.hxx Rename the Particle classes. 2020-08-26 08:59:51 -04:00
PartitionedDataSet.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
PartitionedDataSet.h MultiBlock renamed to PartitionedDataSet 2019-09-03 12:42:23 -04:00
PointLocator.cxx Some classes should be exported 2019-04-25 09:50:49 -04:00
PointLocator.h Convert execution preparation to use tokens 2020-02-25 09:39:19 -07:00
PointLocatorSparseGrid.cxx Add scope logs for building locators 2020-10-13 12:41:25 -06:00
PointLocatorSparseGrid.h Rename PointLocatorUniformGrid to PointLocatorSparseGrid 2020-09-21 15:42:41 -06:00
PointLocatorUniformGrid.h Rename PointLocatorUniformGrid to PointLocatorSparseGrid 2020-09-21 15:42:41 -06:00
RuntimeDeviceInformation.cxx Add Kokkos backend 2020-08-12 13:55:24 -04:00
RuntimeDeviceInformation.h Add Buffer class 2020-06-25 14:01:39 -06:00
RuntimeDeviceTracker.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
RuntimeDeviceTracker.h Update logging for enabled devices 2019-09-30 14:07:24 -06:00
SerializableTypeString.h Fix for serializable type names that change base C types 2020-11-12 16:59:56 -07:00
Serialization.h conslidate the license statement 2019-04-17 10:57:13 -06:00
Storage.cxx Add standard support for read-only storage 2020-12-10 13:39:28 -07:00
Storage.h Add standard support for read-only storage 2020-12-10 13:39:28 -07:00
StorageExtrude.h Bridge old-style ArrayHandle to new-style 2020-12-01 16:24:49 -07:00
StorageImplicit.h Re-introduced deprecated StorageImplicit.h 2020-11-23 08:12:09 -07:00
StorageList.h Replace basic ArrayHandle implementation to use Buffers 2020-06-25 14:02:26 -06:00
StorageListTag.h Merge topic 'modify-default-policy' 2020-03-24 12:17:23 -04:00
StorageVirtual.cxx Save host portal for ArrayHandleVirtual in array instead of portal 2020-11-30 16:40:28 -07:00
StorageVirtual.h Bridge old-style ArrayHandle to new-style 2020-12-01 16:24:49 -07:00
StorageVirtual.hxx Deprecate ArrayHandleVirtual 2020-09-04 22:52:45 -06:00
Timer.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
Timer.h VTK-m Timer now handles when devices fail at runtime 2019-12-12 09:13:23 -05:00
Token.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
Token.h Pass Token::Reference by value 2020-06-11 11:51:42 -06:00
TryExecute.cxx RuntimeDeviceTracker can't be copied and is only accessible via reference. 2019-05-20 11:43:05 -04:00
TryExecute.h Remove instances of ListTag in favor of List 2019-12-06 21:32:36 -07:00
UncertainArrayHandle.h Enable automatic transformation of Unknown/UncertainArrayHandle 2020-09-09 07:03:34 -06:00
UnknownArrayHandle.cxx Update MapField helper functions to use extracted array components 2020-12-16 17:23:35 -07:00
UnknownArrayHandle.h Update MapField helper functions to use extracted array components 2020-12-16 17:23:35 -07:00
VariantArrayHandle.h Optionally remove all use of ArrayHandleVirtual 2020-09-04 22:52:45 -06:00
VirtualObjectHandle.h Back out of passing a token when transfering virtual objects 2020-02-25 09:39:29 -07:00
VirtualObjectHandle.hxx Remove instances of ListTag in favor of List 2019-12-06 21:32:36 -07:00