Mat4Component Class Template
Generic 4x4 matrix component with dirty-state tracking. More...
Declaration
Public Constructors Index
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| Mat4Component ()=default | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| Mat4Component (const mat4< TNumericType > &value) | |
|
Constructs the component with an initial value. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| Mat4Component (const TNumericType value) | |
|
Constructs the component with a scalar-filled matrix. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| Mat4Component (const Mat4Component &other) | |
|
Copy constructor. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| Mat4Component (Mat4Component &&) noexcept=default | |
|
Default move constructor. More... | |
Public Operators Index
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| Mat4Component & | operator= (const Mat4Component &)=default |
|
Default copy assignment. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| Mat4Component & | operator= (Mat4Component &&) noexcept=default |
|
Default move assignment. More... | |
Public Member Functions Index
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| void | onAcquire () noexcept |
|
Lifecycle hook called when the component is acquired. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| void | onRelease () noexcept |
|
Lifecycle hook called when the component is released. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| void | clearDirty () noexcept |
|
Clears the dirty flag after dependent systems consumed updates. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| bool | isDirty () const noexcept |
|
Returns whether the component requires a refresh pass. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| auto | value () noexcept -> mat4< TNumericType > & |
|
Returns the current value for in-place modification. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| auto | value () const noexcept -> const mat4< TNumericType > & |
|
Returns the current value. More... | |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| void | setValue (const mat4< TNumericType > value) noexcept |
|
Updates the value and marks the component dirty on change. More... | |
Private Member Attributes Index
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| helios::math::mat4< TNumericType > | value_ {} |
template <typename TDomainTag, typename THandle, typename TNumericType> | |
| bool | isDirty_ = true |
Description
Generic 4x4 matrix component with dirty-state tracking.
- Template Parameters
-
TDomainTag Semantic domain tag.
THandle Owning entity handle type.
TNumericType Scalar type for matrix values.
Definition at line 28 of file Mat4Component.ixx.
Public Constructors
Mat4Component()
| default |
Definition at line 36 of file Mat4Component.ixx.
Mat4Component()
| inline explicit |
Constructs the component with an initial value.
- Parameters
-
value Initial matrix value.
Definition at line 43 of file Mat4Component.ixx.
Mat4Component()
| inline explicit |
Constructs the component with a scalar-filled matrix.
- Parameters
-
value Scalar used to initialize all matrix elements.
Definition at line 50 of file Mat4Component.ixx.
Reference helios::engine::core::components::Mat4Component< TDomainTag, THandle, TNumericType >::value.
Mat4Component()
| inline |
Copy constructor.
- Parameters
-
other The component to copy from.
Copies the value and forces the copied component into a dirty state to ensure dependent systems refresh cached data.
Definition at line 60 of file Mat4Component.ixx.
Mat4Component()
| noexcept default |
Default move constructor.
Definition at line 67 of file Mat4Component.ixx.
Public Operators
operator=()
| default |
Default copy assignment.
Definition at line 65 of file Mat4Component.ixx.
operator=()
| noexcept default |
Default move assignment.
Definition at line 69 of file Mat4Component.ixx.
Public Member Functions
clearDirty()
| inline noexcept |
Clears the dirty flag after dependent systems consumed updates.
Definition at line 92 of file Mat4Component.ixx.
isDirty()
| inline noexcept |
onAcquire()
| inline noexcept |
Lifecycle hook called when the component is acquired.
Marks the component dirty to trigger downstream recomputation.
Definition at line 76 of file Mat4Component.ixx.
onRelease()
| inline noexcept |
Lifecycle hook called when the component is released.
Marks the component dirty to trigger downstream recomputation.
Definition at line 85 of file Mat4Component.ixx.
setValue()
| inline noexcept |
Updates the value and marks the component dirty on change.
- Parameters
-
value New matrix value.
Definition at line 128 of file Mat4Component.ixx.
Reference helios::engine::core::components::Mat4Component< TDomainTag, THandle, TNumericType >::value.
value()
| inline noexcept |
Returns the current value for in-place modification.
- Returns
Mutable reference to the current 4x4 matrix value.
Definition at line 110 of file Mat4Component.ixx.
Referenced by helios::engine::core::components::Mat4Component< TDomainTag, THandle, TNumericType >::Mat4Component and helios::engine::core::components::Mat4Component< TDomainTag, THandle, TNumericType >::setValue.
value()
| inline noexcept |
Returns the current value.
- Returns
Current 4x4 matrix value.
Definition at line 119 of file Mat4Component.ixx.
Private Member Attributes
isDirty_
|
Definition at line 32 of file Mat4Component.ixx.
value_
|
Definition at line 30 of file Mat4Component.ixx.
The documentation for this class was generated from the following file:
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.