Flow123d  release_3.0.0-1073-g8f35d56
Public Member Functions | Private Member Functions | Private Attributes | List of all members
DHNeighbSide Class Reference

Class allows to iterate over sides of neighbour. More...

#include <dh_cell_accessor.hh>

Collaboration diagram for DHNeighbSide:
Collaboration graph
[legend]

Public Member Functions

 DHNeighbSide ()
 Default invalid accessor. More...
 
 DHNeighbSide (const DHCellAccessor &dh_cell, unsigned int neighb_idx, unsigned int max_idx)
 Valid accessor allows iterate over neighbor sides. More...
 
bool is_valid () const
 Check validity of accessor (see default constructor of DHCellAccessor) More...
 
void inc ()
 Iterates to next neighbour side. More...
 
bool operator== (const DHNeighbSide &other)
 Comparison of accessors. More...
 
 operator DHCellSide () const
 This class is implicitly convertible to DHCellSide. More...
 

Private Member Functions

bool not_local_cell ()
 Check if cell side of neighbour is not local (allow skip invalid accessors). More...
 

Private Attributes

DHCellAccessor dh_cell_
 Appropriate cell accessor. More...
 
unsigned int neighb_idx_
 Index into neigh_vb array. More...
 
unsigned int max_idx_
 Maximal index into neigh_vb array. More...
 

Detailed Description

Class allows to iterate over sides of neighbour.

Class returns only local cells (owns + ghosts), non-local cells are skipped.

Iterator is defined by:

Note: Class is used only internally. Appropriate range method (DHCellAccessor::neighb_sides) uses convertible iterators and returns corresponding DHCellSide.

Definition at line 293 of file dh_cell_accessor.hh.

Constructor & Destructor Documentation

DHNeighbSide::DHNeighbSide ( )
inline

Default invalid accessor.

Definition at line 296 of file dh_cell_accessor.hh.

DHNeighbSide::DHNeighbSide ( const DHCellAccessor dh_cell,
unsigned int  neighb_idx,
unsigned int  max_idx 
)
inline

Valid accessor allows iterate over neighbor sides.

Parameters
dh_cellElement of lower dim.
neighb_idxIndex of neighbour.
max_idxMaximal index of neighbour, method inc() doesn't set neighb_idx_ on higher value.

Definition at line 305 of file dh_cell_accessor.hh.

Member Function Documentation

void DHNeighbSide::inc ( )
inline

Iterates to next neighbour side.

Definition at line 320 of file dh_cell_accessor.hh.

bool DHNeighbSide::is_valid ( ) const
inline

Check validity of accessor (see default constructor of DHCellAccessor)

Definition at line 315 of file dh_cell_accessor.hh.

bool DHNeighbSide::not_local_cell ( )
inlineprivate

Check if cell side of neighbour is not local (allow skip invalid accessors).

Definition at line 342 of file dh_cell_accessor.hh.

DHNeighbSide::operator DHCellSide ( ) const
inline

This class is implicitly convertible to DHCellSide.

Definition at line 334 of file dh_cell_accessor.hh.

bool DHNeighbSide::operator== ( const DHNeighbSide other)
inline

Comparison of accessors.

Definition at line 329 of file dh_cell_accessor.hh.

Member Data Documentation

DHCellAccessor DHNeighbSide::dh_cell_
private

Appropriate cell accessor.

Definition at line 348 of file dh_cell_accessor.hh.

unsigned int DHNeighbSide::max_idx_
private

Maximal index into neigh_vb array.

Definition at line 352 of file dh_cell_accessor.hh.

unsigned int DHNeighbSide::neighb_idx_
private

Index into neigh_vb array.

Definition at line 350 of file dh_cell_accessor.hh.


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