Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
amrex::RTSoAParticle< RType, IType > Struct Template Reference

#include <AMReX_ParticleTileRT.H>

Public Types

using PTD = ParticleTileDataRT< RType, IType >
 
using ConstType = RTSoAParticle< std::add_const_t< RType >, std::add_const_t< IType > >
 
using size_type = typename PTD::size_type
 
using RealType = RType
 
using IntType = IType
 

Public Member Functions

__host__ __device__ RTSoAParticle (PTD const &ptd, size_type i) noexcept
 
template<class aRType , class aIType >
__host__ __device__ RTSoAParticle (RTSoAParticle< aRType, aIType > const &rhs) noexcept
 
__host__ __device__ decltype(auto) cpu () const &
 
__host__ __device__ decltype(auto) id () const &
 
__host__ __device__ decltype(auto) idcpu () const &
 
__host__ __device__ RType & rdata (const int comp_index) const &
 
__host__ __device__ IType & idata (const int comp_index) const &
 
__host__ __device__ RealVect pos () const &
 
__host__ __device__ RType & pos (int position_index) const &
 

Static Public Member Functions

static Long NextID ()
 
static Long UnprotectedNextID ()
 This version can only be used inside omp critical.
 
static void NextID (Long nextid)
 Reset on restart.
 

Static Public Attributes

static constexpr bool is_constsoa_particle = PTD::is_const
 
static constexpr int NReal = 0
 
static constexpr int NInt = 0
 
static constexpr bool is_soa_particle = true
 
static constexpr bool is_rtsoa_particle = true
 

Friends

template<class aRType , class aIType >
struct RTSoAParticle
 

Member Typedef Documentation

◆ ConstType

template<class RType , class IType >
using amrex::RTSoAParticle< RType, IType >::ConstType = RTSoAParticle<std::add_const_t<RType>, std::add_const_t<IType> >

◆ IntType

template<class RType , class IType >
using amrex::RTSoAParticle< RType, IType >::IntType = IType

◆ PTD

template<class RType , class IType >
using amrex::RTSoAParticle< RType, IType >::PTD = ParticleTileDataRT<RType, IType>

◆ RealType

template<class RType , class IType >
using amrex::RTSoAParticle< RType, IType >::RealType = RType

◆ size_type

template<class RType , class IType >
using amrex::RTSoAParticle< RType, IType >::size_type = typename PTD::size_type

Constructor & Destructor Documentation

◆ RTSoAParticle() [1/2]

template<class RType , class IType >
__host__ __device__ amrex::RTSoAParticle< RType, IType >::RTSoAParticle ( PTD const &  ptd,
size_type  i 
)
inlinenoexcept

◆ RTSoAParticle() [2/2]

template<class RType , class IType >
template<class aRType , class aIType >
__host__ __device__ amrex::RTSoAParticle< RType, IType >::RTSoAParticle ( RTSoAParticle< aRType, aIType > const &  rhs)
inlinenoexcept

Member Function Documentation

◆ cpu()

template<class RType , class IType >
__host__ __device__ decltype(auto) amrex::RTSoAParticle< RType, IType >::cpu ( ) const &
inline

◆ id()

template<class RType , class IType >
__host__ __device__ decltype(auto) amrex::RTSoAParticle< RType, IType >::id ( ) const &
inline

◆ idata()

template<class RType , class IType >
__host__ __device__ IType & amrex::RTSoAParticle< RType, IType >::idata ( const int  comp_index) const &
inline

◆ idcpu()

template<class RType , class IType >
__host__ __device__ decltype(auto) amrex::RTSoAParticle< RType, IType >::idcpu ( ) const &
inline

◆ NextID() [1/2]

template<class RType , class IType >
Long amrex::RTSoAParticle< RType, IType >::NextID ( )
static

◆ NextID() [2/2]

template<class RType , class IType >
void amrex::RTSoAParticle< RType, IType >::NextID ( Long  nextid)
static

Reset on restart.

Parameters
nextid

◆ pos() [1/2]

template<class RType , class IType >
__host__ __device__ RealVect amrex::RTSoAParticle< RType, IType >::pos ( ) const &
inline

◆ pos() [2/2]

template<class RType , class IType >
__host__ __device__ RType & amrex::RTSoAParticle< RType, IType >::pos ( int  position_index) const &
inline

◆ rdata()

template<class RType , class IType >
__host__ __device__ RType & amrex::RTSoAParticle< RType, IType >::rdata ( const int  comp_index) const &
inline

◆ UnprotectedNextID()

template<class RType , class IType >
Long amrex::RTSoAParticle< RType, IType >::UnprotectedNextID ( )
static

This version can only be used inside omp critical.

Friends And Related Symbol Documentation

◆ RTSoAParticle

template<class RType , class IType >
template<class aRType , class aIType >
friend struct RTSoAParticle
friend

Member Data Documentation

◆ is_constsoa_particle

template<class RType , class IType >
constexpr bool amrex::RTSoAParticle< RType, IType >::is_constsoa_particle = PTD::is_const
staticconstexpr

◆ is_rtsoa_particle

template<class RType , class IType >
constexpr bool amrex::RTSoAParticle< RType, IType >::is_rtsoa_particle = true
staticconstexpr

◆ is_soa_particle

template<class RType , class IType >
constexpr bool amrex::RTSoAParticle< RType, IType >::is_soa_particle = true
staticconstexpr

◆ NInt

template<class RType , class IType >
constexpr int amrex::RTSoAParticle< RType, IType >::NInt = 0
staticconstexpr

◆ NReal

template<class RType , class IType >
constexpr int amrex::RTSoAParticle< RType, IType >::NReal = 0
staticconstexpr

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