Mat4Component.ixx File
Generic 4x4 matrix ECS 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 | Mat4Component<TDomainTag, TNumericType, Args> |
|
Generic 4x4 matrix component with dirty-state tracking. More... | |
Description
Generic 4x4 matrix ECS 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 Mat4Component {
36 Mat4Component() = default;
43 explicit Mat4Component(const mat4<TNumericType>& value) : value_(value){}
50 explicit Mat4Component(const TNumericType value) : value_(mat4<TNumericType>{value}){}
60 Mat4Component(const Mat4Component& other) :
61 value_(other.value_),
62 isDirty_(true) {}
65 Mat4Component& operator=(const Mat4Component&) = default;
69 Mat4Component& operator=(Mat4Component&&) noexcept = default;
92 void clearDirty() noexcept {
110 [[nodiscard]] mat4<TNumericType>& value() noexcept {
128 void setValue(const mat4<TNumericType> value) noexcept {
129 value_ = value;
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.