Mundy: Multibody Nonlocal Dynamics Version of the Day
Loading...
Searching...
No Matches
mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace > Class Template Reference

#include <SharedComponent.hpp>

Inheritance diagram for mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >:
[legend]

Public Types

using our_t = NgpSharedComponent<SharedType, NgpMemSpace>
using canonical_access = access::raw<SharedType>
using shared_type = SharedType
using view_t = typename SharedComponent<shared_type>::view_t

Public Member Functions

 NgpSharedComponent ()=default
 NgpSharedComponent (const NgpSharedComponent &)=default
 NgpSharedComponent (NgpSharedComponent &&)=default
NgpSharedComponentoperator= (const NgpSharedComponent &)=default
NgpSharedComponentoperator= (NgpSharedComponent &&)=default
decltype(auto) operator() (stk::mesh::FastMeshIndex) const
auto & ngp_view ()
const auto & ngp_view () const
void sync_to_device ()
void sync_to_host ()
void modify_on_device ()
void modify_on_host ()
void clear_host_sync_state ()
void clear_device_sync_state ()

Friends

template<typename OtherNgpMemSpace, typename OtherSharedType>
NgpSharedComponent< OtherSharedType, OtherNgpMemSpace > & get_updated_ngp_component (const SharedComponent< OtherSharedType > &component)

Member Typedef Documentation

◆ our_t

template<typename SharedType, typename NgpMemSpace>
using mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::our_t = NgpSharedComponent<SharedType, NgpMemSpace>

◆ canonical_access

template<typename SharedType, typename NgpMemSpace>
using mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::canonical_access = access::raw<SharedType>

◆ shared_type

template<typename SharedType, typename NgpMemSpace>
using mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::shared_type = SharedType

◆ view_t

template<typename SharedType, typename NgpMemSpace>
using mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::view_t = typename SharedComponent<shared_type>::view_t

Constructor & Destructor Documentation

◆ NgpSharedComponent() [1/3]

template<typename SharedType, typename NgpMemSpace>
mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::NgpSharedComponent ( )
default

◆ NgpSharedComponent() [2/3]

template<typename SharedType, typename NgpMemSpace>
mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::NgpSharedComponent ( const NgpSharedComponent< SharedType, NgpMemSpace > & )
default

◆ NgpSharedComponent() [3/3]

template<typename SharedType, typename NgpMemSpace>
mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::NgpSharedComponent ( NgpSharedComponent< SharedType, NgpMemSpace > && )
default

Member Function Documentation

◆ operator=() [1/2]

template<typename SharedType, typename NgpMemSpace>
NgpSharedComponent & mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::operator= ( const NgpSharedComponent< SharedType, NgpMemSpace > & )
default

◆ operator=() [2/2]

template<typename SharedType, typename NgpMemSpace>
NgpSharedComponent & mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::operator= ( NgpSharedComponent< SharedType, NgpMemSpace > && )
default

◆ operator()()

template<typename SharedType, typename NgpMemSpace>
decltype(auto) mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::operator() ( stk::mesh::FastMeshIndex ) const
inline

◆ ngp_view() [1/2]

template<typename SharedType, typename NgpMemSpace>
auto & mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::ngp_view ( )
inline

◆ ngp_view() [2/2]

template<typename SharedType, typename NgpMemSpace>
const auto & mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::ngp_view ( ) const
inline

◆ sync_to_device()

template<typename SharedType, typename NgpMemSpace>
void mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::sync_to_device ( )
inline

◆ sync_to_host()

template<typename SharedType, typename NgpMemSpace>
void mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::sync_to_host ( )
inline

◆ modify_on_device()

template<typename SharedType, typename NgpMemSpace>
void mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::modify_on_device ( )
inline

◆ modify_on_host()

template<typename SharedType, typename NgpMemSpace>
void mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::modify_on_host ( )
inline

◆ clear_host_sync_state()

template<typename SharedType, typename NgpMemSpace>
void mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::clear_host_sync_state ( )
inline

◆ clear_device_sync_state()

template<typename SharedType, typename NgpMemSpace>
void mundy::mesh::NgpSharedComponent< SharedType, NgpMemSpace >::clear_device_sync_state ( )
inline

◆ get_updated_ngp_component

template<typename SharedType, typename NgpMemSpace>
template<typename OtherNgpMemSpace, typename OtherSharedType>
NgpSharedComponent< OtherSharedType, OtherNgpMemSpace > & get_updated_ngp_component ( const SharedComponent< OtherSharedType > & component)
friend