33#ifndef DVD_SCENE_GRAPH_NODE_RELATIONSHIP_CACHE_H_
34#define DVD_SCENE_GRAPH_NODE_RELATIONSHIP_CACHE_H_
59 [[nodiscard]]
bool isValid() const noexcept;
void updateSiblings(U16 level, Cache &cache) const
void updateParents(U16 level, Cache &cache) const
void invalidate() noexcept
SceneGraphNode * _parentNode
bool validateRelationship(I64 guid, RelationshipType type) const noexcept
Cache _siblingCache
pair: GUID ... level unused
RelationshipType classifyNode(I64 GUID) const noexcept
@ GRANDPARENT
applies for all levels above 0
vector< CacheEntry > Cache
Cache _childrenRecursiveCache
std::atomic_bool _isValid
void updateChildren(U16 level, Cache &cache) const
Cache _parentRecursiveCache
pair: GUID ... parent level (0 = parent, 1 = grandparent, ...)
bool isValid() const noexcept
Handle console commands that start with a forward slash.
std::shared_mutex SharedMutex
eastl::vector< Type > vector