![]() |
Gaia-ECS v1.0.0
A simple and powerful entity component system
|
Authored and compiled state defining query identity and execution behavior. More...
#include <query_common.h>
Classes | |
| struct | Data |
| Compact compiled query payload used by matching, identity, and cache maintenance. More... | |
Public Types | |
| enum | QueryFlags : uint16_t { Empty = 0x00 , SortEntities = 0x01 , SortGroups = 0x02 , Complex = 0x04 , Recompile = 0x08 , HasSourceTerms = 0x10 , HasVariableTerms = 0x20 , MatchPrefab = 0x40 , HasPrefabTerms = 0x80 , OrderGroups = 0x100 } |
| Query maintenance and execution flags derived during compilation. More... | |
| enum class | CachePolicy : uint8_t { Immediate , Lazy , Dynamic } |
| Strategy used to maintain cached archetype matches. More... | |
| enum class | CreateArchetypeMatchKind : uint8_t { Vm , DirectStructuralTerms } |
| Matcher selected for newly created archetypes. More... | |
| enum class | DynamicCacheKind : uint8_t { None , RelationOnly , DirectSource , TraversedSource , Variable , Mixed } |
| Dynamic-cache dependency shape derived from compiled query metadata. More... | |
| enum class | DirectTargetEvalKind : uint8_t { Generic , SingleAllDirect , SingleAllSemanticIs , SingleAllInIs , SingleAllInherited } |
| Specialized evaluation shape for concrete target entities. More... | |
| enum | DependencyFlags : uint16_t { DependencyNone = 0x00 , DependencyHasSourceTerms = 0x01 , DependencyHasVariableTerms = 0x02 , DependencyHasPositiveTerms = 0x04 , DependencyHasNegativeTerms = 0x08 , DependencyHasAnyTerms = 0x10 , DependencyHasWildcardTerms = 0x20 , DependencyHasSort = 0x40 , DependencyHasGroup = 0x80 , DependencyHasTraversalTerms = 0x100 , DependencyHasEntityFilterTerms = 0x200 , DependencyHasInheritedDataTerms = 0x400 , DependencyHasPotentialInheritedIdTerms = 0x800 } |
| Dependency facts derived from the compiled term set. More... | |
Public Member Functions | |
| void | init (World *pWorld) |
| Attaches the query context to a world and its component cache. | |
| void | refresh () |
| Rebuilds derived masks, dependency metadata, and cache policy after authored terms change. | |
| GAIA_NODISCARD bool | operator== (const QueryCtx &other) const noexcept |
| Compares query contexts during initial shared-query lookup. | |
| GAIA_NODISCARD bool | operator!= (const QueryCtx &other) const noexcept |
| Compares query contexts for distinct shared query identity. | |
Static Public Member Functions | |
| static GAIA_NODISCARD bool | equals_no_handle_assumption (const QueryCtx &leftCtx, const QueryCtx &rightCtx) noexcept |
| Compares shared query identity without requiring invalid handles. | |
Public Attributes | |
| const World * | w {} |
| World against which the query is compiled and executed. | |
| ComponentCache * | cc {} |
| Component cache. | |
| QueryLookupHash | hashLookup {} |
| Lookup hash for this query. | |
| QueryIdentity | q {} |
| Query identity. | |
| struct gaia::ecs::QueryCtx::Data | data |
| Compiled query payload. | |
Authored and compiled state defining query identity and execution behavior.
|
strong |
|
strong |
| enum gaia::ecs::QueryCtx::DependencyFlags : uint16_t |
Dependency facts derived from the compiled term set.
|
strong |
Specialized evaluation shape for concrete target entities.
|
strong |
Dynamic-cache dependency shape derived from compiled query metadata.
| enum gaia::ecs::QueryCtx::QueryFlags : uint16_t |
Query maintenance and execution flags derived during compilation.
|
inlinestaticnoexcept |
Compares shared query identity without requiring invalid handles.
| leftCtx | First query context. |
| rightCtx | Second query context. |
|
inline |
Attaches the query context to a world and its component cache.
| pWorld | World that will compile and execute the query. |
|
inlinenoexcept |
Compares query contexts for distinct shared query identity.
| other | Query context to compare. |
|
inlinenoexcept |
Compares query contexts during initial shared-query lookup.
| other | Query context to compare. |