Vec4Component.ixx File
Generic 4D vector component with dirty-state tracking. More...
Included Headers
#include <cassert>
#include <helios.math.concepts>
#include <helios.math.types>
Namespaces Index
| namespace | helios |
| namespace | engine |
| namespace | core |
| namespace | components |
Classes Index
| class | Vec4Component<TDomainTag, TNumericType, Args> |
|
Generic 4D value component with dirty-state tracking. More... | |
Description
Generic 4D vector component with dirty-state tracking.
File Listing
The file content with the documentation metadata removed is:
17export namespace helios::engine::core::components {
26 template<typename TDomainTag, typename TNumericType, typename ... Args>
27 requires IsNumeric<TNumericType>
28 class Vec4Component {
36 Vec4Component() = default;
43 explicit Vec4Component(const vec4<TNumericType> value) : value_(value){}
53 explicit Vec4Component(
54 const TNumericType x, const TNumericType y, const TNumericType z, const TNumericType w)
65 Vec4Component(const Vec4Component& other) :
66 value_(other.value_),
67 isDirty_(true) {}
70 Vec4Component& operator=(const Vec4Component&) = default;
74 Vec4Component& operator=(Vec4Component&&) noexcept = default;
97 void clearDirty() noexcept {
124 [[nodiscard]] vec4<TNumericType> value() noexcept {
133 void setValue(const vec4<TNumericType> value) noexcept {
134 value_ = value;
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.