OpenFPM_pdata  1.1.0
Project that contain the implementation of distributed structures
 All Data Structures Namespaces Functions Variables Typedefs Enumerations Friends Pages
grid_key_dx_iterator_sub_bc< dim, stencil, warn > Class Template Reference

The same as grid_key_dx_iterator_sub_p but with periodic boundary. More...

Detailed Description

template<unsigned int dim, typename stencil = no_stencil, typename warn = print_warning_on_adjustment<dim>>
class grid_key_dx_iterator_sub_bc< dim, stencil, warn >

The same as grid_key_dx_iterator_sub_p but with periodic boundary.

In this case the boundaries are periodic

Definition at line 19 of file grid_key_dx_iterator_sub_bc.hpp.

#include <grid_key_dx_iterator_sub_bc.hpp>

+ Inheritance diagram for grid_key_dx_iterator_sub_bc< dim, stencil, warn >:

Public Member Functions

 grid_key_dx_iterator_sub_bc (const grid_key_dx_iterator_sub_bc &tmp)
 
 grid_key_dx_iterator_sub_bc (grid_key_dx_iterator_sub_bc &&tmp)
 
grid_key_dx_iterator_sub_bcoperator= (const grid_key_dx_iterator_sub_bc &tmp)
 
grid_key_dx_iterator_sub_bcoperator= (grid_key_dx_iterator_sub_bc &&tmp)
 
 grid_key_dx_iterator_sub_bc ()
 Constructor. More...
 
template<typename T >
 grid_key_dx_iterator_sub_bc (const grid_sm< dim, T > &g, const grid_key_dx< dim > &start, const grid_key_dx< dim > &stop, const size_t(&bc)[dim])
 Constructor. More...
 
template<typename T >
void Initialize (const grid_sm< dim, T > &g, const grid_key_dx< dim > &start, const grid_key_dx< dim > &stop, const size_t(&bc)[dim])
 Initialize the iterator. More...
 
grid_key_dx_iterator_sub_bc
< dim, stencil, warn > & 
operator++ ()
 Get the next element. More...
 
bool isNext ()
 Check if there is the next element. More...
 
const grid_key_dx< dim > get () const
 Return the actual grid key iterator. More...
 
void reset ()
 Reset the iterator (it restart from the beginning) More...
 
- Public Member Functions inherited from grid_key_dx_iterator_sub< dim, stencil, warn >
 grid_key_dx_iterator_sub ()
 Default constructor. More...
 
 grid_key_dx_iterator_sub (const grid_key_dx_iterator_sub< dim, stencil > &g_s_it)
 Constructor from another grid_key_dx_iterator_sub. More...
 
template<typename T >
 grid_key_dx_iterator_sub (const grid_sm< dim, T > &g, const grid_key_dx< dim > &start, const grid_key_dx< dim > &stop)
 Constructor require a grid grid<dim,T> More...
 
template<typename T >
 grid_key_dx_iterator_sub (const grid_sm< dim, T > &g, const grid_key_dx< dim > &start, const grid_key_dx< dim > &stop, const grid_key_dx< dim >(&stencil_pnt)[stencil::nsp])
 Constructor require a grid grid<dim,T> More...
 
 grid_key_dx_iterator_sub (const grid_key_dx< dim >(&stencil_pnt)[stencil::nsp])
 Constructor. More...
 
template<typename T >
 grid_key_dx_iterator_sub (const grid_sm< dim, T > &g, const size_t m)
 Constructor require a grid grid<dim,T> More...
 
template<typename T >
 grid_key_dx_iterator_sub (const grid_sm< dim, T > &g, const size_t(&start)[dim], const size_t(&stop)[dim])
 Constructor require a grid grid<dim,T> More...
 
grid_key_dx_iterator_sub< dim,
stencil, warn > & 
operator++ ()
 Get the next element. More...
 
grid_key_dx_iterator_sub< dim,
stencil, warn > & 
operator+= (int nsteps)
 increment the operator by more than one More...
 
bool isNext ()
 Check if there is the next element. More...
 
grid_key_dx< dim > get () const
 Return the actual grid key iterator. More...
 
void reinitialize (const grid_key_dx_iterator_sub< dim > &g_s_it)
 Reinitialize the iterator. More...
 
size_t getVolume ()
 Get the volume spanned by this sub-grid iterator. More...
 
void reset ()
 Reset the iterator (it restart from the beginning) More...
 
const grid_sm< dim, void > & getGridInfo () const
 Return the grid information related to this grid. More...
 
const grid_key_dx< dim > & getStart () const
 Starting point. More...
 
const grid_key_dx< dim > & getStop () const
 Stop point. More...
 
template<unsigned int tot_add>
void private_sum ()
 Sum a template constant. More...
 
void private_adjust (size_t tot_add)
 Sum a template constant. More...
 
- Public Member Functions inherited from grid_key_dx_iterator< dim, stencil >
 grid_key_dx_iterator ()
 Default constructor. More...
 
 grid_key_dx_iterator (const grid_key_dx_iterator< dim > &g_it)
 Constructor from a grid_key_dx_iterator<dim> More...
 
template<typename T >
 grid_key_dx_iterator (const grid_sm< dim, T > &g, const grid_key_dx< dim >(&stencil_pnt)[stencil::nsp])
 Constructor require a grid_sm<dim,T> More...
 
 grid_key_dx_iterator (const grid_key_dx< dim >(&stencil_pnt)[stencil::nsp])
 Constructor. More...
 
template<typename T >
 grid_key_dx_iterator (const grid_sm< dim, T > &g)
 Constructor require a grid_sm<dim,T> More...
 
grid_key_dx_iterator< dim > operator= (const grid_key_dx_iterator< dim > &key_it)
 Constructor from another grid_key_dx_iterator. More...
 
grid_key_dx_iterator< dim,
stencil > & 
operator++ ()
 Get the next element. More...
 
void set (int d, size_t sz)
 Set the dimension. More...
 
template<unsigned int id>
size_t getStencil () const
 Get the actual position. More...
 
bool isNext ()
 Check if there is the next element. More...
 
const grid_key_dx< dim > & get () const
 Get the actual key. More...
 
void reinitialize (const grid_key_dx_iterator< dim > &key)
 Reinitialize the grid_key_dx_iterator. More...
 
const grid_sm< dim, void > & getGridInfo () const
 Get the information about the grid. More...
 
void reset ()
 Reset the iterator (it restart from the beginning) More...
 
void calc_stencil_offset (const grid_key_dx< dim > &start_p)
 Calculate the stencil offset. More...
 
grid_key_dx< dim > getStart ()
 Return the starting point of the iteration. More...
 
grid_key_dx< dim > getStop ()
 Return the stop point of the iteration. More...
 
size_t getVolume ()
 Get the volume spanned by this sub-grid iterator. More...
 

Private Member Functions

bool check_invalid (const grid_key_dx< dim > &key, const size_t(&bc)[dim])
 Check if the position is valid with the actual boundary conditions. More...
 

Private Attributes

size_t bc [dim]
 Boundary conditions.
 
size_t act
 actual iterator box
 
std::vector< Box< dim, size_t > > boxes
 Here we have all the boxes that this iterator produce.
 

Additional Inherited Members

- Protected Attributes inherited from grid_key_dx_iterator< dim, stencil >
grid_key_dx< dim > gk
 Actual key.
 
stencil stl_code
 

Constructor & Destructor Documentation

template<unsigned int dim, typename stencil = no_stencil, typename warn = print_warning_on_adjustment<dim>>
grid_key_dx_iterator_sub_bc< dim, stencil, warn >::grid_key_dx_iterator_sub_bc ( )
inline

Constructor.

Definition at line 89 of file grid_key_dx_iterator_sub_bc.hpp.

template<unsigned int dim, typename stencil = no_stencil, typename warn = print_warning_on_adjustment<dim>>
template<typename T >
grid_key_dx_iterator_sub_bc< dim, stencil, warn >::grid_key_dx_iterator_sub_bc ( const grid_sm< dim, T > &  g,
const grid_key_dx< dim > &  start,
const grid_key_dx< dim > &  stop,
const size_t(&)  bc[dim] 
)
inline

Constructor.

Parameters
gGrid information
startstarting point
stopstop point
bcboundary conditions

Definition at line 104 of file grid_key_dx_iterator_sub_bc.hpp.

Member Function Documentation

template<unsigned int dim, typename stencil = no_stencil, typename warn = print_warning_on_adjustment<dim>>
bool grid_key_dx_iterator_sub_bc< dim, stencil, warn >::check_invalid ( const grid_key_dx< dim > &  key,
const size_t(&)  bc[dim] 
)
inlineprivate

Check if the position is valid with the actual boundary conditions.

Parameters
keykey to check

Definition at line 35 of file grid_key_dx_iterator_sub_bc.hpp.

template<unsigned int dim, typename stencil = no_stencil, typename warn = print_warning_on_adjustment<dim>>
const grid_key_dx<dim> grid_key_dx_iterator_sub_bc< dim, stencil, warn >::get ( ) const
inline

Return the actual grid key iterator.

Returns
the actual key

Definition at line 244 of file grid_key_dx_iterator_sub_bc.hpp.

template<unsigned int dim, typename stencil = no_stencil, typename warn = print_warning_on_adjustment<dim>>
template<typename T >
void grid_key_dx_iterator_sub_bc< dim, stencil, warn >::Initialize ( const grid_sm< dim, T > &  g,
const grid_key_dx< dim > &  start,
const grid_key_dx< dim > &  stop,
const size_t(&)  bc[dim] 
)
inline

Initialize the iterator.

Parameters
gGrid information
startstarting point
stopstop point
bcboundary conditions

Definition at line 118 of file grid_key_dx_iterator_sub_bc.hpp.

template<unsigned int dim, typename stencil = no_stencil, typename warn = print_warning_on_adjustment<dim>>
bool grid_key_dx_iterator_sub_bc< dim, stencil, warn >::isNext ( )
inline

Check if there is the next element.

Check if there is the next element

Returns
true if there is the next, false otherwise

Definition at line 234 of file grid_key_dx_iterator_sub_bc.hpp.

template<unsigned int dim, typename stencil = no_stencil, typename warn = print_warning_on_adjustment<dim>>
grid_key_dx_iterator_sub_bc<dim,stencil,warn>& grid_key_dx_iterator_sub_bc< dim, stencil, warn >::operator++ ( )
inline

Get the next element.

Get the next element

Returns
the next grid_key

Definition at line 209 of file grid_key_dx_iterator_sub_bc.hpp.

template<unsigned int dim, typename stencil = no_stencil, typename warn = print_warning_on_adjustment<dim>>
void grid_key_dx_iterator_sub_bc< dim, stencil, warn >::reset ( )
inline

Reset the iterator (it restart from the beginning)

Definition at line 252 of file grid_key_dx_iterator_sub_bc.hpp.


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