VTK-m  2.0
Public Types | Public Member Functions | Private Member Functions | List of all members
vtkm::worklet::gradient::PointGradient Struct Reference

#include <PointGradient.h>

Inheritance diagram for vtkm::worklet::gradient::PointGradient:
vtkm::worklet::WorkletVisitPointsWithCells vtkm::worklet::WorkletMapTopology< vtkm::TopologyElementTagPoint, vtkm::TopologyElementTagCell > vtkm::exec::FunctorBase

Public Types

using ControlSignature = void(CellSetIn, WholeCellSetIn< Cell, Point >, WholeArrayIn pointCoordinates, WholeArrayIn inputField, GradientOutputs outputFields)
 
using ExecutionSignature = void(CellCount, CellIndices, WorkIndex, _2, _3, _4, _5)
 
using InputDomain = _1
 
- Public Types inherited from vtkm::worklet::WorkletVisitPointsWithCells
using FieldInCell = FieldInIncident
 
using FieldInPoint = FieldInVisit
 
using FieldOutPoint = FieldOut
 
using FieldInOutPoint = FieldInOut
 
using CellCount = IncidentElementCount
 
using CellIndices = IncidentElementIndices
 
- Public Types inherited from vtkm::worklet::WorkletMapTopology< vtkm::TopologyElementTagPoint, vtkm::TopologyElementTagCell >
using VisitTopologyType = vtkm::TopologyElementTagPoint
 
using IncidentTopologyType = vtkm::TopologyElementTagCell
 

Public Member Functions

template<typename FromIndexType , typename CellSetInType , typename WholeCoordinatesIn , typename WholeFieldIn , typename GradientOutType >
VTKM_EXEC void operator() (const vtkm::IdComponent &numCells, const FromIndexType &cellIds, const vtkm::Id &pointId, const CellSetInType &geometry, const WholeCoordinatesIn &pointCoordinates, const WholeFieldIn &inputField, GradientOutType &outputGradient) const
 
- Public Member Functions inherited from vtkm::worklet::WorkletMapTopology< vtkm::TopologyElementTagPoint, vtkm::TopologyElementTagCell >
VTKM_SUPPRESS_EXEC_WARNINGS VTKM_EXEC vtkm::exec::arg::ThreadIndicesTopologyMap< InputDomainType, vtkm::exec::arg::CustomScatterOrMaskTagGetThreadIndices (vtkm::Id threadIndex, const OutToInArrayType &outToIn, const VisitArrayType &visit, const ThreadToOutArrayType &threadToOut, const InputDomainType &connectivity) const
 Topology map worklets use topology map indices. More...
 
VTKM_SUPPRESS_EXEC_WARNINGS VTKM_EXEC EnableFnWhen< S &&M, vtkm::exec::arg::ThreadIndicesTopologyMap< InputDomainType, vtkm::exec::arg::DefaultScatterAndMaskTag > > GetThreadIndices (vtkm::Id threadIndex1D, const vtkm::Id3 &threadIndex3D, const OutToInArrayType &vtkmNotUsed(outToIn), const VisitArrayType &vtkmNotUsed(visit), const ThreadToOutArrayType &vtkmNotUsed(threadToOut), const InputDomainType &connectivity) const
 Optimized for ScatterIdentity and MaskNone. More...
 
VTKM_SUPPRESS_EXEC_WARNINGS VTKM_EXEC EnableFnWhen<!(S &&M), vtkm::exec::arg::ThreadIndicesTopologyMap< InputDomainType, vtkm::exec::arg::CustomScatterOrMaskTag > > GetThreadIndices (vtkm::Id threadIndex1D, const vtkm::Id3 &threadIndex3D, const OutToInArrayType &outToIn, const VisitArrayType &visit, const ThreadToOutArrayType &threadToOut, const InputDomainType &connectivity) const
 Default version. More...
 

Private Member Functions

template<typename CellShapeTag , typename PointCoordVecType , typename FieldInVecType , typename OutValueType >
VTKM_EXEC void ComputeGradient (CellShapeTag cellShape, const vtkm::IdComponent &pointIndexForCell, const PointCoordVecType &wCoords, const FieldInVecType &field, vtkm::Vec< OutValueType, 3 > &gradient) const
 
template<typename ThreadIndicesType >
VTKM_EXEC vtkm::IdComponent GetPointIndexForCell (const ThreadIndicesType &indices, vtkm::Id pointId) const
 
template<typename ThreadIndicesType , typename WholeFieldIn >
VTKM_EXEC auto GetValues (const ThreadIndicesType &indices, const WholeFieldIn &in) const
 

Member Typedef Documentation

◆ ControlSignature

using vtkm::worklet::gradient::PointGradient::ControlSignature = void(CellSetIn, WholeCellSetIn<Cell, Point>, WholeArrayIn pointCoordinates, WholeArrayIn inputField, GradientOutputs outputFields)

◆ ExecutionSignature

◆ InputDomain

Member Function Documentation

◆ ComputeGradient()

template<typename CellShapeTag , typename PointCoordVecType , typename FieldInVecType , typename OutValueType >
VTKM_EXEC void vtkm::worklet::gradient::PointGradient::ComputeGradient ( CellShapeTag  cellShape,
const vtkm::IdComponent pointIndexForCell,
const PointCoordVecType &  wCoords,
const FieldInVecType &  field,
vtkm::Vec< OutValueType, 3 > &  gradient 
) const
inlineprivate

◆ GetPointIndexForCell()

template<typename ThreadIndicesType >
VTKM_EXEC vtkm::IdComponent vtkm::worklet::gradient::PointGradient::GetPointIndexForCell ( const ThreadIndicesType &  indices,
vtkm::Id  pointId 
) const
inlineprivate

◆ GetValues()

template<typename ThreadIndicesType , typename WholeFieldIn >
VTKM_EXEC auto vtkm::worklet::gradient::PointGradient::GetValues ( const ThreadIndicesType &  indices,
const WholeFieldIn &  in 
) const
inlineprivate

◆ operator()()

template<typename FromIndexType , typename CellSetInType , typename WholeCoordinatesIn , typename WholeFieldIn , typename GradientOutType >
VTKM_EXEC void vtkm::worklet::gradient::PointGradient::operator() ( const vtkm::IdComponent numCells,
const FromIndexType &  cellIds,
const vtkm::Id pointId,
const CellSetInType &  geometry,
const WholeCoordinatesIn &  pointCoordinates,
const WholeFieldIn &  inputField,
GradientOutType &  outputGradient 
) const
inline

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