/// <summary> /// Register a component /// </summary> /// <param name="component">Component to be registered.</param> public void RegisterComponent(IComponent component) { lock (ComponentsLock) { if (!ComponentList.Any(x => x.Id == component.Id)) { ComponentList.Add(component); ComponentRegistered?.Invoke(this, component); } } }