Skip to main content

Vec4Component Class Template

Generic 4D value component. More...

Declaration​

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

Public Member Typedefs Index​

template < ... >
usingValue_type = helios::math::vec4< TNumericType >
template < ... >
usingHandle_type = THandle

Public Constructors Index​

template < ... >
Vec4Component ()=default
template < ... >
Vec4Component (const Value_type value)

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

template < ... >
Vec4Component (const TNumericType x, const TNumericType y, const TNumericType z, const TNumericType w)

Constructs the component from scalar vector coordinates. More...

template < ... >
Vec4Component (const Vec4Component &other)

Copy constructor. More...

template < ... >
Vec4Component (Vec4Component &&) noexcept=default

Default move constructor. More...

Public Operators Index​

template < ... >
Vec4Component &operator= (const Vec4Component &)=default

Default copy assignment. More...

template < ... >
Vec4Component &operator= (Vec4Component &&) noexcept=default

Default move assignment. More...

Public Member Functions Index​

template < ... >
Value_typevalue () const noexcept

Returns the current value. More...

template < ... >
Value_typevalue () noexcept

Returns the current value. More...

template < ... >
voidsetValue (const Value_type value) noexcept

Updates the value. More...

Private Member Attributes Index​

template < ... >
helios::math::vec4< TNumericType >value_ {}

Description​

Generic 4D value component.

Template Parameters
TDomainTag

Semantic domain tag.

THandle

Owning entity handle type.

TNumericType

Scalar type for vector values.

Definition at line 28 of file Vec4Component.ixx.

Public Member Typedefs​

Handle_type​

template <typename TDomainTag, typename TNumericType, typename THandle, typename ... Args>
using helios::engine::core::components::Vec4Component< TDomainTag, TNumericType, THandle, Args >::Handle_type = THandle

Definition at line 34 of file Vec4Component.ixx.

34 using Handle_type = THandle;

Value_type​

template <typename TDomainTag, typename TNumericType, typename THandle, typename ... Args>
using helios::engine::core::components::Vec4Component< TDomainTag, TNumericType, THandle, Args >::Value_type = helios::math::vec4<TNumericType>

Definition at line 33 of file Vec4Component.ixx.

33 using Value_type = helios::math::vec4<TNumericType>;;

Public Constructors​

Vec4Component()​

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

Definition at line 36 of file Vec4Component.ixx.

Vec4Component()​

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

Constructs the component with an initial value.

Parameters
value

Initial value vector.

Definition at line 43 of file Vec4Component.ixx.

43 explicit Vec4Component(const Value_type value) : value_(value){}

Vec4Component()​

template <typename TDomainTag, typename TNumericType, typename THandle, typename ... Args>
helios::engine::core::components::Vec4Component< TDomainTag, TNumericType, THandle, Args >::Vec4Component (const TNumericType x, const TNumericType y, const TNumericType z, const TNumericType w)
inline explicit

Constructs the component from scalar vector coordinates.

Parameters
x

X component.

y

Y component.

z

Z component.

w

W component.

Definition at line 53 of file Vec4Component.ixx.

53 explicit Vec4Component(
54 const TNumericType x, const TNumericType y, const TNumericType z, const TNumericType w)
55 : value_(x, y, z, w){}

Vec4Component()​

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

Copy constructor.

Copies the value.

Parameters
other

The component to copy from.

Definition at line 64 of file Vec4Component.ixx.

65 value_(other.value_) {}

Vec4Component()​

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

Default move constructor.

Definition at line 70 of file Vec4Component.ixx.

Public Operators​

operator=()​

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

Default copy assignment.

Definition at line 68 of file Vec4Component.ixx.

operator=()​

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

Default move assignment.

Definition at line 72 of file Vec4Component.ixx.

Public Member Functions​

setValue()​

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

Updates the value.

Parameters
value

New vector value.

Definition at line 97 of file Vec4Component.ixx.

97 void setValue(const Value_type value) noexcept {
98 value_ = value;
99 };

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

value()​

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

Returns the current value.

Returns

Current 4D vector value.

Definition at line 79 of file Vec4Component.ixx.

80 return value_;
81 }

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

value()​

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

Returns the current value.

Returns

Current 4D vector value.

Definition at line 88 of file Vec4Component.ixx.

89 return value_;
90 }

Private Member Attributes​

value_​

template <typename TDomainTag, typename TNumericType, typename THandle, typename ... Args>
helios::math::vec4<TNumericType> helios::engine::core::components::Vec4Component< TDomainTag, TNumericType, THandle, Args >::value_ {}

Definition at line 30 of file Vec4Component.ixx.

30 helios::math::vec4<TNumericType> value_{};

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


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.