PLaSK library
Loading...
Searching...
No Matches
plask::ScaledFieldProviderImpl< DstPropertyT, SrcPropertyT, propertyType, SpaceT, ScaleT, VariadicTemplateTypesHolder< ExtraArgs... > > Struct Template Reference

#include <plask/provider/scaled_provider.hpp>

Inheritance diagram for plask::ScaledFieldProviderImpl< DstPropertyT, SrcPropertyT, propertyType, SpaceT, ScaleT, VariadicTemplateTypesHolder< ExtraArgs... > >:
[legend]
Collaboration diagram for plask::ScaledFieldProviderImpl< DstPropertyT, SrcPropertyT, propertyType, SpaceT, ScaleT, VariadicTemplateTypesHolder< ExtraArgs... > >:
[legend]

Public Types

typedef ProviderFor< DstPropertyT, SpaceT >::ProvidedType ProvidedType
 
- Public Types inherited from plask::ScaledProviderBase< ProviderFor< DstPropertyT, SpaceT >, ProviderFor< SrcPropertyT, SpaceT >, ScaleT >
typedef ProviderFor< SrcPropertyT, SpaceT > SourceType
 
typedef ProviderFor< DstPropertyT, SpaceT > DestinationType
 
typedef ScaleT ScaleType
 
- Public Types inherited from plask::ProviderFor< DstPropertyT, SpaceT >
typedef DstPropertyT PropertyTag
 
typedef SpaceT SpaceType
 

Public Member Functions

 ScaledFieldProviderImpl (double scale=1.)
 
virtual ProvidedType operator() (shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, ExtraArgs... extra_args, InterpolationMethod method=INTERPOLATION_DEFAULT) const
 
- Public Member Functions inherited from plask::ScaledProviderBase< ProviderFor< DstPropertyT, SpaceT >, ProviderFor< SrcPropertyT, SpaceT >, ScaleT >
 ScaledProviderBase (ScaleT scale=1.)
 Create the provider.
 
void set (ProviderFor< SrcPropertyT, SpaceT > *src, bool prv=false)
 Set source provider.
 
void set (std::unique_ptr< ProviderFor< SrcPropertyT, SpaceT > > &&src)
 Set source provider.
 
void reset ()
 Reset source provider.
 
ProviderFor< SrcPropertyT, SpaceT > * getSource () const
 Obtain source provider.
 
 ~ScaledProviderBase ()
 
void ensureHasProvider () const
 Throw exception if the providers set of this is empty.
 
- Public Member Functions inherited from plask::ProviderFor< DstPropertyT, SpaceT >
 ProviderFor (Args &&... params)
 Delegate all constructors to parent class.
 

Additional Inherited Members

- Public Attributes inherited from plask::ScaledProviderBase< ProviderFor< DstPropertyT, SpaceT >, ProviderFor< SrcPropertyT, SpaceT >, ScaleT >
ScaleT scale
 Scale for the provider value.
 
- Protected Attributes inherited from plask::ScaledProviderBase< ProviderFor< DstPropertyT, SpaceT >, ProviderFor< SrcPropertyT, SpaceT >, ScaleT >
ProviderFor< SrcPropertyT, SpaceT > * source
 Source provider.
 

Detailed Description

template<typename DstPropertyT, typename SrcPropertyT, PropertyType propertyType, typename SpaceT, typename ScaleT, typename... ExtraArgs>
struct plask::ScaledFieldProviderImpl< DstPropertyT, SrcPropertyT, propertyType, SpaceT, ScaleT, VariadicTemplateTypesHolder< ExtraArgs... > >

Definition at line 122 of file scaled_provider.hpp.

Member Typedef Documentation

◆ ProvidedType

template<typename DstPropertyT , typename SrcPropertyT , PropertyType propertyType, typename SpaceT , typename ScaleT , typename... ExtraArgs>
typedef ProviderFor<DstPropertyT,SpaceT>::ProvidedType plask::ScaledFieldProviderImpl< DstPropertyT, SrcPropertyT, propertyType, SpaceT, ScaleT, VariadicTemplateTypesHolder< ExtraArgs... > >::ProvidedType

Definition at line 127 of file scaled_provider.hpp.

Constructor & Destructor Documentation

◆ ScaledFieldProviderImpl()

template<typename DstPropertyT , typename SrcPropertyT , PropertyType propertyType, typename SpaceT , typename ScaleT , typename... ExtraArgs>
plask::ScaledFieldProviderImpl< DstPropertyT, SrcPropertyT, propertyType, SpaceT, ScaleT, VariadicTemplateTypesHolder< ExtraArgs... > >::ScaledFieldProviderImpl ( double  scale = 1.)
inline

Definition at line 125 of file scaled_provider.hpp.

Member Function Documentation

◆ operator()()

template<typename DstPropertyT , typename SrcPropertyT , PropertyType propertyType, typename SpaceT , typename ScaleT , typename... ExtraArgs>
virtual ProvidedType plask::ScaledFieldProviderImpl< DstPropertyT, SrcPropertyT, propertyType, SpaceT, ScaleT, VariadicTemplateTypesHolder< ExtraArgs... > >::operator() ( shared_ptr< const MeshD< SpaceT::DIM > >  dst_mesh,
ExtraArgs...  extra_args,
InterpolationMethod  method = INTERPOLATION_DEFAULT 
) const
inlinevirtual

Definition at line 129 of file scaled_provider.hpp.


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