|
Mundy: Multibody Nonlocal Dynamics Version of the Day
|
Request helper for writing COO link relations, supporting FutureEntity linkers. More...
#include <NgpModRequests.hpp>
Public Types | |
| using | memory_space = NgpMemSpace |
| using | ticket_issuer_t = TicketIssuer<NgpMemSpace> |
| using | control_space = Kokkos::SharedSpace |
Public Member Functions | |
Constructors / Destructors | |
| NgpRequestLinkRelationsT ()=default | |
| void | initialize () |
| NgpRequestLinkRelationsT (const NgpRequestLinkRelationsT &)=default | |
| NgpRequestLinkRelationsT & | operator= (const NgpRequestLinkRelationsT &)=default |
| NgpRequestLinkRelationsT (NgpRequestLinkRelationsT &&)=default | |
| NgpRequestLinkRelationsT & | operator= (NgpRequestLinkRelationsT &&)=default |
| ~NgpRequestLinkRelationsT ()=default | |
Control plane (HOST only) | |
| void | activate_host () |
| void | activate_device () |
| void | sync () |
Actions | |
| unsigned | id () const noexcept |
| ticket_issuer_t & | tickets () const noexcept |
| void | request (size_t ticket, variant< stk::mesh::Entity, FutureEntity > linker, variant< stk::mesh::Entity, FutureEntity > linked_entity, unsigned link_ordinal) const |
| Record a COO link relation request. | |
Mod cycle management | |
| template<typename> | |
| class | NgpModRequestsT |
| void | reset () |
| size_t | finalize_count () |
This class mirrors NgpRequestConnectionsT but targets LinkData::coo_data().declare_relation() rather than bulk_data.declare_relation(). The key use case is "I am requesting a new link entity, and I want to record that its linked-entity slots should be filled once it exists." Both the linker and the linked entity may be FutureEntity handles.
COO writes do not require an open modification cycle, so these requests are processed after NgpModRequestsT::process_requests() closes the modification cycle — entities are valid at that point and the write is mod-cycle-free.
| using mundy::mesh::NgpRequestLinkRelationsT< NgpMemSpace >::memory_space = NgpMemSpace |
| using mundy::mesh::NgpRequestLinkRelationsT< NgpMemSpace >::ticket_issuer_t = TicketIssuer<NgpMemSpace> |
| using mundy::mesh::NgpRequestLinkRelationsT< NgpMemSpace >::control_space = Kokkos::SharedSpace |
|
default |
|
default |
|
default |
|
default |
|
inline |
|
default |
|
default |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
| ticket | Ticket claimed from tickets().claim(). |
| linker | The link entity (real or future). |
| linked_entity | The entity to connect at link_ordinal (real or future). |
| link_ordinal | COO ordinal slot (0 .. dimensionality-1). |
|
inline |
|
inline |
|
friend |