ug4
ug::Provider< TClass > Class Template Reference

Provider, holding a single instance of an object. More...

#include <provider.h>

Public Types

typedef TClass Type
 type of provided object More...
 

Static Public Member Functions

static TClass & get ()
 returns a singleton based on the identifier More...
 

Detailed Description

template<typename TClass>
class ug::Provider< TClass >

Provider, holding a single instance of an object.

This class is used to wrap an object into a singleton-like provider, such that construction computations is avoided, if the object is used several times.

Member Typedef Documentation

◆ Type

template<typename TClass >
typedef TClass ug::Provider< TClass >::Type

type of provided object

Member Function Documentation

◆ get()

template<typename TClass >
static TClass& ug::Provider< TClass >::get ( )
inlinestatic

returns a singleton based on the identifier

Referenced by ug::ElementSideRayIntersectionWrapper< TRefElem, 2, 2 >::apply(), ug::ElementSideRayIntersectionWrapper< TRefElem, 3, 3 >::apply(), ug::SCVFofSCVRayIntersectionWrapper< 2, 2 >::apply(), ug::GetNodeNextToCut(), ug::LagrangeLSFS< ReferenceEdge, TOrder >::LagrangeLSFS(), ug::LagrangeLSFS< ReferenceTriangle, TOrder >::LagrangeLSFS(), ug::LagrangeLSFS< ReferenceQuadrilateral, TOrder >::LagrangeLSFS(), ug::LagrangeLSFS< ReferenceTetrahedron, TOrder >::LagrangeLSFS(), ug::LagrangeLSFS< ReferencePrism, TOrder >::LagrangeLSFS(), ug::LagrangeLSFS< ReferencePyramid, TOrder >::LagrangeLSFS(), ug::LagrangeLSFS< ReferenceHexahedron, TOrder >::LagrangeLSFS(), ug::LagrangeLSFS< ReferenceOctahedron, TOrder >::LagrangeLSFS(), ug::MiniBubbleLDS< TRefElem >::MiniBubbleLDS(), ug::NedelecLDS< TRefElem >::NedelecLDS(), ug::PiecewiseConstantLSFS< TRefElem >::PiecewiseConstantLSFS(), ug::FlexLagrangeLSFS< ReferenceEdge >::set_order(), ug::FlexLagrangeLSFS< ReferenceTriangle >::set_order(), ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::set_order(), ug::FlexLagrangeLSFS< ReferenceTetrahedron >::set_order(), ug::FlexLagrangeLSFS< ReferencePrism >::set_order(), ug::FlexLagrangeLSFS< ReferenceHexahedron >::set_order(), ug::ConvectionShapesLinearProfileSkewedUpwind< TDim >::update(), ug::VTKOutput< TDim >::write_cell_data_elementwise(), ug::VTKOutput< TDim >::write_cell_values_elementwise(), and ug::VTKOutput< TDim >::write_nodal_data_elementwise().


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