private void Interpret(ICompositionMessage <T> message) { Add(message.Instance); foreach (T child in message.Instance.AllChildren().OfType <T>()) { Add(child); } }
private void Interpret(ICompositionMessage <ISceneNodeComponent> obj) { ISceneNodeComponent sceneNode = obj.Instance; if (sceneNode.ParentNode == null && !_sceneRoots.Contains(sceneNode)) { _sceneRoots.Add(sceneNode); } sceneNode.ParentNodeChanged += OnParentSceneNodeChanged; }
private void Interpret(ICompositionMessage <T> message) { T instance = message.Instance; if (Filter != null && !Filter(message.Instance)) { return; } _tracker.Add(instance); _newInstances.Add(instance); Registered?.Invoke(instance); }
void IInterpreter <ICompositionMessage <T> > .Interpret(ICompositionMessage <T> message) => Interpret(message);