public void AddMemoryPort(MemPort port) { if (IsConditional) { ResideIn.AddMemoryPort(port); } else { NameToIO.Add(port.Name, port); } }
public bool TryGetIOInternal(string ioName, bool lookUp, out IContainerIO container) { if (NameToIO.TryGetValue(ioName, out FIRIO innerIO)) { container = innerIO; return(true); } if (InternalIO.TryGetValue(ioName, out FIRIO io)) { container = io; return(true); } if (lookUp) { foreach (var condNode in Nodes.OfType <Conditional>()) { foreach (var condMod in condNode.CondMods) { if (condMod.Mod.TryGetIO(ioName, out container)) { return(true); } } } } if (IsConditional && ResideIn.TryGetIOInternal(ioName, false, out container)) { return(true); } container = null; return(false); }