PLaSK library

Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... > Struct Template Reference

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

Collaboration diagram for plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >:
[legend]

## Public Types
typedef _ValueType | ValueType
| Type of provided value.
typedef _ValueType | ValueType2D
| Type of provided value in 2D space.
typedef _ValueType | ValueType3D
| Type of provided value in 3D space.
typedef VariadicTemplateTypesHolder< _ExtraParams... > | ExtraParams
| Extra parameters passed as arguments to provider to get value.

## Static Public Member Functions
static ValueType | getDefaultValue ()
| Return default value of the property (usually zero)
static const ValueType2D & | value3Dto2D (const ValueType3D &v)
| Convert value in 3D space to 2D space.
static const ValueType3D & | value2Dto3D (const ValueType2D &v)
| Convert value in 2D space to 2D space.
static const ValueType2D & | value3Dto2Dcyl (const ValueType3D &v, const Vec< 3, double > &)
| Convert value in 3D space to 2D space in cylindrical coordinates.
static const ValueType3D & | value2Dto3Dcyl (const ValueType2D &v, const Vec< 3, double > &)
| Convert value in 2D space to 2D space in cylindrical coordinates.

## Static Public Attributes
static const PropertyType | propertyType = _propertyType
| Type of property.
static constexpr const char * | NAME = PropertyTypeToProviderName<_propertyType>::value
| Name of the property.
static constexpr bool | hasUniqueValueType = true
| `true` only if property use same value type in 2D and 3D space

## Detailed Description

template<PropertyType _propertyType, typename _ValueType, typename... _ExtraParams>
struct plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >

Definition at line 108 of file providerfor.hpp.

## Member Typedef Documentation

## ◆ ExtraParams

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

typedef VariadicTemplateTypesHolder<_ExtraParams...> plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::ExtraParams

Extra parameters passed as arguments to provider to get value.

Definition at line 128 of file providerfor.hpp.

## ◆ ValueType

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

typedef _ValueType plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::ValueType

Type of provided value.

Definition at line 113 of file providerfor.hpp.

## ◆ ValueType2D

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

typedef _ValueType plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::ValueType2D

Type of provided value in 2D space.

Definition at line 116 of file providerfor.hpp.

## ◆ ValueType3D

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

typedef _ValueType plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::ValueType3D

Type of provided value in 3D space.

Definition at line 119 of file providerfor.hpp.

## Member Function Documentation

## ◆ getDefaultValue()

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

static ValueType plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::getDefaultValue | ( |  | ) |
| inline static

Return default value of the property (usually zero)

Definition at line 125 of file providerfor.hpp.

## ◆ value2Dto3D()

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

static const ValueType3D & plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::value2Dto3D | ( | const ValueType2D & | v | ) |
| inline static

Convert value in 2D space to 2D space.

Parameters

  v | value in 2D space

Returns
  `p` converted to 3D space

Definition at line 145 of file providerfor.hpp.

## ◆ value2Dto3Dcyl()

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

static const ValueType3D & plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::value2Dto3Dcyl | ( | const ValueType2D & | v,
|  | const Vec< 3, double > & |
| ) |  |
| inline static

Convert value in 2D space to 2D space in cylindrical coordinates.

Parameters

  v | value in 2D space

Returns
  `p` converted to 3D space

Definition at line 159 of file providerfor.hpp.

## ◆ value3Dto2D()

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

static const ValueType2D & plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::value3Dto2D | ( | const ValueType3D & | v | ) |
| inline static

Convert value in 3D space to 2D space.

Parameters

  v | value in 3D space

Returns
  `p` converted to 2D space

Definition at line 138 of file providerfor.hpp.

## ◆ value3Dto2Dcyl()

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

static const ValueType2D & plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::value3Dto2Dcyl | ( | const ValueType3D & | v,
|  | const Vec< 3, double > & |
| ) |  |
| inline static

Convert value in 3D space to 2D space in cylindrical coordinates.

Parameters

  v | value in 3D space

Returns
  `p` converted to 2D space

Definition at line 152 of file providerfor.hpp.

## Member Data Documentation

## ◆ hasUniqueValueType

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

constexpr bool plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::hasUniqueValueType = true
| static constexpr

`true` only if property use same value type in 2D and 3D space

Definition at line 131 of file providerfor.hpp.

## ◆ NAME

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

constexpr const char* plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::NAME = PropertyTypeToProviderName<_propertyType>::value
| static constexpr

Name of the property.

Definition at line 122 of file providerfor.hpp.

## ◆ propertyType

template<PropertyType _propertyType, typename _ValueType , typename... _ExtraParams>

const PropertyType plask::Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >::propertyType = _propertyType
| static

Type of property.

Definition at line 110 of file providerfor.hpp.

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

- plask/provider/providerfor.hpp