VTK-m  2.0
Public Types | Public Member Functions | Public Attributes | List of all members
vtkm::worklet::flying_edges::ComputePass4XWithNormals< T > Struct Template Reference

#include <FlyingEdgesPass4XWithNormals.h>

Inheritance diagram for vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >:
vtkm::worklet::WorkletVisitCellsWithPoints vtkm::worklet::WorkletMapTopology< vtkm::TopologyElementTagCell, vtkm::TopologyElementTagPoint > vtkm::exec::FunctorBase

Public Types

using ControlSignature = void(CellSetIn, FieldInPoint axis_sums, FieldInPoint axis_mins, FieldInPoint axis_maxs, WholeArrayIn cell_tri_count, WholeArrayIn edgeData, WholeArrayIn data, WholeArrayOut connectivity, WholeArrayOut edgeIds, WholeArrayOut weights, WholeArrayOut inputCellIds, WholeArrayOut points, WholeArrayOut normals)
 
using ExecutionSignature = void(ThreadIndices, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, WorkIndex)
 
- Public Types inherited from vtkm::worklet::WorkletVisitCellsWithPoints
using FieldInPoint = FieldInIncident
 
using FieldInCell = FieldInVisit
 
using FieldOutCell = FieldOut
 
using FieldInOutCell = FieldInOut
 
using PointCount = IncidentElementCount
 
using PointIndices = IncidentElementIndices
 
- Public Types inherited from vtkm::worklet::WorkletMapTopology< vtkm::TopologyElementTagCell, vtkm::TopologyElementTagPoint >
using VisitTopologyType = vtkm::TopologyElementTagCell
 
using IncidentTopologyType = vtkm::TopologyElementTagPoint
 

Public Member Functions

 ComputePass4XWithNormals ()
 
 ComputePass4XWithNormals (T value, const vtkm::Id3 &pdims, const vtkm::Vec3f &origin, const vtkm::Vec3f &spacing, vtkm::Id multiContourCellOffset, vtkm::Id multiContourPointOffset)
 
template<typename ThreadIndices , typename FieldInPointId3 , typename FieldInPointId , typename WholeTriField , typename WholeEdgeField , typename WholeDataField , typename WholeConnField , typename WholeEdgeIdField , typename WholeWeightField , typename WholeCellIdField , typename WholePointField , typename WholeNormalsField >
VTKM_EXEC void operator() (const ThreadIndices &threadIndices, const FieldInPointId3 &axis_sums, const FieldInPointId &axis_mins, const FieldInPointId &axis_maxs, const WholeTriField &cellTriCount, const WholeEdgeField &edges, const WholeDataField &field, const WholeConnField &conn, const WholeEdgeIdField &interpolatedEdgeIds, const WholeWeightField &weights, const WholeCellIdField &inputCellIds, const WholePointField &points, const WholeNormalsField &normals, vtkm::Id oidx) const
 
template<typename WholeDataField , typename WholeIEdgeField , typename WholeWeightField , typename WholePointField , typename WholeNormalField >
VTKM_EXEC void Generate (const vtkm::Vec< vtkm::UInt8, 3 > &boundaryStatus, const vtkm::Id3 &ijk, const WholeDataField &field, const WholeIEdgeField &interpolatedEdgeIds, const WholeWeightField &weights, const WholePointField &points, const WholeNormalField &normals, const vtkm::Id4 &startPos, const vtkm::Id3 &incs, vtkm::Id offset, vtkm::UInt8 const *const edgeUses, vtkm::Id *edgeIds) const
 
template<typename WholeField , typename WholeIEdgeField , typename WholeWeightField , typename WholePointField , typename WholeNormalField >
VTKM_EXEC void InterpolateEdge (bool fullyInterior, const vtkm::Id3 &ijk, vtkm::Id currentIdx, const vtkm::Id3 &incs, vtkm::Id edgeNum, vtkm::UInt8 const *const edgeUses, vtkm::Id *edgeIds, const WholeField &field, const WholeIEdgeField &interpolatedEdgeIds, const WholeWeightField &weights, const WholePointField &points, const WholeNormalField &normals) const
 
VTKM_EXEC vtkm::Vec3f InterpolateCoordinate (T t, const vtkm::Id3 &ijk0, const vtkm::Id3 &ijk1) const
 
template<typename WholeDataField >
VTKM_EXEC vtkm::Vec3f ComputeGradient (bool fullyInterior, const vtkm::Id3 &ijk, const vtkm::Id3 &incs, vtkm::Id pos, const WholeDataField &field) const
 
- Public Member Functions inherited from vtkm::worklet::WorkletMapTopology< vtkm::TopologyElementTagCell, vtkm::TopologyElementTagPoint >
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...
 

Public Attributes

vtkm::Id3 PointDims
 
vtkm::Vec3f Origin
 
vtkm::Vec3f Spacing
 
IsoValue
 
vtkm::Id CellWriteOffset
 
vtkm::Id PointWriteOffset
 

Member Typedef Documentation

◆ ControlSignature

template<typename T >
using vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::ControlSignature = void(CellSetIn, FieldInPoint axis_sums, FieldInPoint axis_mins, FieldInPoint axis_maxs, WholeArrayIn cell_tri_count, WholeArrayIn edgeData, WholeArrayIn data, WholeArrayOut connectivity, WholeArrayOut edgeIds, WholeArrayOut weights, WholeArrayOut inputCellIds, WholeArrayOut points, WholeArrayOut normals)

◆ ExecutionSignature

template<typename T >
using vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::ExecutionSignature = void(ThreadIndices, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, WorkIndex)

Constructor & Destructor Documentation

◆ ComputePass4XWithNormals() [1/2]

◆ ComputePass4XWithNormals() [2/2]

template<typename T >
vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::ComputePass4XWithNormals ( value,
const vtkm::Id3 pdims,
const vtkm::Vec3f origin,
const vtkm::Vec3f spacing,
vtkm::Id  multiContourCellOffset,
vtkm::Id  multiContourPointOffset 
)
inline

Member Function Documentation

◆ ComputeGradient()

template<typename T >
template<typename WholeDataField >
VTKM_EXEC vtkm::Vec3f vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::ComputeGradient ( bool  fullyInterior,
const vtkm::Id3 ijk,
const vtkm::Id3 incs,
vtkm::Id  pos,
const WholeDataField &  field 
) const
inline

◆ Generate()

template<typename T >
template<typename WholeDataField , typename WholeIEdgeField , typename WholeWeightField , typename WholePointField , typename WholeNormalField >
VTKM_EXEC void vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::Generate ( const vtkm::Vec< vtkm::UInt8, 3 > &  boundaryStatus,
const vtkm::Id3 ijk,
const WholeDataField &  field,
const WholeIEdgeField &  interpolatedEdgeIds,
const WholeWeightField &  weights,
const WholePointField &  points,
const WholeNormalField &  normals,
const vtkm::Id4 startPos,
const vtkm::Id3 incs,
vtkm::Id  offset,
vtkm::UInt8 const *const  edgeUses,
vtkm::Id edgeIds 
) const
inline

◆ InterpolateCoordinate()

template<typename T >
VTKM_EXEC vtkm::Vec3f vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::InterpolateCoordinate ( t,
const vtkm::Id3 ijk0,
const vtkm::Id3 ijk1 
) const
inline

◆ InterpolateEdge()

template<typename T >
template<typename WholeField , typename WholeIEdgeField , typename WholeWeightField , typename WholePointField , typename WholeNormalField >
VTKM_EXEC void vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::InterpolateEdge ( bool  fullyInterior,
const vtkm::Id3 ijk,
vtkm::Id  currentIdx,
const vtkm::Id3 incs,
vtkm::Id  edgeNum,
vtkm::UInt8 const *const  edgeUses,
vtkm::Id edgeIds,
const WholeField &  field,
const WholeIEdgeField &  interpolatedEdgeIds,
const WholeWeightField &  weights,
const WholePointField &  points,
const WholeNormalField &  normals 
) const
inline

◆ operator()()

template<typename T >
template<typename ThreadIndices , typename FieldInPointId3 , typename FieldInPointId , typename WholeTriField , typename WholeEdgeField , typename WholeDataField , typename WholeConnField , typename WholeEdgeIdField , typename WholeWeightField , typename WholeCellIdField , typename WholePointField , typename WholeNormalsField >
VTKM_EXEC void vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::operator() ( const ThreadIndices threadIndices,
const FieldInPointId3 &  axis_sums,
const FieldInPointId &  axis_mins,
const FieldInPointId &  axis_maxs,
const WholeTriField &  cellTriCount,
const WholeEdgeField &  edges,
const WholeDataField &  field,
const WholeConnField &  conn,
const WholeEdgeIdField &  interpolatedEdgeIds,
const WholeWeightField &  weights,
const WholeCellIdField &  inputCellIds,
const WholePointField &  points,
const WholeNormalsField &  normals,
vtkm::Id  oidx 
) const
inline

Member Data Documentation

◆ CellWriteOffset

template<typename T >
vtkm::Id vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::CellWriteOffset

◆ IsoValue

template<typename T >
T vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::IsoValue

◆ Origin

◆ PointDims

◆ PointWriteOffset

template<typename T >
vtkm::Id vtkm::worklet::flying_edges::ComputePass4XWithNormals< T >::PointWriteOffset

◆ Spacing


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