AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
axom::bump::views::VariableShape< ConnType > Struct Template Reference

This is a shape that can act as any of the other shapes. More...

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

Public Types

using ConnectivityStorage = axom::ArrayView< ConnType >
 
using ConnectivityStorageRef = ConnectivityStorage &
 
using ConnectivityStorageConstRef = const ConnectivityStorage &
 
using ConnectivityType = ConnType
 
using ConnectivityView = ConnectivityStorage
 

Public Member Functions

AXOM_HOST_DEVICE VariableShape (int shapeId, ConnectivityStorageConstRef ids)
 Constructor. More...
 
AXOM_HOST_DEVICE int id () const
 Returns the shape id of the actual shape represented by the variable shape. More...
 
AXOM_HOST_DEVICE IndexType dimension () const
 
AXOM_HOST_DEVICE IndexType numberOfNodes () const
 
AXOM_HOST_DEVICE IndexType numberOfNodesInFace (int faceIndex) const
 
AXOM_HOST_DEVICE IndexType numberOfFaces () const
 
AXOM_HOST_DEVICE void getFace (axom::IndexType faceIndex, ConnectivityType *ids, axom::IndexType &numIds) const
 
AXOM_HOST_DEVICE IndexType numberOfEdges () const
 
AXOM_HOST_DEVICE axom::StackArray< IndexType, 2 > getEdge (int edgeIndex) const
 
AXOM_HOST_DEVICE ConnectivityType getId (IndexType index) const
 Get a specific id that makes up this shape. More...
 
AXOM_HOST_DEVICE ConnectivityView getIds () const
 Get the ids that make up this shape. More...
 
AXOM_HOST_DEVICE ConnectivityStorageRef getIdsStorage ()
 Get the storage for the ids that make up this shape. More...
 
AXOM_HOST_DEVICE ConnectivityStorageConstRef getIdsStorage () const
 Get the storage for the ids that make up this shape. More...
 

Static Public Member Functions

constexpr static AXOM_HOST_DEVICE bool is_polyhedral ()
 
constexpr static AXOM_HOST_DEVICE bool is_variable_size ()
 
static constexpr AXOM_HOST_DEVICE IndexType maxNodesInFace ()
 
constexpr static AXOM_HOST_DEVICE const char * name ()
 

Detailed Description

template<typename ConnType>
struct axom::bump::views::VariableShape< ConnType >

This is a shape that can act as any of the other shapes.

Template Parameters
ConnTypetype of the connectivity values.
Note
This is a substitute for polymorphism so we can run on device.

Member Typedef Documentation

◆ ConnectivityStorage

template<typename ConnType >
using axom::bump::views::VariableShape< ConnType >::ConnectivityStorage = axom::ArrayView<ConnType>

◆ ConnectivityStorageRef

template<typename ConnType >
using axom::bump::views::VariableShape< ConnType >::ConnectivityStorageRef = ConnectivityStorage &

◆ ConnectivityStorageConstRef

template<typename ConnType >
using axom::bump::views::VariableShape< ConnType >::ConnectivityStorageConstRef = const ConnectivityStorage &

◆ ConnectivityType

template<typename ConnType >
using axom::bump::views::VariableShape< ConnType >::ConnectivityType = ConnType

◆ ConnectivityView

template<typename ConnType >
using axom::bump::views::VariableShape< ConnType >::ConnectivityView = ConnectivityStorage

Constructor & Destructor Documentation

◆ VariableShape()

template<typename ConnType >
AXOM_HOST_DEVICE axom::bump::views::VariableShape< ConnType >::VariableShape ( int  shapeId,
ConnectivityStorageConstRef  ids 
)
inline

Constructor.

Parameters
shapeIdThe shape id that describes the points.
idsThe ids that describe the shape.

References axom::bump::views::isValidShapeID(), and SLIC_ASSERT.

Member Function Documentation

◆ id()

template<typename ConnType >
AXOM_HOST_DEVICE int axom::bump::views::VariableShape< ConnType >::id ( ) const
inline

Returns the shape id of the actual shape represented by the variable shape.

Returns
The actual shape represented.

◆ is_polyhedral()

template<typename ConnType >
constexpr static AXOM_HOST_DEVICE bool axom::bump::views::VariableShape< ConnType >::is_polyhedral ( )
inlinestaticconstexpr

◆ is_variable_size()

template<typename ConnType >
constexpr static AXOM_HOST_DEVICE bool axom::bump::views::VariableShape< ConnType >::is_variable_size ( )
inlinestaticconstexpr

◆ dimension()

template<typename ConnType >
AXOM_HOST_DEVICE IndexType axom::bump::views::VariableShape< ConnType >::dimension ( ) const
inline

◆ numberOfNodes()

template<typename ConnType >
AXOM_HOST_DEVICE IndexType axom::bump::views::VariableShape< ConnType >::numberOfNodes ( ) const
inline

◆ numberOfNodesInFace()

◆ maxNodesInFace()

◆ numberOfFaces()

◆ getFace()

◆ numberOfEdges()

◆ getEdge()

◆ getId()

template<typename ConnType >
AXOM_HOST_DEVICE ConnectivityType axom::bump::views::VariableShape< ConnType >::getId ( IndexType  index) const
inline

Get a specific id that makes up this shape.

Returns
The i'th id that makes up this shape.

◆ getIds()

template<typename ConnType >
AXOM_HOST_DEVICE ConnectivityView axom::bump::views::VariableShape< ConnType >::getIds ( ) const
inline

Get the ids that make up this shape.

Returns
A view containing the ids that make up this shape.

◆ name()

template<typename ConnType >
constexpr static AXOM_HOST_DEVICE const char* axom::bump::views::VariableShape< ConnType >::name ( )
inlinestaticconstexpr

◆ getIdsStorage() [1/2]

template<typename ConnType >
AXOM_HOST_DEVICE ConnectivityStorageRef axom::bump::views::VariableShape< ConnType >::getIdsStorage ( )
inline

Get the storage for the ids that make up this shape.

Returns
The container for the ids that make up this shape.

◆ getIdsStorage() [2/2]

template<typename ConnType >
AXOM_HOST_DEVICE ConnectivityStorageConstRef axom::bump::views::VariableShape< ConnType >::getIdsStorage ( ) const
inline

Get the storage for the ids that make up this shape.

Returns
The container for the ids that make up this shape.

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