public void SetSystemSignature <T>(EcsSignature signature) where T : EcsSystem { var systemName = typeof(T).Name; Debug.Assert(_systems.ContainsKey(systemName), "System not registered before use."); _systems[systemName].Signature.SetSignature(signature); }
internal void SetSignature(EcsSignature signature) => _bitSignature = signature._bitSignature;
/// <summary> /// Removes the component(s) from the given signature from this one. /// </summary> /// <param name="signature">The signature to remove components from.</param> public void RemoveSignature(EcsSignature signature) => _bitSignature &= ~signature._bitSignature;
internal bool MatchesSignature(EcsSignature signature) => (_bitSignature & signature._bitSignature) == signature._bitSignature;
/// <summary> /// Adds the component(s) from the given signature to this one. /// </summary> /// <param name="signature">The signature to add components from.</param> public void AddSignature(EcsSignature signature) => _bitSignature |= signature._bitSignature;