Block-Structured AMR Software Framework
amrex::ArenaAllocatorBase< T, AR > Struct Template Reference

#include <AMReX_GpuAllocators.H>

Public Types

using value_type = T
 
using arena_wrapper_type = AR
 

Public Member Functions

constexpr ArenaAllocatorBase ()=default
 
constexpr ArenaAllocatorBase (AR a_ar)
 
T * allocate (std::size_t n)
 
FatPtr< T > allocate_in_place (T *p, std::size_t nmin, std::size_t nmax)
 
T * shrink_in_place (T *p, std::size_t n)
 
void deallocate (T *ptr, std::size_t)
 
Arenaarena () const noexcept
 

Private Attributes

AR m_ar {}
 

Member Typedef Documentation

◆ arena_wrapper_type

template<class T , class AR >
using amrex::ArenaAllocatorBase< T, AR >::arena_wrapper_type = AR

◆ value_type

template<class T , class AR >
using amrex::ArenaAllocatorBase< T, AR >::value_type = T

Constructor & Destructor Documentation

◆ ArenaAllocatorBase() [1/2]

template<class T , class AR >
constexpr amrex::ArenaAllocatorBase< T, AR >::ArenaAllocatorBase ( )
constexprdefault

◆ ArenaAllocatorBase() [2/2]

template<class T , class AR >
constexpr amrex::ArenaAllocatorBase< T, AR >::ArenaAllocatorBase ( AR  a_ar)
inlineexplicitconstexpr

Member Function Documentation

◆ allocate()

template<class T , class AR >
T* amrex::ArenaAllocatorBase< T, AR >::allocate ( std::size_t  n)
inline

◆ allocate_in_place()

template<class T , class AR >
FatPtr<T> amrex::ArenaAllocatorBase< T, AR >::allocate_in_place ( T *  p,
std::size_t  nmin,
std::size_t  nmax 
)
inline

◆ arena()

template<class T , class AR >
Arena* amrex::ArenaAllocatorBase< T, AR >::arena ( ) const
inlinenoexcept

◆ deallocate()

template<class T , class AR >
void amrex::ArenaAllocatorBase< T, AR >::deallocate ( T *  ptr,
std::size_t   
)
inline

◆ shrink_in_place()

template<class T , class AR >
T* amrex::ArenaAllocatorBase< T, AR >::shrink_in_place ( T *  p,
std::size_t  n 
)
inline

Member Data Documentation

◆ m_ar

template<class T , class AR >
AR amrex::ArenaAllocatorBase< T, AR >::m_ar {}
private

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