MCPcopy Create free account
hub / github.com/SakuraEngine/SakuraEngine / components_enabled

Method components_enabled

modules/engine/runtime/src/ecs/storage.cpp:297–308  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

295}
296
297bool sugoi_storage_t::components_enabled(const sugoi_entity_t src, const sugoi_type_set_t& type)
298{
299 using namespace sugoi;
300 auto view = entity_view(src);
301 auto mask = (mask_t*)sugoiV_get_owned_ro(&view, kMaskComponent);
302 if (!mask)
303 return true;
304 auto set = view.chunk->group->get_mask(type);
305 if (set == 0)
306 return false;
307 return (mask->load(std::memory_order_relaxed) & set) == set;
308}
309
310bool sugoi_storage_t::exist(sugoi_entity_t e) const noexcept
311{

Callers 1

Calls 3

sugoiV_get_owned_roFunction · 0.85
get_maskMethod · 0.45
loadMethod · 0.45

Tested by

no test coverage detected