Viskores  1.0
Classes | Namespaces | Functions
ArrayHandleSOA.h File Reference
#include <viskores/cont/ArrayExtractComponent.h>
#include <viskores/cont/ArrayHandle.h>
#include <viskores/Math.h>
#include <viskores/VecTraits.h>
#include <viskores/internal/ArrayPortalBasic.h>
#include <viskores/internal/ArrayPortalHelpers.h>
#include <viskoresstd/integer_sequence.h>
#include <array>
#include <limits>
#include <type_traits>

Go to the source code of this file.

Classes

struct  viskores::cont::StorageTagSOA
 
class  viskores::cont::ArrayHandleSOA< T >
 An ArrayHandle that for Vecs stores each component in a separate physical array. More...
 

Namespaces

 viskores
 Groups connected points that have the same field value.
 
 viskores::cont
 Viskores Control Environment.
 

Functions

template<typename ValueType >
ArrayHandleSOA< ValueType > viskores::cont::make_ArrayHandleSOA (std::initializer_list< viskores::cont::ArrayHandle< typename viskores::VecTraits< ValueType >::ComponentType, viskores::cont::StorageTagBasic >> &&componentArrays)
 Create a viskores::cont::ArrayHandleSOA with an initializer list of array handles. More...
 
template<typename ComponentType , typename... RemainingArrays>
ArrayHandleSOA< viskores::Vec< ComponentType, internal::VecSizeFromRemaining< RemainingArrays... >::value > > viskores::cont::make_ArrayHandleSOA (const viskores::cont::ArrayHandle< ComponentType, viskores::cont::StorageTagBasic > &componentArray0, const RemainingArrays &... componentArrays)
 Create a viskores::cont::ArrayHandleSOA with a number of array handles. More...
 
template<typename ValueType >
ArrayHandleSOA< ValueType > viskores::cont::make_ArrayHandleSOA (std::initializer_list< std::vector< typename viskores::VecTraits< ValueType >::ComponentType >> &&componentVectors)
 Create a viskores::cont::ArrayHandleSOA with an initializer list of std::vector. More...
 
template<typename ComponentType , typename... RemainingVectors>
ArrayHandleSOA< viskores::Vec< ComponentType, internal::VecSizeFromRemaining< RemainingVectors... >::value > > viskores::cont::make_ArrayHandleSOA (viskores::CopyFlag copy, const std::vector< ComponentType > &vector0, RemainingVectors &&... componentVectors)
 Create a viskores::cont::ArrayHandleSOA with a number of std::vector. More...
 
template<typename ComponentType , typename... RemainingVectors>
ArrayHandleSOA< viskores::Vec< ComponentType, internal::VecSizeFromRemaining< RemainingVectors... >::value > > viskores::cont::make_ArrayHandleSOA (viskores::CopyFlag copy, std::vector< ComponentType > &&vector0, RemainingVectors &&... componentVectors)
 Create a viskores::cont::ArrayHandleSOA with a number of std::vector. More...
 
template<typename ComponentType , typename... RemainingVectors>
ArrayHandleSOA< viskores::Vec< ComponentType, internal::VecSizeFromRemaining< RemainingVectors... >::value > > viskores::cont::make_ArrayHandleSOAMove (std::vector< ComponentType > &&vector0, RemainingVectors &&... componentVectors)
 Create a viskores::cont::ArrayHandleSOA with a number of std::vector. More...
 
template<typename ValueType >
ArrayHandleSOA< ValueType > viskores::cont::make_ArrayHandleSOA (std::initializer_list< const typename viskores::VecTraits< ValueType >::ComponentType * > &&componentVectors, viskores::Id length, viskores::CopyFlag copy)
 Create a viskores::cont::ArrayHandleSOA with an initializer list of C arrays. More...
 
template<typename ComponentType , typename... RemainingArrays>
ArrayHandleSOA< viskores::Vec< ComponentType, internal::VecSizeFromRemaining< RemainingArrays... >::value > > viskores::cont::make_ArrayHandleSOA (viskores::Id length, viskores::CopyFlag copy, const ComponentType *array0, const RemainingArrays *... componentArrays)
 Create a viskores::cont::ArrayHandleSOA with a number of C arrays. More...