VTK-m  2.0
Classes | Public Types | Public Member Functions | Private Types | List of all members
vtkm::cont::CoordinateSystem Class Reference

#include <CoordinateSystem.h>

Inheritance diagram for vtkm::cont::CoordinateSystem:
vtkm::cont::Field

Classes

struct  StorageToArrayDefault
 
struct  StorageToArrayNonDefault
 

Public Types

using MultiplexerArrayType = vtkm::cont::ArrayHandleMultiplexerFromList< vtkm::ListAppend< ArraysFloatDefault, ArraysFloatNonDefault > >
 
- Public Types inherited from vtkm::cont::Field
enum  Association {
  Association::Any, Association::WholeDataSet, Association::Points, Association::Cells,
  Association::Partitions, Association::Global
}
 

Public Member Functions

VTKM_CONT CoordinateSystem ()
 
VTKM_CONT CoordinateSystem (const vtkm::cont::Field &src)
 
VTKM_CONT CoordinateSystem (std::string name, const vtkm::cont::UnknownArrayHandle &data)
 
template<typename T , typename Storage >
VTKM_CONT CoordinateSystem (std::string name, const ArrayHandle< T, Storage > &data)
 
VTKM_CONT CoordinateSystem (std::string name, vtkm::Id3 dimensions, vtkm::Vec3f origin=vtkm::Vec3f(0.0f, 0.0f, 0.0f), vtkm::Vec3f spacing=vtkm::Vec3f(1.0f, 1.0f, 1.0f))
 This constructor of coordinate system sets up a regular grid of points. More...
 
VTKM_CONT vtkm::Id GetNumberOfPoints () const
 
VTKM_CONT vtkm::cont::UncertainArrayHandle< vtkm::TypeListFieldVec3, VTKM_DEFAULT_STORAGE_LIST > GetData () const
 
VTKM_CONT MultiplexerArrayType GetDataAsMultiplexer () const
 Returns the data for the coordinate system as an ArrayHandleMultiplexer. More...
 
VTKM_CONT void GetRange (vtkm::Range *range) const
 
VTKM_CONT vtkm::Vec< vtkm::Range, 3 > GetRange () const
 
VTKM_CONT vtkm::cont::ArrayHandle< vtkm::RangeGetRangeAsArrayHandle () const
 
VTKM_CONT vtkm::Bounds GetBounds () const
 
virtual void PrintSummary (std::ostream &out) const override
 
VTKM_CONT void ReleaseResourcesExecution () override
 Releases any resources being used in the execution environment (that are not being shared by the control environment). More...
 
- Public Member Functions inherited from vtkm::cont::Field
VTKM_CONT Field ()=default
 
VTKM_CONT Field (std::string name, Association association, const vtkm::cont::UnknownArrayHandle &data)
 
template<typename T , typename Storage >
VTKM_CONT Field (std::string name, Association association, const vtkm::cont::ArrayHandle< T, Storage > &data)
 
 Field (const vtkm::cont::Field &src)
 
 Field (vtkm::cont::Field &&src) noexcept
 
virtual VTKM_CONT ~Field ()
 
VTKM_CONT Fieldoperator= (const vtkm::cont::Field &src)
 
VTKM_CONT Fieldoperator= (vtkm::cont::Field &&src) noexcept
 
VTKM_CONT bool IsCellField () const
 
VTKM_CONT bool IsPointField () const
 
VTKM_CONT bool IsWholeDataSetField () const
 
VTKM_CONT bool IsPartitionsField () const
 
VTKM_CONT bool IsGlobalField () const
 
VTKM_CONT bool IsSupportedType () const
 Returns true if the array of the field has a value type that matches something in VTKM_FIELD_TYPE_LIST and a storage that matches something in VTKM_FIELD_STORAGE_LIST. More...
 
VTKM_CONT vtkm::Id GetNumberOfValues () const
 
const VTKM_CONT std::string & GetName () const
 
VTKM_CONT Association GetAssociation () const
 
const vtkm::cont::UnknownArrayHandleGetData () const
 
vtkm::cont::UnknownArrayHandleGetData ()
 
const VTKM_CONT vtkm::cont::ArrayHandle< vtkm::Range > & GetRange () const
 
VTKM_CONT void GetRange (vtkm::Range *range) const
 
VTKM_CONT vtkm::cont::UnknownArrayHandle GetDataAsDefaultFloat () const
 Get the data as an array with vtkm::FloatDefault components. More...
 
VTKM_CONT vtkm::cont::UnknownArrayHandle GetDataWithExpectedTypes () const
 Get the data as an array of an expected type. More...
 
VTKM_CONT void ConvertToExpected ()
 Convert this field to use an array of an expected type. More...
 
VTKM_CONT void SetData (const vtkm::cont::UnknownArrayHandle &newdata)
 
template<typename T , typename StorageTag >
VTKM_CONT void SetData (const vtkm::cont::ArrayHandle< T, StorageTag > &newdata)
 

Private Types

using Superclass = vtkm::cont::Field
 
using FloatNonDefault = vtkm::Float64
 
using Vec3f_nd = vtkm::Vec< FloatNonDefault, 3 >
 
using ArraysFloatDefault = vtkm::ListTransform< vtkm::ListRemoveIf< VTKM_DEFAULT_STORAGE_LIST, StorageToArrayDefault::IsInvalid >, StorageToArrayDefault::Transform >
 
using ArraysFloatNonDefault = vtkm::ListTransform< vtkm::ListRemoveIf< VTKM_DEFAULT_STORAGE_LIST, StorageToArrayNonDefault::IsInvalid >, StorageToArrayNonDefault::Transform >
 

Member Typedef Documentation

◆ ArraysFloatDefault

◆ ArraysFloatNonDefault

◆ FloatNonDefault

◆ MultiplexerArrayType

◆ Superclass

◆ Vec3f_nd

Constructor & Destructor Documentation

◆ CoordinateSystem() [1/5]

VTKM_CONT vtkm::cont::CoordinateSystem::CoordinateSystem ( )

◆ CoordinateSystem() [2/5]

VTKM_CONT vtkm::cont::CoordinateSystem::CoordinateSystem ( const vtkm::cont::Field src)

◆ CoordinateSystem() [3/5]

VTKM_CONT vtkm::cont::CoordinateSystem::CoordinateSystem ( std::string  name,
const vtkm::cont::UnknownArrayHandle data 
)

◆ CoordinateSystem() [4/5]

template<typename T , typename Storage >
VTKM_CONT vtkm::cont::CoordinateSystem::CoordinateSystem ( std::string  name,
const ArrayHandle< T, Storage > &  data 
)
inline

◆ CoordinateSystem() [5/5]

VTKM_CONT vtkm::cont::CoordinateSystem::CoordinateSystem ( std::string  name,
vtkm::Id3  dimensions,
vtkm::Vec3f  origin = vtkm::Vec3f(0.0f, 0.0f, 0.0f),
vtkm::Vec3f  spacing = vtkm::Vec3f(1.0f, 1.0f, 1.0f) 
)

This constructor of coordinate system sets up a regular grid of points.

Member Function Documentation

◆ GetBounds()

VTKM_CONT vtkm::Bounds vtkm::cont::CoordinateSystem::GetBounds ( ) const
inline

◆ GetData()

VTKM_CONT vtkm::cont::UncertainArrayHandle<vtkm::TypeListFieldVec3, VTKM_DEFAULT_STORAGE_LIST> vtkm::cont::CoordinateSystem::GetData ( ) const

◆ GetDataAsMultiplexer()

VTKM_CONT MultiplexerArrayType vtkm::cont::CoordinateSystem::GetDataAsMultiplexer ( ) const

Returns the data for the coordinate system as an ArrayHandleMultiplexer.

This array will handle all potential types supported by CoordinateSystem, so all types can be handled with one compile pass. However, using this precludes specialization for special arrays such as ArrayHandleUniformPointCoordinates that could have optimized code paths

◆ GetNumberOfPoints()

VTKM_CONT vtkm::Id vtkm::cont::CoordinateSystem::GetNumberOfPoints ( ) const
inline

◆ GetRange() [1/2]

VTKM_CONT vtkm::Vec<vtkm::Range, 3> vtkm::cont::CoordinateSystem::GetRange ( ) const
inline

◆ GetRange() [2/2]

VTKM_CONT void vtkm::cont::CoordinateSystem::GetRange ( vtkm::Range range) const
inline

◆ GetRangeAsArrayHandle()

VTKM_CONT vtkm::cont::ArrayHandle<vtkm::Range> vtkm::cont::CoordinateSystem::GetRangeAsArrayHandle ( ) const
inline

◆ PrintSummary()

virtual void vtkm::cont::CoordinateSystem::PrintSummary ( std::ostream &  out) const
overridevirtual

Reimplemented from vtkm::cont::Field.

◆ ReleaseResourcesExecution()

VTKM_CONT void vtkm::cont::CoordinateSystem::ReleaseResourcesExecution ( )
inlineoverridevirtual

Releases any resources being used in the execution environment (that are not being shared by the control environment).

Reimplemented from vtkm::cont::Field.


The documentation for this class was generated from the following file: