WireEnd functionality split into ReadEnd and ReadWriteEnd
[Mograsim.git] / era.mi / src / era / mi / logic / components / Component.java
1 package era.mi.logic.components;
2
3 import java.util.List;
4
5 import era.mi.logic.wires.Wire.ReadEnd;
6 import era.mi.logic.wires.Wire.ReadWriteEnd;
7
8 public interface Component
9 {
10
11         /**
12          * Returns immutable list of all inputs to the {@link Component} (including e.g. the select bits to a MUX). Intended for visualization
13          * in the UI.
14          */
15         public List<ReadEnd> getAllInputs();
16
17         /**
18          * Returns immutable list of all outputs to the {@link Component}. Intended for visualization in the UI.
19          */
20         public List<ReadWriteEnd> getAllOutputs();
21 }