PLaSK library
Loading...
Searching...
No Matches
plask::BoundaryNodeSetImpl Struct Referenceabstract

Base class for boundaries logic. More...

#include <plask/mesh/boundary.hpp>

Inheritance diagram for plask::BoundaryNodeSetImpl:
[legend]

Public Types

typedef PolymorphicForwardIteratorImpl< std::size_t, std::size_t > IteratorImpl
 Base class for boundary iterator implementation.
 
typedef PolymorphicForwardIterator< IteratorImplIterator
 Boundary iterator type.
 
typedef Iterator const_iterator
 iterator over indexes of mesh
 
typedef const_iterator iterator
 

Public Member Functions

virtual ~BoundaryNodeSetImpl ()
 
virtual bool contains (std::size_t mesh_index) const =0
 Check if boundary contains point with given index.
 
virtual const_iterator begin () const =0
 Get begin iterator over boundary points.
 
virtual const_iterator end () const =0
 Get end iterator over boundary points.
 
virtual bool empty () const
 Check if this represents empty set of indexes.
 
virtual std::size_t size () const
 Get number of points in this boundary.
 

Detailed Description

Base class for boundaries logic.

Reperesnt polymorphic set of mesh indexes.

See also
Boundaries

Definition at line 101 of file boundary.hpp.

Member Typedef Documentation

◆ const_iterator

iterator over indexes of mesh

Definition at line 110 of file boundary.hpp.

◆ Iterator

◆ iterator

◆ IteratorImpl

Base class for boundary iterator implementation.

Definition at line 104 of file boundary.hpp.

Constructor & Destructor Documentation

◆ ~BoundaryNodeSetImpl()

virtual plask::BoundaryNodeSetImpl::~BoundaryNodeSetImpl ( )
inlinevirtual

Definition at line 113 of file boundary.hpp.

Member Function Documentation

◆ begin()

◆ contains()

virtual bool plask::BoundaryNodeSetImpl::contains ( std::size_t  mesh_index) const
pure virtual

◆ empty()

virtual bool plask::BoundaryNodeSetImpl::empty ( ) const
inlinevirtual

Check if this represents empty set of indexes.

Returns
true only if this represents empty set of indexes

Reimplemented in plask::EmptyBoundaryImpl, plask::StdSetBoundaryImpl, plask::UnionBoundarySetImpl, plask::DiffBoundarySetImpl, and plask::IntersectionBoundarySetImpl.

Definition at line 138 of file boundary.hpp.

◆ end()

◆ size()

virtual std::size_t plask::BoundaryNodeSetImpl::size ( ) const
inlinevirtual

Get number of points in this boundary.

Default implementation just use std::distance(begin(), end()) which iterates over all indexes and can be slow, so this is often reimplemented in subclasses.

Returns
number of points in this boundary

Reimplemented in plask::EmptyBoundaryImpl, and plask::StdSetBoundaryImpl.

Definition at line 146 of file boundary.hpp.


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