8#ifndef SRC_AMR_GRID_DIST_AMR_KEY_ITERATOR_HPP_
9#define SRC_AMR_GRID_DIST_AMR_KEY_ITERATOR_HPP_
11#include "Vector/map_vector.hpp"
12#include "Grid/Iterators/grid_dist_id_iterator.hpp"
13#include "grid_dist_amr_key.hpp"
15template<
unsigned int dim,
typename device_gr
id,
typename device_sub_it,
typename it_type = gr
id_dist_iterator<dim,device_gr
id,device_sub_it,FREE>>
83 if (
a_it->isNext() ==
true)
openfpm::vector< it_type > & git
Array of grid iterators.
grid_dist_amr_key_iterator< dim, device_grid, device_sub_it, it_type > & operator++()
Get the next element.
~grid_dist_amr_key_iterator()
Destructor.
grid_key_dx< dim > getGKey()
Return the actual global grid position in the AMR struct in global coordinates.
grid_dist_amr_key_iterator(openfpm::vector< it_type > &git)
Constructor.
size_t g_c
iterator pointer
bool isNext()
Is there a next point.
size_t getLvl() const
Return the level at which we are.
void selectValidGrid()
from g_c increment g_c until you find a valid grid
grid_dist_amr_key< dim > get()
Return the actual AMR grid iterator point.
it_type * a_it
Actual distributed grid iterator.
Amr grid distributed key.
grid_key_dx is the key to access any element in the grid
__device__ __host__ index_type get(index_type i) const
Get the i index.
Implementation of 1-D std::vector like structure.