/// <summary>
 /// Add the system to this manager.
 /// </summary>
 /// <param name="system">The system to add.</param>
 /// <returns>This component system manager, for chaining.</returns>
 public IComponentSystemManager AddSystem(IComponentSystem system)
 {
     _systems.Add(system);
     _mapping.Remove(system.GetType());
     system.Manager = this;
     return(this);
 }
 public void RegisterIComponentSystem(IComponentSystem service)
 {
     Guid guid = service.GetType().GUID;
     {
         IComponentSystem retService = null;
         if (!m_Systems.TryGetValue(guid, out retService))
         {
             m_Systems.Add(guid, service);
         }
     }
 }
 /// <summary>
 /// Removes the system from this manager.
 /// </summary>
 /// <param name="system">The system to remove.</param>
 public void RemoveSystem(IComponentSystem system)
 {
     _systems.Remove(system);
     _mapping.Remove(system.GetType());
     system.Manager = null;
 }