vtk-m2/vtkm/worklet
Sujin Philip fc9077e0c5 Mark ArrayHandle constructors taking buffers, as explicit
This resolves a compiler ambiguity I hit during development.
In my case, I created an `ArrayHandleDecorator` with one of the arrays being
an `ArrayHandleTransform`. The ambiguity occurs in function
`DecoratorStorageTraits<...>::BuffersToArray`, here an `ArrayHandleTransform`
is constructed using buffers (`std::vector<vtkm::cont::internal::Buffer>`)

This constructor is not defined for `ArrayHandleTransform`, but it's defined for
its superclass (`vtkm::cont::ArrayHandle`). `ArrayHandleTransform` does have a
non-explicit constructor that takes the array to be transformed and the
transform-functor as parameters, where the later has a default value.
This produces the following ambiguous options for the compiler:

1. Create a "to-be-transformed" ArrayHandle instance using the buffers, call
   the `ArrayHandleTransform` constructor with this array with the defaulted
   functor parameter.
2. Create the superclass instance using the buffer and call the
  `ArrayHandleTransform` constructor that takes the superclass.

In this situation, option 2 is the correct choice.

The ambiguity is resolved by marking the constructors that take
buffers as explicit. These constructors are also added for the
derived classess via the `VTK_M_ARRAY_HANDLE_SUBCLASS_IMPL` macro.
2023-06-21 13:50:33 -04:00
..
colorconversion Update CellSetExtrude to not specify exec types by device 2021-02-08 16:57:16 -07:00
cosmotools Consolidate count-to-offset algorithms 2021-09-16 14:24:41 -06:00
internal Fix the size of Mask and ScatterPermutation arrays 2023-04-12 14:37:26 -06:00
spatialstructure Remove deprecated features from VTK-m 2022-11-17 07:12:31 -06:00
splatkernels
testing Mark ArrayHandle constructors taking buffers, as explicit 2023-06-21 13:50:33 -04:00
wavelets Worklet: remove unused var in WaveletDWT 2022-07-09 13:29:26 -04:00
AverageByKey.h Fix slow ArrayCopy calls 2022-01-24 14:15:45 -07:00
AveragePointNeighborhood.h Implement and test Image Comparison Filters and Worklets 2020-12-02 16:24:06 +00:00
BoundaryTypes.h
CellDeepCopy.h Correct the number of points in SplitSharpEdges filter 2022-10-31 16:23:14 -06:00
CMakeLists.txt Remove deprecated features from VTK-m 2022-11-17 07:12:31 -06:00
CosmoTools.h
DescriptiveStatistics.h add distributed statistics 2023-03-24 15:19:23 +00:00
DispatcherCellNeighborhood.h
DispatcherMapField.h Deprecate VariantArrayHandle 2021-04-07 16:12:38 -06:00
DispatcherMapTopology.h
DispatcherPointNeighborhood.h
DispatcherReduceByKey.h
FieldStatistics.h add statistics filter 2023-01-30 10:21:47 +00:00
KernelSplatter.h
Keys.h Remove deprecated features from VTK-m 2022-11-17 07:12:31 -06:00
Keys.hxx
KeysSignedTypes.cxx
KeysUnsignedTypes.cxx
MaskIndices.h Fix doxygen groups 2022-09-09 10:37:31 +08:00
MaskNone.h
MaskSelect.cxx Deprecate VariantArrayHandle 2021-04-07 16:12:38 -06:00
MaskSelect.h Deprecate VariantArrayHandle 2021-04-07 16:12:38 -06:00
NDimsHistMarginalization.h move worklet/histogram to filter/density_estimate/worklet 2022-01-31 12:17:44 -07:00
Normalize.h
ScalarsToColors.h
ScalarsToColors.hxx
ScatterCounting.cxx Deprecate VariantArrayHandle 2021-04-07 16:12:38 -06:00
ScatterCounting.h Deprecate VariantArrayHandle 2021-04-07 16:12:38 -06:00
ScatterIdentity.h
ScatterPermutation.h Fix the size of Mask and ScatterPermutation arrays 2023-04-12 14:37:26 -06:00
ScatterUniform.h
StableSortIndices.h Deprecate ArrayHandle::ExecutionTypes 2021-02-08 12:17:37 -07:00
StreamLineUniformGrid.h Deprecate old methods from DynamicCellSet 2022-01-05 08:18:17 -07:00
TriangleWinding.h Deprecate DynamicCellSet and remove from code 2022-01-04 15:38:18 -07:00
vtkm.module Add module mechanism 2022-10-26 12:51:05 -06:00
WaveletCompressor.h
WorkletCellNeighborhood.h
WorkletMapField.h
WorkletMapTopology.h Remove deprecated features from VTK-m 2022-11-17 07:12:31 -06:00
WorkletNeighborhood.h
WorkletPointNeighborhood.h
WorkletReduceByKey.h