mirror of
https://gitlab.kitware.com/vtk/vtk-m
synced 2024-09-16 17:22:55 +00:00
77f9ae653d
Previously, `ArrayHandleSOA` worked with any value type that supported `VecTraits`. That means that `ArrayHandleSOA` worked with scalar types like `Float32`. However, for scalar types, the behavior is essentially the same as `ArrayHandleBasic`, but with lots of extra templating and code generation. Although there is nothing _wrong_ with allowing `ArrayHandleSOA` holding a scalar, there is no real reason to either (other than likely template convenience). Generally, there is nothing wrong with supporting it, but if you want to support `ArrayHandleSOA` in places where types are not known (e.g. `Field`), then templating tends to iterate over the cross of all supported types with all supported storage. That means such code will automatically generate a bunch of code for `ArrayHandleSOA` with scalars even if there is no reason for those code paths. So, we can just disable the use of `ArrayHandleSOA` with scalars to allow us to use `ArrayHandleSOA` as a default storage without creating all these useless code paths. |
||
---|---|---|
.. | ||
cont | ||
exec | ||
filter | ||
internal | ||
interop | ||
io | ||
random | ||
rendering | ||
source | ||
testing | ||
thirdparty | ||
worklet | ||
.gitattributes | ||
Algorithms.h | ||
Assert.h | ||
Atomic.h | ||
BinaryOperators.h | ||
BinaryPredicates.h | ||
Bitset.h | ||
Bounds.h | ||
CellClassification.h | ||
CellShape.h | ||
CellTraits.h | ||
CMakeLists.txt | ||
Deprecated.h | ||
ErrorCode.h | ||
Flags.h | ||
Geometry.h | ||
Geometry.hxx | ||
Hash.h | ||
ImplicitFunction.h | ||
List.h | ||
ListTag.h | ||
Math.h | ||
Math.h.in | ||
Matrix.h | ||
NewtonsMethod.h | ||
Pair.h | ||
Particle.h | ||
Range.h | ||
RangeId2.h | ||
RangeId3.h | ||
RangeId.h | ||
StaticAssert.h | ||
Swap.h | ||
TopologyElementTag.h | ||
Transform3D.h | ||
Tuple.h | ||
Tuple.h.in | ||
TypeList.h | ||
TypeListTag.h | ||
Types.h | ||
TypeTraits.h | ||
UnaryPredicates.h | ||
VecAxisAlignedPointCoordinates.h | ||
VecFlat.h | ||
VecFromPortal.h | ||
VecFromPortalPermute.h | ||
VecFromVirtPortal.h | ||
VectorAnalysis.h | ||
VecTraits.h | ||
VecVariable.h | ||
Version.h.in | ||
VirtualObjectBase.h |