DNDSR 0.2.1
Distributed Numeric Data Structure for CFV
Loading...
Searching...
No Matches
DNDS::Geom::AdjPairTracked< TPair > Struct Template Reference

Flattened wrapper: inherits from TPair and adds AdjIndexInfo. More...

#include <AdjIndexInfo.hpp>

Inheritance diagram for DNDS::Geom::AdjPairTracked< TPair >:
[legend]
Collaboration diagram for DNDS::Geom::AdjPairTracked< TPair >:
[legend]

Public Types

template<DeviceBackend B>
using t_deviceView = AdjPairTrackedDeviceView< B, typename TPair::t_arr >
 

Public Member Functions

void toLocal ()
 
void toGlobal ()
 
void toLocalOMP ()
 
void toGlobalOMP ()
 
void bootstrapToLocal (const t_pLGhostMapping &mapping)
 Bootstrap: wire mapping + convert to local (solves chicken-and-egg).
 
void bootstrapToLocalOMP (const t_pLGhostMapping &mapping)
 
MeshAdjState state () const
 
bool isLocal () const
 
bool isGlobal () const
 
bool isBuilt () const
 
bool isWired () const
 
const t_pLGhostMappingmapping () const
 
void reset ()
 
template<DeviceBackend B>
auto deviceView ()
 
template<DeviceBackend B>
auto deviceView () const
 

Public Attributes

AdjIndexInfo idx
 

Detailed Description

template<class TPair>
struct DNDS::Geom::AdjPairTracked< TPair >

Flattened wrapper: inherits from TPair and adds AdjIndexInfo.

Because AdjPairTracked inherits publicly from TPair, all existing code that accesses .father, .son, .trans, operator[], BorrowAndPull(), etc. works unchanged. The only addition is the idx member for per-adjacency state tracking.

Template Parameters
TPairThe ArrayPair type (e.g. tAdjPair, tAdj2Pair).

Definition at line 288 of file AdjIndexInfo.hpp.

Member Typedef Documentation

◆ t_deviceView

template<class TPair >
template<DeviceBackend B>
using DNDS::Geom::AdjPairTracked< TPair >::t_deviceView = AdjPairTrackedDeviceView<B, typename TPair::t_arr>

Definition at line 333 of file AdjIndexInfo.hpp.

Member Function Documentation

◆ bootstrapToLocal()

template<class TPair >
void DNDS::Geom::AdjPairTracked< TPair >::bootstrapToLocal ( const t_pLGhostMapping mapping)
inline

Bootstrap: wire mapping + convert to local (solves chicken-and-egg).

Definition at line 299 of file AdjIndexInfo.hpp.

Here is the call graph for this function:

◆ bootstrapToLocalOMP()

template<class TPair >
void DNDS::Geom::AdjPairTracked< TPair >::bootstrapToLocalOMP ( const t_pLGhostMapping mapping)
inline

Definition at line 303 of file AdjIndexInfo.hpp.

Here is the call graph for this function:

◆ deviceView() [1/2]

template<class TPair >
template<DeviceBackend B>
auto DNDS::Geom::AdjPairTracked< TPair >::deviceView ( )
inline

Create a device view that carries the per-adj state alongside the father/son array views.

Definition at line 338 of file AdjIndexInfo.hpp.

◆ deviceView() [2/2]

template<class TPair >
template<DeviceBackend B>
auto DNDS::Geom::AdjPairTracked< TPair >::deviceView ( ) const
inline

Definition at line 346 of file AdjIndexInfo.hpp.

◆ isBuilt()

template<class TPair >
bool DNDS::Geom::AdjPairTracked< TPair >::isBuilt ( ) const
inline

Whether this adjacency is built and has live data. Unlike AdjIndexInfo::isBuilt(), this also checks that the father array is non-null, catching stale states after reset.

Definition at line 315 of file AdjIndexInfo.hpp.

Here is the call graph for this function:

◆ isGlobal()

template<class TPair >
bool DNDS::Geom::AdjPairTracked< TPair >::isGlobal ( ) const
inline

Definition at line 311 of file AdjIndexInfo.hpp.

◆ isLocal()

template<class TPair >
bool DNDS::Geom::AdjPairTracked< TPair >::isLocal ( ) const
inline

Definition at line 310 of file AdjIndexInfo.hpp.

◆ isWired()

template<class TPair >
bool DNDS::Geom::AdjPairTracked< TPair >::isWired ( ) const
inline

Definition at line 316 of file AdjIndexInfo.hpp.

◆ mapping()

template<class TPair >
const t_pLGhostMapping & DNDS::Geom::AdjPairTracked< TPair >::mapping ( ) const
inline

Definition at line 317 of file AdjIndexInfo.hpp.

Here is the caller graph for this function:

◆ reset()

template<class TPair >
void DNDS::Geom::AdjPairTracked< TPair >::reset ( )
inline

Tear down both the array data and the per-adj state atomically. After this call, isBuilt() returns false.

Definition at line 321 of file AdjIndexInfo.hpp.

◆ state()

template<class TPair >
MeshAdjState DNDS::Geom::AdjPairTracked< TPair >::state ( ) const
inline

Definition at line 309 of file AdjIndexInfo.hpp.

◆ toGlobal()

template<class TPair >
void DNDS::Geom::AdjPairTracked< TPair >::toGlobal ( )
inline

Definition at line 294 of file AdjIndexInfo.hpp.

◆ toGlobalOMP()

template<class TPair >
void DNDS::Geom::AdjPairTracked< TPair >::toGlobalOMP ( )
inline

Definition at line 296 of file AdjIndexInfo.hpp.

◆ toLocal()

template<class TPair >
void DNDS::Geom::AdjPairTracked< TPair >::toLocal ( )
inline

Definition at line 293 of file AdjIndexInfo.hpp.

◆ toLocalOMP()

template<class TPair >
void DNDS::Geom::AdjPairTracked< TPair >::toLocalOMP ( )
inline

Definition at line 295 of file AdjIndexInfo.hpp.

Member Data Documentation

◆ idx

Definition at line 290 of file AdjIndexInfo.hpp.


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