PLaSK library
Loading...
Searching...
No Matches
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 ValueType2Dvalue3Dto2D (const ValueType3D &v)
 Convert value in 3D space to 2D space.
 
static const ValueType3Dvalue2Dto3D (const ValueType2D &v)
 Convert value in 2D space to 2D space.
 
static const ValueType2Dvalue3Dto2Dcyl (const ValueType3D &v, const Vec< 3, double > &)
 Convert value in 3D space to 2D space in cylindrical coordinates.
 
static const ValueType3Dvalue2Dto3Dcyl (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 charNAME = 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 ( )
inlinestatic

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)
inlinestatic

Convert value in 2D space to 2D space.

Parameters
vvalue 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 > &   
)
inlinestatic

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

Parameters
vvalue 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)
inlinestatic

Convert value in 3D space to 2D space.

Parameters
vvalue 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 > &   
)
inlinestatic

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

Parameters
vvalue 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
staticconstexpr

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
staticconstexpr

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: