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.