concepts::Cloneable Class Referenceabstract

Cloneable interface. More...

#include <cloneable.hh>

Inheritance diagram for concepts::Cloneable:
concepts::BilinearForm< concepts::Real > concepts::BilinearForm< F > concepts::BilinearForm< F, typename Realtype< F >::type > concepts::BilinearForm< FX > concepts::BilinearForm< Real > concepts::BilinearForm< Real, Real > concepts::BilinearForm< F, G > concepts::ElementFormula< F, G > concepts::MappingEdge2d concepts::Operation< F > concepts::SharedJacobianAdj< dim > concepts::SharedJacobianDet concepts::ElementFormula< Cmplx > concepts::ElementFormula< Cmplx, concepts::Realtype< Cmplx >::type > concepts::ElementFormula< Cmplx, typename Realtype< Cmplx >::type > concepts::ElementFormula< Cmplx2d, concepts::Realtype< Cmplx2d >::type > concepts::ElementFormula< concepts::Mapping< F, dim >, typename Realtype< F >::type > concepts::ElementFormula< concepts::Mapping< Real, 2 >, typename Realtype< concepts::Mapping< Real, 2 > >::type > concepts::ElementFormula< concepts::Mapping< typename concepts::Realtype< F >::type, 2 >, typename Realtype< concepts::Mapping< typename concepts::Realtype< F >::type, 2 > >::type > concepts::ElementFormula< concepts::Mapping< typename concepts::Realtype< Real >::type, 2 >, typename Realtype< concepts::Mapping< typename concepts::Realtype< Real >::type, 2 > >::type > concepts::ElementFormula< concepts::Point, concepts::Realtype< concepts::Point >::type > concepts::ElementFormula< concepts::Point, typename Realtype< concepts::Point >::type > concepts::ElementFormula< concepts::Point< concepts::Real, 2 >, typename Realtype< concepts::Point< concepts::Real, 2 > >::type > concepts::ElementFormula< concepts::Point< F, 2 > > concepts::ElementFormula< concepts::Point< F, 2 >, G > concepts::ElementFormula< concepts::Point< F, 2 >, typename Realtype< concepts::Point< F, 2 > >::type > concepts::ElementFormula< concepts::Point< F, 3 >, typename Realtype< concepts::Point< F, 3 > >::type > concepts::ElementFormula< concepts::Point< F, dim *dim >, typename Realtype< F >::type > concepts::ElementFormula< concepts::Point< F, dim >, typename concepts::Realtype< F >::type > concepts::ElementFormula< concepts::Point< F, DIM >, typename Realtype< F >::type > concepts::ElementFormula< concepts::Point< Real, 2 >, typename Realtype< concepts::Point< Real, 2 > >::type > concepts::ElementFormula< concepts::Point< Real, 3 >, typename Realtype< concepts::Point< Real, 3 > >::type > concepts::ElementFormula< concepts::Point< Real, dim > > concepts::ElementFormula< concepts::Real > concepts::ElementFormula< concepts::Real, typename Realtype< concepts::Real >::type > concepts::ElementFormula< F > concepts::ElementFormula< F, concepts::Realtype< F >::type > concepts::ElementFormula< F, typename concepts::Realtype< F >::type > concepts::ElementFormula< F, typename Realtype< F >::type > concepts::ElementFormula< G, H > concepts::ElementFormula< GeneralMapping< Cmplx, dim >::Type > concepts::ElementFormula< H, concepts::Realtype< H >::type > concepts::ElementFormula< H, G > concepts::ElementFormula< Mapping< Cmplx, dim >, typename Realtype< Cmplx >::type > concepts::ElementFormula< Mapping< F, 2 >, G > concepts::ElementFormula< Mapping< F, dim >, typename Realtype< F >::type > concepts::ElementFormula< Point< F, 2 > > concepts::ElementFormula< Point< F, dim >, G > concepts::ElementFormula< Point< F, dim >, typename Realtype< F >::type > concepts::ElementFormula< Point< H, dim >, concepts::Realtype< Point< H, dim > >::type > concepts::ElementFormula< Point< Real, dim >, Real > concepts::ElementFormula< Point< Real, dim >, typename Realtype< Real >::type > concepts::ElementFormula< Real > concepts::ElementFormula< Real, concepts::Realtype< Real >::type > concepts::ElementFormula< Real, Real > concepts::ElementFormula< Real, typename Realtype< Real >::type > concepts::ElementFormula< Real2d > concepts::ElementFormula< Real2d, concepts::Realtype< Real2d >::type > concepts::ElementFormula< Real2d, typename Realtype< Real2d >::type > concepts::ElementFormula< Real3d > concepts::ElementFormula< typename Datatype< F >::type, typename Realtype< F >::type > concepts::ElementFormula< typename Datatype< F >::type, typename Realtype< typename Datatype< F >::type >::type > hp2D::MaxwellSharedData hp2D::PolyEdgeRule hp3D::MaxwellSharedData

Public Member Functions

virtual Cloneableclone () const =0
 Virtual constructor. More...
 
virtual ~Cloneable ()
 

Detailed Description

Cloneable interface.

A class inheriting from Cloneable must implement clone and has then a virtual constructor (cf. Stroustrup p. 424).

Author
Philipp Frauenfelder, 2004

Definition at line 16 of file cloneable.hh.

Constructor & Destructor Documentation

◆ ~Cloneable()

virtual concepts::Cloneable::~Cloneable ( )
inlinevirtual

Definition at line 22 of file cloneable.hh.

Member Function Documentation

◆ clone()

virtual Cloneable* concepts::Cloneable::clone ( ) const
pure virtual

Virtual constructor.

Returns a pointer to a copy of itself. The caller is responsible to destroy this copy.

Implemented in concepts::BilinearForm< F, G >, hp2D::PolyEdgeRule, concepts::Operation< F >, concepts::MappingEdge2d, concepts::ElementFormulaVectorBase< F, G, H, I >, concepts::PiecewiseFormulaBase< F >, concepts::ElementFormula< F, G >, concepts::ExplicitResidual< F >, concepts::LocalEstimator< F >, concepts::FormulaIncPlaneWaveSource, concepts::ComposeFormulaVecEntry< F, DIM, G >, concepts::ComposeFormulaMatVec< F, DIM, G >, concepts::FormulaNormalOuterSP2D< F >, concepts::FrmE_PMLTransformation< dim >, concepts::FormulaPMLHamburger, concepts::FormulaPMLCartNew, concepts::FormulaPMLRadia, concepts::FormulaPMLBoxRestriction< F, G >, concepts::FormulaPMLCart, concepts::FormulaPMLEdgeRadia, concepts::SourceFunctionF0_y, concepts::SourceFunctionF0_x, concepts::FrmE_ScalarProductNormalEdge2d< F >, concepts::ElementFormulaRotate2D< F >, concepts::ElementFormulaBoundary, concepts::ElementFormulaCompose< F, G, H >, concepts::ElementFormulaLiCo< F, G, H, J >, concepts::BilinearF_W< F, H, J, G >, concepts::BilinearF_Sum< F, H, J, G >, concepts::BilinearFormContainer< F, G >, concepts::BilinearFormLiCo< F, G >, linearFEM::Identity2d, linearFEM::Laplace2d, linearFEM::CIdentity1d, linearFEM::Identity1d, linearFEM::Laplace1d, linDG3D::LaplaceVolBF, linDG3D::Identity, linDG2D::LaplaceStabBf, linDG2D::LaplaceFluxBf, linDG2D::LaplaceVolBf, linDG2D::IdentityBf, linDG1D::BoundaryIntStab, linDG1D::BoundaryInt, hp3D::ElementFormulaVectorOnTrace< dim, F, G >, hp3D::RotRot, hp3D::MaxwellSharedData, hp3D::FormulaFromWeight< Weight >, hp3D::DivDiv< Weight >, hp3D::Advection< F >, hp3D::Identity< F >, hp3D::Laplace< F >, hp3D::BilinearFormTwoPartDeriv< F >, hp3D::LinearElasticity< F >, hp2Dedge::EdgeIdentity, hp2Dedge::Rotuv, hp2Dedge::RotRot< F >, hp2Dedge::IdentityMatrix< F >, hp2Dedge::Identity< F >, hp2Dedge::GraduvMatrix< F >, hp2Dedge::Graduv< F >, concepts::DirichletElementFormula< F, G >, hp2D::RotRot, hp2D::MaxwellSharedData, hp2D::FormulaFromWeight< Weight >, hp2D::ElementFormulaSignNormalVector, hp2D::ElementFormulaEdgeJump< F >, hp2D::ElementFormulaEdgeMean< F >, hp2D::ElementFormulaInterpGradN< F, 2 >, hp2D::ElementFormulaInterpGrad< F, 2 >, hp2D::H1Extension< F >, hp2D::PolyEdgeMinNeighMaxChild, hp2D::PolyEdgeMin, hp2D::PolyEdgeMax, hp2D::DivDiv< Weight >, hp2D::BilinearFormTwoPartDeriv< F >, hp2D::BilinearFormOnePartDeriv< F >, hp2D::LaplaceMatrix< F >, hp2D::Laplace< F >, hp2D::Identity< F >, hp2D::Advection< F >, hp1D::ElementFormulaInterpGrad< F >, hp1D::Mean2Jump1< F >, hp1D::Jump1Jump1< F >, hp1D::BiLaplace< F >, hp1D::IdentityParallel< F >, hp1D::Identity< F >, hp1D::Laplace< F >, concepts::SharedJacobianAdj< dim >, concepts::SharedJacobianDet, concepts::FrmE_NormalVector3d, concepts::FrmE_TangentialVector, concepts::FrmE_NormalVector, concepts::CurvatureElementFormula, concepts::PiecewiseFormulaCombine< F, G, H, I >, concepts::PiecewiseFormulaFun< F, G >, concepts::OpRecipr< F >, concepts::OpAdd< F >, concepts::OpMult< F >, concepts::PiecewiseElementFormula< F, G >, concepts::PiecewiseFormula< F >, concepts::PiecewiseConstDynArrayFormula< F >, concepts::PiecewiseConstFormula< F >, concepts::PiecewiseFormula0< F >, concepts::MappingQuadEdge2d, concepts::MappingParallelEdge2d, concepts::ParabelMappingEdge2d, concepts::EllipseMappingEdge2d, concepts::CircleMappingEdge2d, concepts::MappingStraightEdge2d, concepts::InverseMappingEdge2d, concepts::PartMappingEdge2d, concepts::PiecewiseFormulaVector< 1, F, G, H >, concepts::PiecewiseFormulaVector< dim, F, G, H >, concepts::ElementFormulaVector< 1, F, G, H >, concepts::ElementFormulaVector< dim, F, G, H >, concepts::VectorElementFormulaBase< F, dim, G >, concepts::MatrixElementFormula< F, dim, G >, concepts::FrmE_Sum< F, H, J, G >, concepts::FrmE_Product< F, H, J, G >, concepts::FrmE_Trace< dim, F, G >, concepts::FrmE_PointsToMapping< 2, F, G >, concepts::FrmE_PointToMapping< dim, F, G >, concepts::FrmE_Inverse< F, G >, concepts::FrmE_Conjugate< F, G >, concepts::FrmE_Component_Matrix< F, G, H >, concepts::FrmE_Component< F, G, H >, concepts::ElementFormulaContainer< F, G >, estimator::KeysInfo< F >, estimator::PolynomialDegrees< dim >, hp2D::ImplicitEquilibratedA0< F >, hp2D::LocalFluxes, hp2D::Fluxes, hp2D::ExplicitResidual2D< F >, hp2D::ExplicitResidual2D< F >::EdgeWeight, hp2D::ExplicitResidual2D< F >::Distance, estimator::LocalProjections_P< dim, F, H >, estimator::LocalProjections_S< F, H >, constraints::ConstraintsList< F >, bem::AdaptLaplaceSL01< F >, bem::AdaptLaplaceDL01< F >, bem::AdaptLaplaceDL00< F >, bem::ArbKrnl000< F, K >, bem::Identity< F >, bem::LaplaceHyp< F >, bem::LaplacePLD< F >, bem::LaplaceDL< F >, bem::LaplaceSL< F >, concepts::FormulaPMLRadia, concepts::FormulaPMLBoxRestriction< F, G >, concepts::FormulaPMLCart, concepts::FormulaIncPlaneWaveSource, concepts::ComposeFormulaVecEntry< F, DIM, G >, concepts::ComposeFormulaMatVec< F, DIM, G >, concepts::FormulaNormalOuterSP2D< F >, aglowav2::WavIdentity< F >, and aglowav2::AglowavBF00< F >.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich