|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
| void MayaFlux::Nexus::Expanse::evaluate | ( | uint32_t | fabric_id, |
| std::span< const std::pair< uint32_t, glm::vec3 > > | snapshot | ||
| ) |
Evaluate a spatial snapshot from one Fabric against this Expanse.
Tests each position in snapshot with contains(), diffs the result against the previous occupant set for fabric_id, fires the entry and exit actions for the difference and the inside actions for everything inside, and updates the stored set. Each Fabric maintains independent occupant state.
| fabric_id | Stable id of the calling Fabric. |
| snapshot | Entity id and position of every positioned entity in that Fabric. |
Definition at line 33 of file Expanse.cpp.
References begin_evaluate(), contains, MayaFlux::Nexus::CrossingContext::fabric_id, m_entries, m_exits, m_insides, m_occupants_by_fabric, m_on_enter, m_on_exit, m_perceptions, occupants(), offset, MayaFlux::Nexus::PerceptionContext::position, radius, and reach().
Here is the call graph for this function: