PLaSK library
Loading...
Searching...
No Matches
plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > > Struct Template Reference

Specialization which implements provider class which provides multiple values in mesh points and uses interpolation. More...

#include <plask/provider/providerfor.hpp>

Inheritance diagram for plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >:
[legend]
Collaboration diagram for plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >:
[legend]

Classes

struct  ConstProviderType
 Return same value in all points. More...
 
struct  Delegate
 Implementation of field provider class which delegates all operator() calls to external functor. More...
 
struct  Transform
 Provider that uses mesh transformation and has a received for different mesh type. More...
 
struct  WithValue
 Template for implementation of field provider class which holds vector of values and mesh inside. More...
 

Public Types

typedef PropertyT PropertyTag
 
typedef SpaceT SpaceType
 
typedef PropertyT::EnumType EnumType
 
typedef PropertyAt< PropertyT, SpaceT >::ValueType ValueType
 
typedef MultiFieldProvider< ValueType, SpaceT, EnumType >::ProvidedType ProvidedType
 Type of provided value.
 
- Public Types inherited from plask::MultiFieldProvider< PropertyAt< PropertyT, SpaceT >::ValueType, SpaceT, PropertyT::EnumType, _ExtraParams... >
typedef LazyData< PropertyAt< PropertyT, SpaceT >::ValueType > ProvidedType
 Type of value provided by this (returned by operator()).
 
typedef PropertyT::EnumType EnumType
 Type of value number.
 

Public Member Functions

const charname () const override
 
- Public Member Functions inherited from plask::MultiFieldProvider< PropertyAt< PropertyT, SpaceT >::ValueType, SpaceT, PropertyT::EnumType, _ExtraParams... >
virtual size_t size () const=0
 Get number of values.
 
virtual ProvidedType operator() (PropertyT::EnumType num, shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, ExtraArgs... extra_args, InterpolationMethod method) const=0
 
ProvidedType operator() (PropertyT::EnumType num, shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, ExtraArgs... extra_args) const
 Call this->operator()(dst_mesh, DEFAULT).
 
ProvidedType operator() (PropertyT::EnumType num, shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, std::tuple< ExtraArgs... > &&extra_args, InterpolationMethod method=INTERPOLATION_DEFAULT) const
 
ProvidedType operator() (shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, ExtraArgs... extra_args, InterpolationMethod method) const
 Call this->operator()(0, dst_mesh, method).
 
ProvidedType operator() (shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, ExtraArgs... extra_args) const
 Call this->operator()(0, dst_mesh, DEFAULT).
 
ProvidedType operator() (shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, std::tuple< ExtraArgs... > &&extra_args, InterpolationMethod method=INTERPOLATION_DEFAULT) const
 Call this->operator()(0, dst_mesh, method).
 
- Public Member Functions inherited from plask::Provider
Provideroperator= (const Provider &)=delete
 
 Provider (const Provider &)=delete
 
 Provider ()=default
 
virtual ~Provider ()
 Call onDisconnect for all listeners in listeners set.
 
void fireChanged ()
 Call onChange for all listeners.
 

Static Public Attributes

static constexpr const charNAME = PropertyT::NAME
 
- Static Public Attributes inherited from plask::MultiFieldProvider< PropertyAt< PropertyT, SpaceT >::ValueType, SpaceT, PropertyT::EnumType, _ExtraParams... >
static constexpr const char * NAME
 
- Static Public Attributes inherited from plask::Provider
static constexpr const charNAME = "undefined"
 

Additional Inherited Members

- Public Attributes inherited from plask::Provider
boost::signals2::signal< void(Provider &, bool)> changed
 Signal called when providers value has been changed or provider is being deleted.
 

Detailed Description

template<typename PropertyT, typename SpaceT, typename... _ExtraParams>
struct plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >

Specialization which implements provider class which provides multiple values in mesh points and uses interpolation.

Definition at line 1263 of file providerfor.hpp.

Member Typedef Documentation

◆ EnumType

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
typedef PropertyT::EnumType plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::EnumType

Definition at line 1268 of file providerfor.hpp.

◆ PropertyTag

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
typedef PropertyT plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::PropertyTag

Definition at line 1265 of file providerfor.hpp.

◆ ProvidedType

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
typedef MultiFieldProvider<ValueType,SpaceT,EnumType>::ProvidedType plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::ProvidedType

Type of provided value.

Definition at line 1279 of file providerfor.hpp.

◆ SpaceType

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
typedef SpaceT plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::SpaceType

Definition at line 1266 of file providerfor.hpp.

◆ ValueType

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
typedef PropertyAt<PropertyT,SpaceT>::ValueType plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::ValueType

Definition at line 1276 of file providerfor.hpp.

Member Function Documentation

◆ name()

Member Data Documentation

◆ NAME

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
constexpr const char* plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::NAME = PropertyT::NAME
staticconstexpr

Definition at line 1270 of file providerfor.hpp.


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