1 #ifndef AMREX_ARRAYOFSTRUCTS_H_
2 #define AMREX_ARRAYOFSTRUCTS_H_
3 #include <AMReX_Config.H>
11 template <
typename T_ParticleType,
16 using RealType =
typename ParticleType::RealType;
62 resize(nrp + num_neighbors);
75 [[nodiscard]] std::pair<int,int>
dataShape ()
const {
98 template<
class InputIt >
115 #if __cplusplus < 201703L
116 template <
typename ParticleType,
117 template<
class>
class Allocator>
Definition: AMReX_ArrayOfStructs.H:13
typename ParticleVector::const_iterator ConstIterator
Definition: AMReX_ArrayOfStructs.H:21
ParticleVector::const_iterator begin() const
Definition: AMReX_ArrayOfStructs.H:102
bool empty()
Definition: AMReX_ArrayOfStructs.H:81
int numNeighborParticles() const
Returns the number of neighbor particles (excluding reals)
Definition: AMReX_ArrayOfStructs.H:50
int m_num_neighbor_particles
Definition: AMReX_ArrayOfStructs.H:109
bool empty() const
Definition: AMReX_ArrayOfStructs.H:67
ParticleVector::const_iterator cbegin() const
Definition: AMReX_ArrayOfStructs.H:103
void setNumNeighbors(int num_neighbors)
Definition: AMReX_ArrayOfStructs.H:58
ParticleType & back()
Definition: AMReX_ArrayOfStructs.H:84
T_ParticleType ParticleType
Definition: AMReX_ArrayOfStructs.H:15
typename ParticleType::RealType RealType
Definition: AMReX_ArrayOfStructs.H:16
static constexpr int SizeInReal
Definition: AMReX_ArrayOfStructs.H:23
ParticleType * data()
Definition: AMReX_ArrayOfStructs.H:70
void push_back(const ParticleType &p)
Definition: AMReX_ArrayOfStructs.H:79
int numTotalParticles() const
Returns the total number of particles (real and neighbor)
Definition: AMReX_ArrayOfStructs.H:56
ParticleVector::iterator begin()
Definition: AMReX_ArrayOfStructs.H:101
ParticleVector::iterator end()
Definition: AMReX_ArrayOfStructs.H:105
ParticleVector::const_iterator cend() const
Definition: AMReX_ArrayOfStructs.H:107
int numParticles() const
Returns the number of real particles (excluding neighbors)
Definition: AMReX_ArrayOfStructs.H:38
void pop_back()
Definition: AMReX_ArrayOfStructs.H:80
ParticleVector::const_iterator end() const
Definition: AMReX_ArrayOfStructs.H:106
const ParticleType & back() const
Definition: AMReX_ArrayOfStructs.H:83
ParticleVector m_data
Definition: AMReX_ArrayOfStructs.H:112
ParticleType * dataPtr()
Definition: AMReX_ArrayOfStructs.H:73
void insert(Iterator pos, InputIt first, InputIt last)
Definition: AMReX_ArrayOfStructs.H:99
typename ParticleVector::iterator Iterator
Definition: AMReX_ArrayOfStructs.H:20
int numRealParticles() const
Returns the number of real particles (excluding neighbors)
Definition: AMReX_ArrayOfStructs.H:44
void resize(size_t count)
Definition: AMReX_ArrayOfStructs.H:94
const ParticleType * dataPtr() const
Definition: AMReX_ArrayOfStructs.H:72
const ParticleType * data() const
Definition: AMReX_ArrayOfStructs.H:69
int getNumNeighbors() const
Definition: AMReX_ArrayOfStructs.H:65
Iterator erase(ConstIterator first, ConstIterator second)
Definition: AMReX_ArrayOfStructs.H:96
const ParticleVector & operator()() const
Definition: AMReX_ArrayOfStructs.H:25
const ParticleType & operator[](int i) const
Definition: AMReX_ArrayOfStructs.H:86
std::size_t size() const
Returns the total number of particles (real and neighbor)
Definition: AMReX_ArrayOfStructs.H:32
void swap(ArrayOfStructs &other) noexcept
Definition: AMReX_ArrayOfStructs.H:89
std::pair< int, int > dataShape() const
Definition: AMReX_ArrayOfStructs.H:75
Definition: AMReX_PODVector.H:246
const_iterator cbegin() const noexcept
Definition: AMReX_PODVector.H:617
iterator insert(const_iterator a_pos, const T &a_item)
Definition: AMReX_PODVector.H:426
iterator erase(const_iterator a_pos)
Definition: AMReX_PODVector.H:405
size_type size() const noexcept
Definition: AMReX_PODVector.H:575
void swap(PODVector< T, Allocator > &a_vector) noexcept
Definition: AMReX_PODVector.H:677
T & back() noexcept
Definition: AMReX_PODVector.H:589
void pop_back() noexcept
Definition: AMReX_PODVector.H:571
T * data() noexcept
Definition: AMReX_PODVector.H:593
T * iterator
Definition: AMReX_PODVector.H:262
iterator begin() noexcept
Definition: AMReX_PODVector.H:601
iterator end() noexcept
Definition: AMReX_PODVector.H:605
const_iterator cend() const noexcept
Definition: AMReX_PODVector.H:619
const T * const_iterator
Definition: AMReX_PODVector.H:267
void resize(size_type a_new_size)
Definition: AMReX_PODVector.H:625
bool empty() const noexcept
Definition: AMReX_PODVector.H:579
void push_back(const T &a_value)
Definition: AMReX_PODVector.H:556
Definition: AMReX_Amr.cpp:49
amrex::ArenaAllocator< T > DefaultAllocator
Definition: AMReX_GpuAllocators.H:194
double second() noexcept
Definition: AMReX_Utility.cpp:922