import net.mograsim.logic.core.LogicObservable;
import net.mograsim.logic.core.LogicObserver;
import net.mograsim.logic.core.components.ManualSwitch;
+import net.mograsim.logic.core.types.Bit;
import net.mograsim.logic.core.types.BitVectorFormatter;
import net.mograsim.logic.core.wires.Wire.ReadEnd;
import net.mograsim.logic.ui.model.ViewModelModifiable;
return logicSwitch != null;
}
+ @Override
+ public void setHighLevelState(String stateID, Object newState)
+ {
+ switch (stateID)
+ {
+ case "out":
+ if (logicSwitch != null)
+ logicSwitch.setToValueOf((Bit) newState);
+ break;
+ default:
+ super.setHighLevelState(stateID, newState);
+ break;
+ }
+ }
+
+ @Override
+ public Object getHighLevelState(String stateID)
+ {
+ switch (stateID)
+ {
+ case "out":
+ if (logicSwitch != null)
+ return logicSwitch.getValue();
+ return null;
+ default:
+ return super.getHighLevelState(stateID);
+ }
+ }
+
private void registerLogicObs(LogicObservable observable)
{
if (observable != null)