vtk-m/vtkm/cont/internal
Kenneth Moreland d1160638b7 Add copy methods to UnknownArrayHandle
`vtkm::cont::UnknownArrayHandle` now provides a set of method that
allows you to copy data from one `UnknownArrayHandle` to another. The
first method, `DeepCopyFrom`, takes a source `UnknownArrayHandle` and
deep copies the data to the called one. If the `UnknownArrayHandle`
already points to a real `ArrayHandle`, the data is copied into that
`ArrayHandle`. If the `UnknownArrayHandle` does not point to an existing
`ArrayHandle`, then a new `ArrayHandleBasic` with the same value type as
the source is created and copied into.

The second method, `CopyShallowIfPossibleFrom` behaves similarly to
`DeepCopyFrom` except that it will perform a shallow copy if possible.
That is, if the target `UnknownArrayHandle` points to an `ArrayHandle`
of the same type as the source `UnknownArrayHandle`, then a shallow copy
occurs and the underlying `ArrayHandle` will point to the source. If the
types differ, then a deep copy is performed. If the target
`UnknownArrayHandle` does not point to an `ArrayHandle`, then the
behavior is the same as the `=` operator.

One of the intentions of these new methods is to allow you to copy
arrays without using a device compiler (e.g. `nvcc`). Calling
`ArrayCopy` requires you to include the `ArrayCopy.h` header file, and
that in turn requires device adapter algorithms. These methods insulate
you from these.
2021-09-28 10:46:58 -06:00
..
testing implement kokkos runtime device configuration 2021-08-18 13:23:30 -06:00
ArrayCopyUnknown.h Add copy methods to UnknownArrayHandle 2021-09-28 10:46:58 -06:00
ArrayHandleDeprecated.h Support DeviceAdapterId in deprecated ArrayHandle 2021-02-09 19:16:51 -07:00
ArrayHandleExecutionManager.h Support using Token calling PrepareForExecution in ExecutionObject 2020-02-25 07:41:39 -07:00
ArrayPortalFromIterators.h Remove Set method from const ArrayPortalFromIterators specialization... 2020-05-05 13:55:54 -04:00
ArrayTransfer.h Remove ArrayManagerExecution 2020-12-08 13:18:44 -07:00
AtomicInterfaceControl.h Change interface of atomic compare and swap 2020-10-20 08:39:22 -06:00
AtomicInterfaceExecution.h Change interface of atomic compare and swap 2020-10-20 08:39:22 -06:00
Buffer.cxx Compile ArrayGetValues implementation in library 2021-08-11 07:56:32 -06:00
Buffer.h Simplify creating metadata in Buffer objects 2020-11-10 16:22:05 -07:00
CastInvalidValue.h Enable setting invalid value in probe filter 2020-06-03 15:29:37 -06:00
CellLocatorBase.h Change Probe filter to use CellLocatorChooser 2021-02-15 12:39:12 -07:00
CMakeLists.txt Add copy methods to UnknownArrayHandle 2021-09-28 10:46:58 -06:00
ConnectivityExplicitInternals.h Compile reverse connectivity builder into vtkm_cont library 2021-09-17 09:48:21 -06:00
ConvertNumComponentsToOffsetsTemplate.h Precompile ConvertNumComponentsToOffsets 2021-09-16 14:27:14 -06:00
DefaultTypesAscent.h.in Add types appropriate for Ascent 2021-01-07 08:15:17 -07:00
DefaultTypesVTK.h.in Unify common storage types 2021-05-13 08:18:33 -06:00
DeviceAdapterAlgorithmGeneral.h Deprecate ArrayHandle::Shrink 2021-02-01 08:07:40 -07:00
DeviceAdapterListHelpers.h Remove instances of ListTag in favor of List 2019-12-06 21:32:36 -07:00
DeviceAdapterMemoryManager.cxx clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
DeviceAdapterMemoryManager.h Allow VTK-m Buffer to have ownership transferred 2020-08-06 10:31:57 -04:00
DeviceAdapterMemoryManagerShared.cxx Pin user provided memory in ArrayHandle 2020-06-25 14:02:46 -06:00
DeviceAdapterMemoryManagerShared.h Pin user provided memory in ArrayHandle 2020-06-25 14:02:46 -06:00
FunctorsGeneral.h split vtkm/Algorithms.h into UpperBound.h, LowerBound.h, and BinarySearch.h 2021-04-07 18:53:09 +00:00
IteratorFromArrayPortal.h Make ArrayPortalWrapper more tolerant of host objects 2020-02-26 13:10:51 -07:00
KXSort.h conslidate the license statement 2019-04-17 10:57:13 -06:00
OptionParser.h Implement RuntimeDeviceConfiguration 2021-06-17 17:56:38 +00:00
OptionParserArguments.h implement return codes and protected virtual parsing of arguments 2021-06-23 17:58:38 +00:00
ParallelRadixSort.h Use TBB task_group for radix sort 2021-06-10 10:39:13 -06:00
ParallelRadixSortInterface.h clang-format: reformat the repository with clang-format-9 2020-08-24 14:01:08 -04:00
PointLocatorBase.h implement PointLocator without virtual methods 2021-02-17 17:16:17 +00:00
ReverseConnectivityBuilder.h Compile reverse connectivity builder into vtkm_cont library 2021-09-17 09:48:21 -06:00
RuntimeDeviceConfiguration.cxx Fix condition in RuntimeDeviceConfiguration 2021-08-20 08:51:44 -06:00
RuntimeDeviceConfiguration.h implement kokkos runtime device configuration 2021-08-18 13:23:30 -06:00
RuntimeDeviceConfigurationOptions.cxx implement kokkos runtime device configuration 2021-08-18 13:23:30 -06:00
RuntimeDeviceConfigurationOptions.h implement kokkos runtime device configuration 2021-08-18 13:23:30 -06:00
RuntimeDeviceOption.cxx implement kokkos runtime device configuration 2021-08-18 13:23:30 -06:00
RuntimeDeviceOption.h implement return codes and protected virtual parsing of arguments 2021-06-23 17:58:38 +00:00
StorageDeprecated.h Make new style of ArrayHandle the expected style 2021-01-12 07:17:53 -07:00
StorageError.h conslidate the license statement 2019-04-17 10:57:13 -06:00
TransferInfo.cxx TransferInfo doesn't leak when holding VirtualObjectTransferShareWithControl 2019-04-29 15:51:19 -04:00
TransferInfo.h Completely deprecate virtual methods 2021-04-28 07:28:32 -06:00
Variant.h Make separate exec and cont versions of Variant 2020-11-09 12:48:10 -07:00
VirtualObjectTransfer.cxx Completely deprecate virtual methods 2021-04-28 07:28:32 -06:00
VirtualObjectTransfer.h Completely deprecate virtual methods 2021-04-28 07:28:32 -06:00
VirtualObjectTransferInstantiate.h Completely deprecate virtual methods 2021-04-28 07:28:32 -06:00
VirtualObjectTransferShareWithControl.h Completely deprecate virtual methods 2021-04-28 07:28:32 -06:00