using System; namespace Svelto.ECS.Internal { class NodeEngineWrapper : SingleNodeEngine where T : class, INode { INodeEngine engine; public NodeEngineWrapper(INodeEngine engine) { this.engine = engine; } protected override void Add(T node) { engine.Add((T)node); } protected override void Remove(T node) { engine.Remove((T)node); } } class NodeEngineWrapper: SingleNodeEngine where T : class, INode where U : class, INode { INodeEngine engine; public NodeEngineWrapper(INodeEngine engine) { this.engine = engine; } protected override void Add(T node) { engine.Add((T)node); } protected override void Remove(T node) { engine.Remove((T)node); } } class NodeEngineWrapper: SingleNodeEngine where T : class, INode where U : class, INode where V : class, INode { INodeEngine engine; public NodeEngineWrapper(INodeEngine engine) { this.engine = engine; } protected override void Add(T node) { engine.Add((T)node); } protected override void Remove(T node) { engine.Remove((T)node); } } }