PLaSK library
Loading...
Searching...
No Matches
plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs > Struct Template Referenceabstract

Instantiation of this template is abstract base class for provider class which provide values in points described by mesh and use interpolation. More...

#include <plask/provider/provider.hpp>

Inheritance diagram for plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >:
[legend]
Collaboration diagram for plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >:
[legend]

Public Types

typedef LazyData< ValueTProvidedType
 Type of value provided by this (returned by operator()).
 
typedef EnumT EnumType
 Type of value number.
 

Public Member Functions

const charname () const override
 
virtual size_t size () const =0
 Get number of values.
 
virtual ProvidedType operator() (EnumT num, shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, ExtraArgs... extra_args, InterpolationMethod method) const =0
 
ProvidedType operator() (EnumT num, shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, ExtraArgs... extra_args) const
 Call this->operator()(dst_mesh, DEFAULT).
 
ProvidedType operator() (EnumT 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 = "undefined field"
 
- 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 ValueT, typename SpaceT, typename EnumT, typename... ExtraArgs>
struct plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >

Instantiation of this template is abstract base class for provider class which provide values in points described by mesh and use interpolation.

Definition at line 562 of file provider.hpp.

Member Typedef Documentation

◆ EnumType

Type of value number.

Definition at line 571 of file provider.hpp.

◆ ProvidedType

Type of value provided by this (returned by operator()).

Definition at line 568 of file provider.hpp.

Member Function Documentation

◆ name()

template<typename ValueT , typename SpaceT , typename EnumT , typename... ExtraArgs>
const char * plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >::name ( ) const
inlineoverridevirtual

◆ operator()() [1/6]

template<typename ValueT , typename SpaceT , typename EnumT , typename... ExtraArgs>
ProvidedType plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >::operator() ( EnumT  num,
shared_ptr< const MeshD< SpaceT::DIM > >  dst_mesh,
ExtraArgs...  extra_args 
) const
inline

Call this->operator()(dst_mesh, DEFAULT).

Parameters
numnumber of the value
dst_meshset of requested points
extra_argsadditional provider arguments
Returns
values in points describe by mesh dst_mesh

Definition at line 595 of file provider.hpp.

◆ operator()() [2/6]

template<typename ValueT , typename SpaceT , typename EnumT , typename... ExtraArgs>
virtual ProvidedType plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >::operator() ( EnumT  num,
shared_ptr< const MeshD< SpaceT::DIM > >  dst_mesh,
ExtraArgs...  extra_args,
InterpolationMethod  method 
) const
pure virtual
Parameters
numnumber of the value
dst_meshset of requested points
extra_argsadditional provider arguments
methodmethod which should be use to do interpolation
Returns
values in points describe by mesh dst_mesh

◆ operator()() [3/6]

template<typename ValueT , typename SpaceT , typename EnumT , typename... ExtraArgs>
ProvidedType plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >::operator() ( EnumT  num,
shared_ptr< const MeshD< SpaceT::DIM > >  dst_mesh,
std::tuple< ExtraArgs... > &&  extra_args,
InterpolationMethod  method = INTERPOLATION_DEFAULT 
) const
inline
Parameters
numnumber of the value
dst_meshset of requested points
extra_argsadditional provider arguments, given in tuple
methodmethod which should be use to do interpolation
Returns
values in points describe by mesh dst_mesh

Definition at line 606 of file provider.hpp.

◆ operator()() [4/6]

template<typename ValueT , typename SpaceT , typename EnumT , typename... ExtraArgs>
ProvidedType plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >::operator() ( shared_ptr< const MeshD< SpaceT::DIM > >  dst_mesh,
ExtraArgs...  extra_args 
) const
inline

Call this->operator()(0, dst_mesh, DEFAULT).

Parameters
dst_meshset of requested points
extra_argsadditional provider arguments
Returns
values in points describe by mesh dst_mesh

Definition at line 628 of file provider.hpp.

◆ operator()() [5/6]

template<typename ValueT , typename SpaceT , typename EnumT , typename... ExtraArgs>
ProvidedType plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >::operator() ( shared_ptr< const MeshD< SpaceT::DIM > >  dst_mesh,
ExtraArgs...  extra_args,
InterpolationMethod  method 
) const
inline

Call this->operator()(0, dst_mesh, method).

Parameters
dst_meshset of requested points
extra_argsadditional provider arguments
methodmethod which should be use to do interpolation
Returns
values in points describe by mesh dst_mesh

Definition at line 618 of file provider.hpp.

◆ operator()() [6/6]

template<typename ValueT , typename SpaceT , typename EnumT , typename... ExtraArgs>
ProvidedType plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >::operator() ( shared_ptr< const MeshD< SpaceT::DIM > >  dst_mesh,
std::tuple< ExtraArgs... > &&  extra_args,
InterpolationMethod  method = INTERPOLATION_DEFAULT 
) const
inline

Call this->operator()(0, dst_mesh, method).

Parameters
dst_meshset of requested points
extra_argsadditional provider arguments, given in tuple
methodmethod which should be use to do interpolation
Returns
values in points describe by mesh dst_mesh

Definition at line 639 of file provider.hpp.

◆ size()

template<typename ValueT , typename SpaceT , typename EnumT , typename... ExtraArgs>
virtual size_t plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >::size ( ) const
pure virtual

Get number of values.

Returns
number of values

Member Data Documentation

◆ NAME

template<typename ValueT , typename SpaceT , typename EnumT , typename... ExtraArgs>
constexpr const char* plask::MultiFieldProvider< ValueT, SpaceT, EnumT, ExtraArgs >::NAME = "undefined field"
staticconstexpr

Definition at line 564 of file provider.hpp.


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