PLaSK library

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | List of all members
plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate Struct Reference

Implementation of field provider class which delegates all operator() calls to external functor. More...

`#include <plask/provider/providerfor.hpp>`

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

## Public Types
typedef PolymorphicDelegateProvider< ProviderFor< PropertyT, SpaceT >, ProvidedType(EnumType n, shared_ptr< const MeshD< SpaceT::DIM > > dst_mesh, _ExtraParams..., InterpolationMethod method)> | Base

## Public Member Functions
template<typename Functor , typename Sizer >
| Delegate (Functor functor, Sizer sizer)
| Create delegate provider.
template<typename ClassType , typename MemberType , typename Sizer >
| Delegate (ClassType *object, MemberType member, Sizer sizer)
| Create delegate provider.
template<typename ClassType , typename MemberType >
| Delegate (ClassType *object, MemberType member, size_t(ClassType::*sizer)() const)
| Create delegate provider.
template<typename ClassType , typename MemberType >
| Delegate (ClassType *object, MemberType member, size_t(ClassType::*sizer)())
| Create delegate provider.
template<typename Functor >
| Delegate (Functor functor)
| Create delegate provider.
template<typename ClassType , typename MemberType , typename Sizer >
| Delegate (ClassType *object, MemberType member)
| Create delegate provider.
template<typename ClassType , typename MemberType >
| Delegate (ClassType *object, MemberType member)
| Create delegate provider.
size_t | size () const override

## Public Attributes
std::function< size_t()> | sizeGetter

## Detailed Description

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

Implementation of field provider class which delegates all operator() calls to external functor.

Definition at line 1539 of file providerfor.hpp.

## Member Typedef Documentation

## ◆ Base

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>

typedef PolymorphicDelegateProvider<ProviderFor<PropertyT, SpaceT>, ProvidedType(EnumType n, shared_ptr<const MeshD<SpaceT::DIM>> dst_mesh, _ExtraParams..., InterpolationMethod method)> plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::Base

Definition at line 1541 of file providerfor.hpp.

## Constructor & Destructor Documentation

## ◆ Delegate() [1/7]

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
template<typename Functor , typename Sizer >

plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::Delegate | ( | Functor | functor,
|  | Sizer | sizer
| ) |  |
| inline

Create delegate provider.

Parameters

  functor | delegate functor
  sizer | functor returning number of the elements

Definition at line 1551 of file providerfor.hpp.

## ◆ Delegate() [2/7]

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
template<typename ClassType , typename MemberType , typename Sizer >

plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::Delegate | ( | ClassType * | object,
|  | MemberType | member,
|  | Sizer | sizer
| ) |  |
| inline

Create delegate provider.

Parameters

  object | object of class with delegate method
  member | delegate member method
  sizer | functor returning number of the elements

Definition at line 1560 of file providerfor.hpp.

## ◆ Delegate() [3/7]

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
template<typename ClassType , typename MemberType >

plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::Delegate | ( | ClassType * | object,
|  | MemberType | member,
|  | size_t(ClassType::*)() const | sizer
| ) |  |
| inline

Create delegate provider.

Parameters

  object | object of class with delegate method
  member | delegate member method
  sizer | class member returning number of the elements

Definition at line 1569 of file providerfor.hpp.

## ◆ Delegate() [4/7]

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
template<typename ClassType , typename MemberType >

plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::Delegate | ( | ClassType * | object,
|  | MemberType | member,
|  | size_t(ClassType::*)() | sizer
| ) |  |
| inline

Create delegate provider.

Parameters

  object | object of class with delegate method
  member | delegate member method
  sizer | class member returning number of the elements

Definition at line 1579 of file providerfor.hpp.

## ◆ Delegate() [5/7]

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
template<typename Functor >

plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::Delegate | ( | Functor | functor | ) |
| inline

Create delegate provider.

Parameters

  functor | delegate functor

Definition at line 1587 of file providerfor.hpp.

## ◆ Delegate() [6/7]

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
template<typename ClassType , typename MemberType , typename Sizer >

plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::Delegate | ( | ClassType * | object,
|  | MemberType | member
| ) |  |
| inline

Create delegate provider.

Parameters

  object | object of class with delegate method
  member | delegate member method

Definition at line 1595 of file providerfor.hpp.

## ◆ Delegate() [7/7]

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>
template<typename ClassType , typename MemberType >

plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::Delegate | ( | ClassType * | object,
|  | MemberType | member
| ) |  |
| inline

Create delegate provider.

Parameters

  object | object of class with delegate method
  member | delegate member method

Definition at line 1603 of file providerfor.hpp.

## Member Function Documentation

## ◆ size()

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>

size_t plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::size | ( |  | ) | const
| inline override

Definition at line 1605 of file providerfor.hpp.

## Member Data Documentation

## ◆ sizeGetter

template<typename PropertyT , typename SpaceT , typename... _ExtraParams>

std::function<size_t()> plask::ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate::sizeGetter

Definition at line 1543 of file providerfor.hpp.

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

- plask/provider/providerfor.hpp