VTK-m  2.0
Public Types | Public Member Functions | Private Member Functions | List of all members
vtkm::rendering::raytracing::BVHTraverser::Intersector Class Reference

#include <BVHTraverser.h>

Inheritance diagram for vtkm::rendering::raytracing::BVHTraverser::Intersector:
vtkm::worklet::WorkletMapField vtkm::exec::FunctorBase

Public Types

using ControlSignature = void(FieldIn, FieldIn, FieldOut, FieldIn, FieldIn, FieldOut, FieldOut, FieldOut, WholeArrayIn, ExecObject leafIntersector, WholeArrayIn, WholeArrayIn)
 
using ExecutionSignature = void(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12)
 
- Public Types inherited from vtkm::worklet::WorkletMapField
template<typename Worklet >
using Dispatcher = vtkm::worklet::DispatcherMapField< Worklet >
 

Public Member Functions

VTKM_CONT Intersector ()
 
template<typename PointPortalType , typename Precision , typename LeafType , typename InnerNodePortalType , typename LeafPortalType >
VTKM_EXEC void operator() (const vtkm::Vec< Precision, 3 > &dir, const vtkm::Vec< Precision, 3 > &origin, Precision &distance, const Precision &minDistance, const Precision &maxDistance, Precision &minU, Precision &minV, vtkm::Id &hitIndex, const PointPortalType &points, LeafType &leafIntersector, const InnerNodePortalType &flatBVH, const LeafPortalType &leafs) const
 

Private Member Functions

VTKM_EXEC vtkm::Float32 rcp (vtkm::Float32 f) const
 
VTKM_EXEC vtkm::Float32 rcp_safe (vtkm::Float32 f) const
 
VTKM_EXEC vtkm::Float64 rcp (vtkm::Float64 f) const
 
VTKM_EXEC vtkm::Float64 rcp_safe (vtkm::Float64 f) const
 

Member Typedef Documentation

◆ ControlSignature

using vtkm::rendering::raytracing::BVHTraverser::Intersector::ControlSignature = void(FieldIn, FieldIn, FieldOut, FieldIn, FieldIn, FieldOut, FieldOut, FieldOut, WholeArrayIn, ExecObject leafIntersector, WholeArrayIn, WholeArrayIn)

◆ ExecutionSignature

using vtkm::rendering::raytracing::BVHTraverser::Intersector::ExecutionSignature = void(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12)

Constructor & Destructor Documentation

◆ Intersector()

VTKM_CONT vtkm::rendering::raytracing::BVHTraverser::Intersector::Intersector ( )
inline

Member Function Documentation

◆ operator()()

template<typename PointPortalType , typename Precision , typename LeafType , typename InnerNodePortalType , typename LeafPortalType >
VTKM_EXEC void vtkm::rendering::raytracing::BVHTraverser::Intersector::operator() ( const vtkm::Vec< Precision, 3 > &  dir,
const vtkm::Vec< Precision, 3 > &  origin,
Precision &  distance,
const Precision &  minDistance,
const Precision &  maxDistance,
Precision &  minU,
Precision &  minV,
vtkm::Id hitIndex,
const PointPortalType &  points,
LeafType &  leafIntersector,
const InnerNodePortalType &  flatBVH,
const LeafPortalType &  leafs 
) const
inline

◆ rcp() [1/2]

VTKM_EXEC vtkm::Float32 vtkm::rendering::raytracing::BVHTraverser::Intersector::rcp ( vtkm::Float32  f) const
inlineprivate

◆ rcp() [2/2]

VTKM_EXEC vtkm::Float64 vtkm::rendering::raytracing::BVHTraverser::Intersector::rcp ( vtkm::Float64  f) const
inlineprivate

◆ rcp_safe() [1/2]

VTKM_EXEC vtkm::Float32 vtkm::rendering::raytracing::BVHTraverser::Intersector::rcp_safe ( vtkm::Float32  f) const
inlineprivate

◆ rcp_safe() [2/2]

VTKM_EXEC vtkm::Float64 vtkm::rendering::raytracing::BVHTraverser::Intersector::rcp_safe ( vtkm::Float64  f) const
inlineprivate

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