![]() |
Gaia-ECS v0.9.3
A simple and powerful entity component system
|
Temporary VM matching buffer meant to be owned by an ECS World. QueryInfo only acquires a frame while executing the VM. More...
#include <query_info.h>
Public Member Functions | |
| void | clear_temporary_matches () |
| Clears all temporary match data, including dedup stamps. | |
| void | clear_temporary_matches_keep_stamps () |
| Clears temporary match arrays while preserving allocated dedup stamp pages. Full match() can reuse prior stamp pages and advance matchVersion instead of zeroing the whole table again. | |
| void | reset_stamps () |
| Clears dedup stamps and resets the match-version counter. | |
| GAIA_NODISCARD uint32_t | next_match_version () |
| Advances and returns the dedup stamp for the next VM match pass. | |
Public Attributes | |
| cnt::darr< const Archetype * > | matchesArr |
| Ordered list of matched archetypes emitted by the VM for the current run. | |
| ArchetypeMatchStamps | matchStamps |
| Paged O(1) dedup table keyed by world-local archetype ids. Pages stay allocated on the scratch frame so repeated matches do not keep reallocating heap memory when archetype ids revisit the same ranges. | |
| cnt::darray< const Archetype * > | matchesArrDynPrev |
| Previous result membership used when a dynamic rebuild compares reverse-index changes. | |
| uint32_t | matchVersion = 0 |
| Monotonic dedup stamp used when the same scratch frame is reused by later full match() calls without clearing stamp pages. | |
Temporary VM matching buffer meant to be owned by an ECS World. QueryInfo only acquires a frame while executing the VM.
|
inline |
Advances and returns the dedup stamp for the next VM match pass.