AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject Struct Reference

#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/latest/src/axom/spin/UniformGrid.hpp>

Inherits StoragePolicy::ConstViewType.

Public Types

using BoxType = primal::BoundingBox< double, NDIMS >
 The type used for specifying spatial extent of the contents. More...
 
using PointType = primal::Point< double, NDIMS >
 The type used to query the index. More...
 
using ConstBinType = typename UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::ConstBinType
 
using LatticeType = RectangularLattice< NDIMS, double, int >
 
using GridCell = typename LatticeType::GridCell
 

Public Member Functions

 QueryObject (BoxType bbox, LatticeType lattice, const primal::NumericArray< int, NDIMS > &resolution, const primal::NumericArray< int, NDIMS > &strides, const UniformGrid< T, NDIMS, ExecSpace, StoragePolicy > &from)
 
AXOM_HOST_DEVICE ConstBinType getCandidates (const PointType &pt) const
 
AXOM_HOST_DEVICE IndexType countCandidates (const BoxType &bbox) const
 
template<typename Func >
AXOM_HOST_DEVICE void visitCandidates (const BoxType &bbox, Func &&evalFn) const
 

Member Typedef Documentation

◆ BoxType

template<typename T , int NDIMS, typename ExecSpace = axom::SEQ_EXEC, typename StoragePolicy = policy::DynamicGridStorage<T>>
using axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject::BoxType = primal::BoundingBox<double, NDIMS>

The type used for specifying spatial extent of the contents.

◆ PointType

template<typename T , int NDIMS, typename ExecSpace = axom::SEQ_EXEC, typename StoragePolicy = policy::DynamicGridStorage<T>>
using axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject::PointType = primal::Point<double, NDIMS>

The type used to query the index.

◆ ConstBinType

template<typename T , int NDIMS, typename ExecSpace = axom::SEQ_EXEC, typename StoragePolicy = policy::DynamicGridStorage<T>>
using axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject::ConstBinType = typename UniformGrid<T, NDIMS, ExecSpace, StoragePolicy>::ConstBinType

◆ LatticeType

template<typename T , int NDIMS, typename ExecSpace = axom::SEQ_EXEC, typename StoragePolicy = policy::DynamicGridStorage<T>>
using axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject::LatticeType = RectangularLattice<NDIMS, double, int>

◆ GridCell

template<typename T , int NDIMS, typename ExecSpace = axom::SEQ_EXEC, typename StoragePolicy = policy::DynamicGridStorage<T>>
using axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject::GridCell = typename LatticeType::GridCell

Constructor & Destructor Documentation

◆ QueryObject()

template<typename T , int NDIMS, typename ExecSpace = axom::SEQ_EXEC, typename StoragePolicy = policy::DynamicGridStorage<T>>
axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject::QueryObject ( BoxType  bbox,
LatticeType  lattice,
const primal::NumericArray< int, NDIMS > &  resolution,
const primal::NumericArray< int, NDIMS > &  strides,
const UniformGrid< T, NDIMS, ExecSpace, StoragePolicy > &  from 
)
inline

Member Function Documentation

◆ getCandidates()

template<typename T , int NDIMS, typename ExecSpace = axom::SEQ_EXEC, typename StoragePolicy = policy::DynamicGridStorage<T>>
AXOM_HOST_DEVICE ConstBinType axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject::getCandidates ( const PointType pt) const
inline

◆ countCandidates()

template<typename T , int NDIMS, typename ExecSpace = axom::SEQ_EXEC, typename StoragePolicy = policy::DynamicGridStorage<T>>
AXOM_HOST_DEVICE IndexType axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject::countCandidates ( const BoxType bbox) const
inline

◆ visitCandidates()

template<typename T , int NDIMS, typename ExecSpace = axom::SEQ_EXEC, typename StoragePolicy = policy::DynamicGridStorage<T>>
template<typename Func >
AXOM_HOST_DEVICE void axom::spin::UniformGrid< T, NDIMS, ExecSpace, StoragePolicy >::QueryObject::visitCandidates ( const BoxType bbox,
Func &&  evalFn 
) const
inline

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