Skip to main content

NumericValueComponent Class Template

Generic numeric value component. More...

Declaration​

template <typename TDomainTag, typename TNumericType, typename ... Args> class helios::engine::core::components::NumericValueComponent<TDomainTag, TNumericType, Args> { ... }

Public Member Typedefs Index​

template <typename TDomainTag, typename TNumericType, typename ... Args>
usingValue_type = TNumericType

Public Constructors Index​

template <typename TDomainTag, typename TNumericType, typename ... Args>
NumericValueComponent ()=default
template <typename TDomainTag, typename TNumericType, typename ... Args>
NumericValueComponent (const Value_type value)

Constructs the component with an initial scalar value. More...

template <typename TDomainTag, typename TNumericType, typename ... Args>
NumericValueComponent (const NumericValueComponent &other)

Copy constructor. More...

template <typename TDomainTag, typename TNumericType, typename ... Args>
NumericValueComponent (NumericValueComponent &&) noexcept=default

Default move constructor. More...

Public Operators Index​

template <typename TDomainTag, typename TNumericType, typename ... Args>
NumericValueComponent &operator= (const NumericValueComponent &)=default

Default copy assignment. More...

template <typename TDomainTag, typename TNumericType, typename ... Args>
NumericValueComponent &operator= (NumericValueComponent &&) noexcept=default

Default move assignment. More...

Public Member Functions Index​

template <typename TDomainTag, typename TNumericType, typename ... Args>
Value_typevalue () noexcept

Returns the current value. More...

template <typename TDomainTag, typename TNumericType, typename ... Args>
Value_typevalue () const noexcept

Returns the current value. More...

template <typename TDomainTag, typename TNumericType, typename ... Args>
voidsetValue (const TNumericType value) noexcept

Updates the value. More...

Private Member Attributes Index​

template <typename TDomainTag, typename TNumericType, typename ... Args>
TNumericTypevalue_ {}

Description​

Generic numeric value component.

Template Parameters
TDomainTag

Semantic domain tag.

THandle

Owning entity handle type.

TNumericType

Scalar type for stored numeric values.

Definition at line 28 of file NumericValueComponent.ixx.

Public Member Typedefs​

Value_type​

template <typename TDomainTag, typename TNumericType, typename ... Args>
using helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::Value_type = TNumericType

Definition at line 34 of file NumericValueComponent.ixx.

Public Constructors​

NumericValueComponent()​

template <typename TDomainTag, typename TNumericType, typename ... Args>
helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::NumericValueComponent ()
default

Definition at line 36 of file NumericValueComponent.ixx.

NumericValueComponent()​

template <typename TDomainTag, typename TNumericType, typename ... Args>
helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::NumericValueComponent (const Value_type value)
inline explicit

Constructs the component with an initial scalar value.

Parameters
value

Initial numeric value.

Definition at line 44 of file NumericValueComponent.ixx.

44 explicit NumericValueComponent(const Value_type value) : value_(value){}

NumericValueComponent()​

template <typename TDomainTag, typename TNumericType, typename ... Args>
helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::NumericValueComponent (const NumericValueComponent & other)
inline

Copy constructor.

Parameters
other

The component to copy from.

Definition at line 51 of file NumericValueComponent.ixx.

52 value_(other.value_){}

NumericValueComponent()​

template <typename TDomainTag, typename TNumericType, typename ... Args>
helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::NumericValueComponent (NumericValueComponent &&)
noexcept default

Default move constructor.

Definition at line 57 of file NumericValueComponent.ixx.

Public Operators​

operator=()​

template <typename TDomainTag, typename TNumericType, typename ... Args>
NumericValueComponent & helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::operator= (const NumericValueComponent &)
default

Default copy assignment.

Definition at line 55 of file NumericValueComponent.ixx.

operator=()​

template <typename TDomainTag, typename TNumericType, typename ... Args>
NumericValueComponent & helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::operator= (NumericValueComponent &&)
noexcept default

Default move assignment.

Definition at line 59 of file NumericValueComponent.ixx.

Public Member Functions​

setValue()​

template <typename TDomainTag, typename TNumericType, typename ... Args>
void helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::setValue (const TNumericType value)
inline noexcept

Updates the value.

Parameters
value

New scalar value.

Definition at line 85 of file NumericValueComponent.ixx.

85 void setValue(const TNumericType value) noexcept {
86 value_ = value;
87 };

Reference helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::value.

value()​

template <typename TDomainTag, typename TNumericType, typename ... Args>
Value_type helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::value ()
inline noexcept

Returns the current value.

Returns

Current value.

Definition at line 67 of file NumericValueComponent.ixx.

68 return value_;
69 }

Referenced by helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::setValue.

value()​

template <typename TDomainTag, typename TNumericType, typename ... Args>
Value_type helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::value ()
inline noexcept

Returns the current value.

Returns

Current value.

Definition at line 76 of file NumericValueComponent.ixx.

77 return value_;
78 }

Private Member Attributes​

value_​

template <typename TDomainTag, typename TNumericType, typename ... Args>
TNumericType helios::engine::core::components::NumericValueComponent< TDomainTag, TNumericType, Args >::value_ {}

Definition at line 30 of file NumericValueComponent.ixx.

30 TNumericType value_{};

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


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.