import java.util.List;
-import era.mi.logic.Bit;
-import era.mi.logic.wires.Wire.WireEnd;
+import era.mi.logic.timeline.Timeline;
+import era.mi.logic.types.Bit;
+import era.mi.logic.wires.Wire.ReadEnd;
+import era.mi.logic.wires.Wire.ReadWriteEnd;
public class TriStateBuffer extends BasicComponent
{
- WireEnd in, enable;
- WireEnd out;
+ ReadEnd in, enable;
+ ReadWriteEnd out;
- public TriStateBuffer(int processTime, WireEnd in, WireEnd out, WireEnd enable)
+ public TriStateBuffer(Timeline timeline, int processTime, ReadEnd in, ReadWriteEnd out, ReadEnd enable)
{
- super(processTime);
+ super(timeline, processTime);
if (in.length() != out.length())
throw new IllegalArgumentException(
"Tri-state output must have the same amount of bits as the input. Input: " + in.length() + " Output: " + out.length());
}
@Override
- public List<WireEnd> getAllInputs()
+ public List<ReadEnd> getAllInputs()
{
return List.of(in, enable);
}
@Override
- public List<WireEnd> getAllOutputs()
+ public List<ReadWriteEnd> getAllOutputs()
{
return List.of(out);
}