public void RegisterManager <T>(T customManager) where T : IManager { var basicManagerData = new BasicManagerData { Manager = customManager }; _managerList.Add(basicManagerData); }
private T CreateBasicData <T>() where T : IManager, new() { CheckForNullManagerList(); var foundManager = CreateInstanceT <T>(); foundManager.Init(); var basicManagerData = new BasicManagerData { Manager = foundManager }; _managerList.Add(basicManagerData); return(foundManager); }
public void UnRegisterManager <T>(T customManager) where T : IManager { var searchType = typeof(T); BasicManagerData foundManager = null; foreach (var managerData in _managerList) { var manager = managerData.Manager; var managerType = manager.GetType(); if (managerType == searchType) { foundManager = managerData; break; } } if (foundManager != null) { _managerList.Remove(foundManager); } }