public void Sweep(ComponentType type) { var ptr = SLPointer.Type(type); if (_groups.TryGetValue(ptr, out SLWrapper group)) { return; } if (0 == group.Sweep()) { _groups.Remove(ptr); } }
public void UnlinkTo(ComponentType type) { var ptr = SLPointer.Type(type); remove(ref ptr); }
public bool TryFind(ComponentType type, out SLWrapper wrap) => _groups.TryGetValue(SLPointer.Type(type), out wrap);
public void LinkTo(SLComponent com) { var ptr = SLPointer.Type(com.Type); insert(ref ptr, com); }
public SLWrapper Find(ComponentType type) => _groups[SLPointer.Type(type)];