vtk-m/vtkm/cont
Kenneth Moreland 98a0a20feb Allow ArrayHandleTransform to work with ExecObject
This change allows you to set a subclass of
vtkm::cont::ExecutionObjectBase as a functor
used in ArrayHandleTransform. This latter class will then detect that
the functor is an ExecObject and will call PrepareForExecution with the
appropriate device to get the actual Functor object.

This change allows you to use virtual objects and other device dependent
objects as functors for ArrayHandleTransform without knowing a priori
what device the portal will be used on.
2018-09-05 13:11:04 -06:00
..
arg Merge topic 'atomic-array-device-execution' 2018-07-18 18:08:05 -04:00
cuda Allow ArrayHandleTransform to work with ExecObject 2018-09-05 13:11:04 -06:00
diy Add utility to serialize ArrayHandles for DIY. 2018-04-05 17:16:10 -04:00
internal Rename Undefined and Any DeviceAdapterId subclasses for consistency. 2018-08-29 09:05:50 -07:00
openmp Make DeviceAdapterId constructor protected. 2018-08-24 16:38:08 -04:00
serial Make DeviceAdapterId constructor protected. 2018-08-24 16:38:08 -04:00
tbb Make DeviceAdapterId constructor protected. 2018-08-24 16:38:08 -04:00
testing Allow ArrayHandleTransform to work with ExecObject 2018-09-05 13:11:04 -06:00
Algorithm.h Fix some missed IdAny renames. 2018-08-29 09:20:44 -07:00
ArrayCopy.h At runtime TryExecute supports a specific deviceId to execute on. 2018-08-07 17:22:18 -04:00
ArrayHandle.cxx vtk-m ArrayHandle + basic storage has an optimized PrepareForDevice method 2018-02-16 10:00:28 -05:00
ArrayHandle.h Rename Undefined and Any DeviceAdapterId subclasses for consistency. 2018-08-29 09:05:50 -07:00
ArrayHandle.hxx VTK-m ArrayHandle can now take ownership of a user allocated memory location 2018-04-04 11:28:25 -04:00
ArrayHandleCartesianProduct.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandleCast.h Fix ambiguous make_ArrayHandleCast template 2017-09-27 10:56:22 -06:00
ArrayHandleCompositeVector.h Refactor ArrayHandleCompositeVector to simplify usage and impl. 2018-05-16 11:45:12 -04:00
ArrayHandleConcatenate.h Correct warnings and errors found with MSVC2017+CUDA9 2018-01-31 15:58:45 -05:00
ArrayHandleConstant.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandleCounting.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandleDiscard.h Switch over from static const to static constexpr where possible. 2018-03-10 11:39:58 -05:00
ArrayHandleExtractComponent.h Make Swizzle and ExtractComponent array parameters runtime vars. 2018-05-16 11:45:11 -04:00
ArrayHandleGroupVec.h Switch over from static const to static constexpr where possible. 2018-03-10 11:39:58 -05:00
ArrayHandleGroupVecVariable.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandleImplicit.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandleIndex.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandlePermutation.h Correct bad formatting in some vtkm::cont headers 2018-01-15 10:45:16 -05:00
ArrayHandleReverse.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandleStreaming.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandleSwizzle.h Fix Vec <T, sizeof...(Ts)> warnings 2018-06-18 14:44:35 -04:00
ArrayHandleTransform.h Allow ArrayHandleTransform to work with ExecObject 2018-09-05 13:11:04 -06:00
ArrayHandleUniformPointCoordinates.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayHandleView.h Add ArrayHandleView 2018-08-29 13:54:31 -07:00
ArrayHandleVirtualCoordinates.h Replace FindDeviceAdapterTagAndCall with TryExecuteOnDevice 2018-08-08 14:53:28 -04:00
ArrayHandleZip.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ArrayPortal.h Markup array portals for use in the exec env. 2018-05-16 11:45:12 -04:00
ArrayPortalToIterators.h Misc. typos 2018-01-30 06:51:47 -05:00
ArrayRangeCompute.cxx Refactor ArrayHandleCompositeVector to simplify usage and impl. 2018-05-16 11:45:12 -04:00
ArrayRangeCompute.h Refactor ArrayHandleCompositeVector to simplify usage and impl. 2018-05-16 11:45:12 -04:00
ArrayRangeCompute.hxx Refactor ArrayRange to do as little as possible inside TryExecute 2018-02-15 11:42:48 -05:00
AssignerMultiBlock.cxx Update AssignerMultiBlock to the new diy::Assigner class hierarchy. 2018-05-02 14:29:32 -04:00
AssignerMultiBlock.h Update AssignerMultiBlock to the new diy::Assigner class hierarchy. 2018-05-02 14:29:32 -04:00
AtomicArray.h ReverseConnectivityBuilder now uses the new vtkm::cont::AtomicArray 2018-07-19 13:39:47 -04:00
BoundingIntervalHierarchy.h Make sure people always treat DeviceAdapterId as a proper type 2018-07-25 11:00:06 -04:00
BoundingIntervalHierarchy.hxx Convert some vtkm/cont classes over to vtkm::worklet::Invoker 2018-09-04 15:01:18 -04:00
BoundingIntervalHierarchyNode.h fixing -Wmissing-field-initializers for BoundingIntevalHierarchyNode 2018-06-29 18:58:28 -07:00
BoundsCompute.cxx Fix BoundsCompute for missing coordinate system. 2018-04-16 16:57:36 -04:00
BoundsCompute.h Add BoundsCompute and BoundsGlobalCompute 2018-04-05 17:16:10 -04:00
BoundsGlobalCompute.cxx Add BoundsCompute and BoundsGlobalCompute 2018-04-05 17:16:10 -04:00
BoundsGlobalCompute.h Add BoundsCompute and BoundsGlobalCompute 2018-04-05 17:16:10 -04:00
CellLocator.h At runtime TryExecute supports a specific deviceId to execute on. 2018-08-07 17:22:18 -04:00
CellLocatorHelper.h Make DispatcherBase invoke using a TryExecute 2018-08-29 19:18:54 -07:00
CellLocatorTwoLevelUniformGrid.h Convert some vtkm/cont classes over to vtkm::worklet::Invoker 2018-09-04 15:01:18 -04:00
CellSet.cxx Update copyright for Sandia 2017-09-20 15:33:44 -06:00
CellSet.h VTK-m now supports passing pointers when invoking worklets. 2018-07-06 14:27:36 -04:00
CellSetExplicit.cxx Update copyright for Sandia 2017-09-20 15:33:44 -06:00
CellSetExplicit.h Refactor CellSetExplicit to store connectivity in a shared_ptr. 2018-08-23 11:13:13 -04:00
CellSetExplicit.hxx Rename Undefined and Any DeviceAdapterId subclasses for consistency. 2018-08-29 09:05:50 -07:00
CellSetListTag.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
CellSetPermutation.h Make DispatcherBase invoke using a TryExecute 2018-08-29 19:18:54 -07:00
CellSetSingleType.h Refactor CellSetExplicit to store connectivity in a shared_ptr. 2018-08-23 11:13:13 -04:00
CellSetStructured.cxx Update copyright for Sandia 2017-09-20 15:33:44 -06:00
CellSetStructured.h Mark classes that should not be derived from as final. 2018-06-15 10:49:59 -04:00
CellSetStructured.hxx Update copyright for Sandia 2017-09-20 15:33:44 -06:00
CMakeLists.txt Add ArrayHandleView 2018-08-29 13:54:31 -07:00
ColorTable.cxx Replace FindDeviceAdapterTagAndCall with TryExecuteOnDevice 2018-08-08 14:53:28 -04:00
ColorTable.h At runtime TryExecute supports a specific deviceId to execute on. 2018-08-07 17:22:18 -04:00
ColorTable.hxx Convert some vtkm/cont classes over to vtkm::worklet::Invoker 2018-09-04 15:01:18 -04:00
ColorTablePrivate.hxx ColorTable can provide vtkm::exec::Colortable to a specific device 2018-07-12 10:28:18 -04:00
ColorTableSamples.h Introduce vtkm::cont::ColorTable replacing vtkm::rendering::ColorTable 2018-03-28 16:11:23 -04:00
CoordinateSystem.cxx Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
CoordinateSystem.h Add a common API for CoordinateSystem to unload execution resources 2018-05-30 17:25:54 -04:00
CoordinateSystem.hxx Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
DataSet.cxx Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
DataSet.h Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
DataSetBuilderExplicit.cxx Split the DataSetBuilders into h/cxx files. 2018-05-29 16:49:34 -04:00
DataSetBuilderExplicit.h Make sure DataSetBuilderExplicitIterative is usable by vtkm consumers 2018-06-01 13:00:16 -04:00
DataSetBuilderRectilinear.cxx Split the DataSetBuilders into h/cxx files. 2018-05-29 16:49:34 -04:00
DataSetBuilderRectilinear.h Make DispatcherBase invoke using a TryExecute 2018-08-29 19:18:54 -07:00
DataSetBuilderUniform.cxx Split the DataSetBuilders into h/cxx files. 2018-05-29 16:49:34 -04:00
DataSetBuilderUniform.h Split the DataSetBuilders into h/cxx files. 2018-05-29 16:49:34 -04:00
DataSetFieldAdd.h Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
DeviceAdapter.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
DeviceAdapterAlgorithm.h Re-implement DeviceAdapterRuntimeDetector to avoid ODR violations. 2018-05-15 13:08:34 -04:00
DeviceAdapterListTag.h Add initial version of an OpenMP backend. 2018-05-31 16:47:48 -04:00
DynamicArrayHandle.cxx Refactor DynamicArrayHandle CastAndCall 2017-11-07 13:20:46 -05:00
DynamicArrayHandle.h DynamicArrayHandle prunes invalid Value/Storage set before cast and call 2018-03-09 16:14:27 -05:00
DynamicCellSet.h Correctly forward rvalue functors when passed to CastAndCall 2017-12-08 12:02:01 -05:00
EnvironmentTracker.cxx init MPI when needed. 2018-04-12 16:40:18 -04:00
EnvironmentTracker.h Make DIY a required dependency. 2018-02-26 11:25:56 -05:00
Error.h add vtkm::cont::ErrorFilterExecution 2018-04-03 16:55:03 -04:00
ErrorBadAllocation.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ErrorBadDevice.cxx Use device id names where possible. 2018-08-29 14:57:19 -07:00
ErrorBadDevice.h Replace FindDeviceAdapterTagAndCall with TryExecuteOnDevice 2018-08-08 14:53:28 -04:00
ErrorBadType.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ErrorBadValue.h Make DispatcherBase invoke using a TryExecute 2018-08-29 19:18:54 -07:00
ErrorExecution.h Make DispatcherBase invoke using a TryExecute 2018-08-29 19:18:54 -07:00
ErrorFilterExecution.h add vtkm::cont::ErrorFilterExecution 2018-04-03 16:55:03 -04:00
ErrorInternal.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
ExecutionObjectBase.h Replace ExecutionObjectFactoryBase with ExecutionObjectBase 2018-05-10 17:53:39 -06:00
Field.cxx Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
Field.h Add a common API for CoordinateSystem to unload execution resources 2018-05-30 17:25:54 -04:00
FieldRangeCompute.cxx Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
FieldRangeCompute.h Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
FieldRangeCompute.hxx Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
FieldRangeGlobalCompute.cxx Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
FieldRangeGlobalCompute.h Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
FieldRangeGlobalCompute.hxx Use the strong typed enums for vtkm::cont::Field 2018-05-22 11:44:51 -04:00
ImplicitFunctionHandle.h Switch from faux to true virtuals 2017-11-06 15:25:29 -05:00
MultiBlock.cxx Remove GetBounds methods from MultiBlock. 2018-04-05 17:31:49 -04:00
MultiBlock.h make MultiBlock constructors explicit. 2018-04-12 16:40:18 -04:00
PointLocator.h Replace FindDeviceAdapterTagAndCall with TryExecuteOnDevice 2018-08-08 14:53:28 -04:00
PointLocatorUniformGrid.h Make DispatcherBase invoke using a TryExecute 2018-08-29 19:18:54 -07:00
PresetColorTables.cxx Make default ColorTable preset 2018-04-02 15:32:23 -06:00
RuntimeDeviceInformation.h Add missing include for OpenMP RuntimeDetector support. 2018-08-29 09:54:52 -07:00
RuntimeDeviceTracker.cxx Use device id names where possible. 2018-08-29 14:57:19 -07:00
RuntimeDeviceTracker.h Allow ArrayHandleTransform to work with ExecObject 2018-09-05 13:11:04 -06:00
Storage.h Misc. typos 2018-01-30 06:51:47 -05:00
StorageBasic.cxx VTK-m ArrayHandle can now take ownership of a user allocated memory location 2018-04-04 11:28:25 -04:00
StorageBasic.h VTK-m ArrayHandle can now take ownership of a user allocated memory location 2018-04-04 11:28:25 -04:00
StorageBasic.hxx VTK-m StorageBasic is now able to give/take ownership of user allocated memory. 2018-04-04 11:27:57 -04:00
StorageImplicit.h Add ability to "allocate" implicit storage 2018-06-05 17:07:44 -05:00
StorageListTag.h Update copyright for Sandia 2017-09-20 15:33:44 -06:00
Timer.h Misc. typos 2018-01-30 06:51:47 -05:00
TryExecute.cxx Merge topic 'dispatcher-auto-device-2' 2018-08-30 12:59:22 -04:00
TryExecute.h Use device id names where possible. 2018-08-29 14:57:19 -07:00
VirtualObjectHandle.h Use device id names where possible. 2018-08-29 14:57:19 -07:00