PLaSK library
|
Helper class which makes it easier to define property tags classes for multiple vectorial fields that can be interpolated. More...
#include <plask/provider/providerfor.hpp>
Public Types | |
typedef size_t | EnumType |
Default value enumeration type. | |
Public Types inherited from plask::Property< _propertyType, _ValueType2D, _ValueType3D, _ExtraParams > | |
typedef _ValueType2D | ValueType2D |
Type of provided value in 2D space. | |
typedef _ValueType3D | 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 Vec< 2, ValueT > | value3Dto2D (const Vec< 3, ValueT > &v) |
Convert value in 3D space to 2D space by removing component. | |
static Vec< 3, ValueT > | value2Dto3D (const Vec< 2, ValueT > &v) |
Convert value in 2D space to 2D space by adding zeroed component. | |
Static Public Member Functions inherited from plask::Property< _propertyType, _ValueType2D, _ValueType3D, _ExtraParams > | |
static ValueType2D | getDefaultValue2D () |
Return default value of the property (usually zero) in 2D space. | |
static ValueType3D | getDefaultValue3D () |
Return default value of the property (usually zero) in 3D space. | |
Additional Inherited Members | |
Static Public Attributes inherited from plask::Property< _propertyType, _ValueType2D, _ValueType3D, _ExtraParams > | |
static const PropertyType | propertyType = _propertyType |
Type of property. | |
static constexpr const char * | NAME = PropertyTypeToProviderName<_propertyType>::value |
Name of the property. | |
static constexpr bool | hasUniqueValueType = false |
true only if property use same value type in 2D and 3D space | |
Helper class which makes it easier to define property tags classes for multiple vectorial fields that can be interpolated.
Properties defined with this tag has another type of value in 2D and 3D space:
Property tag class can be subclass of this, but never should be typedefs to this (tag class for each property must be a separate class — always use different types for different properties).
Definition at line 388 of file providerfor.hpp.
typedef size_t plask::MultiVectorFieldProperty< ValueT, _ExtraParams >::EnumType |
Default value enumeration type.
Definition at line 391 of file providerfor.hpp.
|
inlinestatic |
Convert value in 2D space to 2D space by adding zeroed component.
v | value in 2D space |
p
converted to 3D space Definition at line 405 of file providerfor.hpp.
|
inlinestatic |
Convert value in 3D space to 2D space by removing component.
v | value in 3D space |
p
converted to 2D space Definition at line 398 of file providerfor.hpp.