AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
axom::bump::MatsetSlicer< ExecSpace, MatsetView > Class Template Reference

Slices the input matset view and outputs a new matset (unibuffer flavor). More...

#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/main/src/axom/bump/MatsetSlicer.hpp>

Public Types

using SelectedZonesView = axom::ArrayView< axom::IndexType >
 

Public Member Functions

 MatsetSlicer (const MatsetView &matsetView)
 Constructor. More...
 
void setAllocatorID (int allocator_id)
 Set the allocator id to use when allocating memory. More...
 
int getAllocatorID () const
 Get the allocator id to use when allocating memory. More...
 
void execute (const SliceData &slice, const conduit::Node &n_matset, conduit::Node &n_newMatset)
 Slice the input matset and output a new matset. More...
 

Detailed Description

template<typename ExecSpace, typename MatsetView>
class axom::bump::MatsetSlicer< ExecSpace, MatsetView >

Slices the input matset view and outputs a new matset (unibuffer flavor).

Template Parameters
ExecSpaceThe execution space where the algorithm will run.
MatsetViewThe matset view type that wraps the Blueprint matset.

Member Typedef Documentation

◆ SelectedZonesView

template<typename ExecSpace , typename MatsetView >
using axom::bump::MatsetSlicer< ExecSpace, MatsetView >::SelectedZonesView = axom::ArrayView<axom::IndexType>

Constructor & Destructor Documentation

◆ MatsetSlicer()

template<typename ExecSpace , typename MatsetView >
axom::bump::MatsetSlicer< ExecSpace, MatsetView >::MatsetSlicer ( const MatsetView &  matsetView)
inline

Constructor.

Member Function Documentation

◆ setAllocatorID()

template<typename ExecSpace , typename MatsetView >
void axom::bump::MatsetSlicer< ExecSpace, MatsetView >::setAllocatorID ( int  allocator_id)
inline

Set the allocator id to use when allocating memory.

Parameters
allocator_idThe allocator id to use when allocating memory.

References axom::isValidAllocatorID(), and SLIC_ERROR_IF.

◆ getAllocatorID()

template<typename ExecSpace , typename MatsetView >
int axom::bump::MatsetSlicer< ExecSpace, MatsetView >::getAllocatorID ( ) const
inline

Get the allocator id to use when allocating memory.

Returns
The allocator id to use when allocating memory.

◆ execute()

template<typename ExecSpace , typename MatsetView >
void axom::bump::MatsetSlicer< ExecSpace, MatsetView >::execute ( const SliceData slice,
const conduit::Node &  n_matset,
conduit::Node &  n_newMatset 
)
inline

Slice the input matset and output a new matset.

Parameters
matsetViewA view that wraps the input matset.
sliceSlice data that contains the zone ids that we're extracting from the matset.
n_matsetThe input matset.
[out]n_newMatsetThe output matset.

References AXOM_ANNOTATE_BEGIN, AXOM_ANNOTATE_END, AXOM_ANNOTATE_SCOPE, AXOM_LAMBDA, axom::sidre::ConduitMemory::axomAllocIdToConduit(), axom::serial::reductions::ReduceSum< ExecSpace, T >::get(), axom::bump::MatsetSlicer< ExecSpace, MatsetView >::getAllocatorID(), axom::bump::SliceData::m_indicesView, axom::ArrayView< T, DIM, SPACE >::size(), SLIC_ASSERT, and SLIC_ERROR_IF.


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