Finite Volume Solver  prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
Public Member Functions | Private Attributes | List of all members
fub::PolymorphicUnion< Rank > Class Template Reference

#include <Union.hpp>

Public Member Functions

 PolymorphicUnion (const std::vector< PolymorphicGeometry< Rank >> &geoms)
 
std::unique_ptr< Geometry< Rank > > Clone () const override
 Returns a copy of the concrete geometry as a pointer to the base class. More...
 
double ComputeDistanceTo (const std::array< double, Rank > &x) const override
 Computes the minimum distance between geometry and point x. More...
 

Private Attributes

std::vector< PolymorphicGeometry< Rank > > geoms_
 

Constructor & Destructor Documentation

◆ PolymorphicUnion()

template<std::size_t Rank>
fub::PolymorphicUnion< Rank >::PolymorphicUnion ( const std::vector< PolymorphicGeometry< Rank >> &  geoms)

Member Function Documentation

◆ Clone()

template<std::size_t Rank>
std::unique_ptr<Geometry<Rank> > fub::PolymorphicUnion< Rank >::Clone ( ) const
overridevirtual

Returns a copy of the concrete geometry as a pointer to the base class.

Implements fub::Geometry< Rank >.

◆ ComputeDistanceTo()

template<std::size_t Rank>
double fub::PolymorphicUnion< Rank >::ComputeDistanceTo ( const std::array< double, Rank > &  x) const
overridevirtual

Computes the minimum distance between geometry and point x.

Implements fub::Geometry< Rank >.

Member Data Documentation

◆ geoms_

template<std::size_t Rank>
std::vector<PolymorphicGeometry<Rank> > fub::PolymorphicUnion< Rank >::geoms_
private

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