55d0cb01bb42b49115e36cde1fc58c0d9f48ab3d
[Mograsim.git] / era.mi / src / era / mi / logic / components / gates / NotGate.java
1 package era.mi.logic.components.gates;
2
3 import era.mi.logic.Util;
4 import era.mi.logic.WireArray;
5 import era.mi.logic.components.BasicComponent;
6
7 public class NotGate extends BasicComponent
8 {
9         private WireArray in, out;
10         
11         public NotGate(int processTime, WireArray in, WireArray out)
12         {
13                 super(processTime);
14                 this.in = in;
15                 in.addObserver(this);
16                 this.out = out;
17         }
18         
19         public void compute()
20         {
21                 out.feedSignals(Util.not(in.getValues()));
22         }
23
24         public WireArray getIn()
25         {
26                 return in;
27         }
28
29         public WireArray getOut()
30         {
31                 return out;
32         }
33 }