PLaSK library

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

Partial specialization which implements abstract provider class which provides a single value, typically one double. More...

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

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

## Classes
struct | WithDefaultValue
| Implementation of one value provider class which holds value inside (in value field) and operator() returns its held value. More...
struct | WithValue
| Implementation of one value provider class which holds value inside (in value field) and operator() return its held value. More...

## Public Types
typedef PropertyT | PropertyTag
typedef SpaceT | SpaceType
typedef PropertyAt< PropertyT, SpaceT >::ValueType | ValueType
typedef SingleValueProvider< ValueType >::ProvidedType | ProvidedType
| Type of provided value.
typedef PolymorphicDelegateProvider< ProviderFor< PropertyT, SpaceT >, ProvidedType(_ExtraParams...)> | Delegate
| Implementation of one value provider class which delegates all operator() calls to external functor.
typedef WithValue | ConstProviderType
| Used by receivers as const value provider, see Receiver::setConstValue.
Public Types inherited from plask::SingleValueProvider< PropertyAt< PropertyT, SpaceT >::ValueType, _ExtraParams... >
typedef PropertyAt< PropertyT, SpaceT >::ValueType | ProvidedType
| Type of provided value.

## Public Member Functions
const char * | name () const override
Public Member Functions inherited from plask::SingleValueProvider< PropertyAt< PropertyT, SpaceT >::ValueType, _ExtraParams... >
const char * | name () const override
virtual ProvidedType | operator() (ArgsT...) const=0
| Provided value getter.
Public Member Functions inherited from plask::Provider
Provider & | operator= (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 char * | NAME = PropertyT::NAME
Static Public Attributes inherited from plask::SingleValueProvider< PropertyAt< PropertyT, SpaceT >::ValueType, _ExtraParams... >
static constexpr const char * | NAME
Static Public Attributes inherited from plask::Provider
static constexpr const char * | NAME = "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, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >

Partial specialization which implements abstract provider class which provides a single value, typically one double.

Template Parameters

  PropertyT |
  ValueT | type of provided value
  SpaceT | ignored

Definition at line 646 of file providerfor.hpp.

## Member Typedef Documentation

## ◆ ConstProviderType

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

typedef WithValue plask::ProviderImpl< PropertyT, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::ConstProviderType

Used by receivers as const value provider, see Receiver::setConstValue.

Definition at line 762 of file providerfor.hpp.

## ◆ Delegate

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

typedef PolymorphicDelegateProvider<ProviderFor<PropertyT, SpaceT>, ProvidedType(_ExtraParams...)> plask::ProviderImpl< PropertyT, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::Delegate

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

Definition at line 759 of file providerfor.hpp.

## ◆ PropertyTag

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

typedef PropertyT plask::ProviderImpl< PropertyT, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::PropertyTag

Definition at line 648 of file providerfor.hpp.

## ◆ ProvidedType

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

typedef SingleValueProvider<ValueType>::ProvidedType plask::ProviderImpl< PropertyT, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::ProvidedType

Type of provided value.

Definition at line 660 of file providerfor.hpp.

## ◆ SpaceType

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

typedef SpaceT plask::ProviderImpl< PropertyT, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::SpaceType

Definition at line 649 of file providerfor.hpp.

## ◆ ValueType

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

typedef PropertyAt<PropertyT,SpaceT>::ValueType plask::ProviderImpl< PropertyT, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::ValueType

Definition at line 657 of file providerfor.hpp.

## Member Function Documentation

## ◆ name()

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

const char * plask::ProviderImpl< PropertyT, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::name | ( |  | ) | const
| inline override virtual

Reimplemented from plask::Provider.

Definition at line 652 of file providerfor.hpp.

## Member Data Documentation

## ◆ NAME

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

constexpr const char* plask::ProviderImpl< PropertyT, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >::NAME = PropertyT::NAME
| static constexpr

Definition at line 651 of file providerfor.hpp.

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

- plask/provider/providerfor.hpp