X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=era.mi%2Fsrc%2Fera%2Fmi%2Flogic%2Fcomponents%2FComponent.java;h=e26b6cd33c724b0b1dffba57f71e4a98103cef7e;hb=6c67a9ff8361cd9fc082f40e2676f2c8b5911fe4;hp=522a58d90a4ef89756fe2d5e3098d0e69bfa6f85;hpb=fb169b120e97337093a8707c62bbc4bb06098a9c;p=Mograsim.git diff --git a/era.mi/src/era/mi/logic/components/Component.java b/era.mi/src/era/mi/logic/components/Component.java index 522a58d9..e26b6cd3 100644 --- a/era.mi/src/era/mi/logic/components/Component.java +++ b/era.mi/src/era/mi/logic/components/Component.java @@ -2,19 +2,27 @@ package era.mi.logic.components; import java.util.List; -import era.mi.logic.wires.Wire.WireEnd; +import era.mi.logic.timeline.Timeline; +import era.mi.logic.wires.Wire.ReadEnd; +import era.mi.logic.wires.Wire.ReadWriteEnd; -public interface Component +public abstract class Component { + protected Timeline timeline; + + public Component(Timeline timeline) + { + this.timeline = timeline; + } /** * Returns immutable list of all inputs to the {@link Component} (including e.g. the select bits to a MUX). Intended for visualization * in the UI. */ - public List getAllInputs(); + public abstract List getAllInputs(); /** * Returns immutable list of all outputs to the {@link Component}. Intended for visualization in the UI. */ - public List getAllOutputs(); + public abstract List getAllOutputs(); }