PLaSK library
|
This file contains templates of base classes for mesh's boundaries. More...
#include "../utils/iterators.hpp"
#include "../utils/xml/reader.hpp"
#include "../memory.hpp"
#include "../log/log.hpp"
#include "../exceptions.hpp"
#include "../geometry/space.hpp"
#include <vector>
#include <set>
Go to the source code of this file.
Classes | |
struct | plask::BoundaryNodeSetImpl |
Base class for boundaries logic. More... | |
struct | plask::BoundaryNodeSetWithMeshImpl< MeshType > |
Template of base class for boundaries of mesh with given type which store reference to mesh. More... | |
struct | plask::BoundaryNodeSetWithMeshImpl< MeshType >::IteratorWithMeshImpl |
Base class for boundary iterator implementation which contains reference to boundary. More... | |
struct | plask::BoundaryNodeSet |
Holds BoundaryNodeSetImpl and delegate all calls to it. More... | |
struct | plask::EmptyBoundaryImpl |
Implementation of empty boundary logic. More... | |
struct | plask::EmptyBoundaryImpl::IteratorImpl |
struct | plask::StdSetBoundaryImpl |
Implementation of boundary logic which holds a set of node indices in std::set. More... | |
struct | plask::Boundary< MeshT > |
Instance of this class represents predicate which chooses a subset of points (strictly: indices of points) from a mesh. More... | |
struct | plask::BoundaryOp< MeshType, OpNodeSetImplT > |
Boundary which represents union/intersection/difference (depending on OpNodeSetImplT) of boundaries. More... | |
struct | plask::UnionBoundarySetImpl |
This logic holds a list of boundaries and represent a set of indices which is an union of sets from this boundaries. More... | |
struct | plask::UnionBoundarySetImpl::IteratorImpl |
struct | plask::UnionBoundarySetImpl::IteratorImpl::IteratorWithEnd |
struct | plask::DiffBoundarySetImpl |
This logic holds two boundaries and represent a set difference of them. More... | |
struct | plask::DiffBoundarySetImpl::IteratorImpl |
struct | plask::DiffBoundarySetImpl::IteratorImpl::IteratorWithEnd |
struct | plask::IntersectionBoundarySetImpl |
This logic holds two boundaries and represent a set intersection of them. More... | |
struct | plask::IntersectionBoundarySetImpl::IteratorImpl |
struct | plask::IntersectionBoundarySetImpl::IteratorImpl::IteratorWithEnd |
struct | plask::PredicateBoundaryImpl< MeshT, Predicate > |
Boundary logic implementation which represents set of indexes which fulfill predicate. More... | |
struct | plask::PredicateBoundaryImpl< MeshT, Predicate >::PredicateIteratorImpl |
Namespaces | |
namespace | plask |
Patterson quadrature for complex function along specified line. | |
Typedefs | |
template<typename MeshType > | |
using | plask::UnionBoundary = BoundaryOp< MeshType, UnionBoundarySetImpl > |
Boundary which represents union of boundaries. | |
template<typename MeshType > | |
using | plask::DiffBoundary = BoundaryOp< MeshType, DiffBoundarySetImpl > |
Boundary which represents difference of boundaries. | |
template<typename MeshType > | |
using | plask::IntersectionBoundary = BoundaryOp< MeshType, IntersectionBoundarySetImpl > |
Boundary which represents intersection of boundaries. | |
Functions | |
BoundaryNodeSet | plask::operator+ (BoundaryNodeSet left, BoundaryNodeSet right) |
Return union of left and right sets of nodes. | |
BoundaryNodeSet | plask::operator| (BoundaryNodeSet left, BoundaryNodeSet right) |
BoundaryNodeSet | plask::operator* (BoundaryNodeSet left, BoundaryNodeSet right) |
Return intersection of left and right sets of nodes. | |
BoundaryNodeSet | plask::operator& (BoundaryNodeSet left, BoundaryNodeSet right) |
BoundaryNodeSet | plask::operator- (BoundaryNodeSet left, BoundaryNodeSet right) |
Return difference of left and right sets of nodes. | |
template<typename MeshType > | |
Boundary< MeshType > | plask::operator+ (Boundary< MeshType > left, Boundary< MeshType > right) |
Return boundary which produces the union of sets given by left and right boundaries. | |
template<typename MeshType > | |
Boundary< MeshType > | plask::operator| (Boundary< MeshType > left, Boundary< MeshType > right) |
template<typename MeshType > | |
Boundary< MeshType > | plask::operator* (Boundary< MeshType > left, Boundary< MeshType > right) |
Return boundary which produces the intersection of sets given by left and right boundaries. | |
template<typename MeshType > | |
Boundary< MeshType > | plask::operator& (Boundary< MeshType > left, Boundary< MeshType > right) |
template<typename MeshType > | |
Boundary< MeshType > | plask::operator- (Boundary< MeshType > left, Boundary< MeshType > right) |
Return boundary which produces the difference of sets given by left and right boundaries. | |
template<typename MeshType > | |
MeshType::Boundary | plask::makeEmptyBoundary () |
Helper to create empty boundary. | |
template<typename Boundary , typename Predicate > | |
Boundary | plask::makePredicateBoundary (Predicate predicate) |
Helper to create boundary which represents set of indexes which fulfill given predicate . | |
template<typename Boundary > | |
Boundary | plask::parseBoundary (const std::string &PLASK_UNUSED(boundary_desc), Manager &PLASK_UNUSED(manager)) |
Parse boundary of given type from string. | |
template<typename Boundary > | |
Boundary | plask::parseBoundary (XMLReader &PLASK_UNUSED(boundary_desc), Manager &PLASK_UNUSED(manager)) |
Parse boundary from XML reader. | |
This file contains templates of base classes for mesh's boundaries.
Definition in file boundary.hpp.