Made get/setHLS final to force components to set a HLSHandler
[Mograsim.git] / plugins / net.mograsim.logic.model / src / net / mograsim / logic / model / model / components / ModelComponent.java
index d543c54..ded6685 100644 (file)
@@ -14,6 +14,7 @@ import net.mograsim.logic.model.model.wires.Pin;
 import net.mograsim.logic.model.serializing.IdentifyParams;
 import net.mograsim.logic.model.serializing.JSONSerializable;
 import net.mograsim.logic.model.snippets.HighLevelStateHandler;
+import net.mograsim.logic.model.snippets.highlevelstatehandlers.DefaultHighLevelStateHandler;
 
 /**
  * The base class for all model components.<br>
@@ -77,6 +78,8 @@ public abstract class ModelComponent implements JSONSerializable
                this.pinAddedListeners = new ArrayList<>();
                this.pinRemovedListeners = new ArrayList<>();
 
+               this.highLevelStateHandler = new DefaultHighLevelStateHandler();
+
                if (callInit)
                        init();
        }
@@ -216,7 +219,7 @@ public abstract class ModelComponent implements JSONSerializable
         * 
         * @author Daniel Kirschten
         */
-       public Object getHighLevelState(String stateID)
+       public final Object getHighLevelState(String stateID)
        {
                return highLevelStateHandler.getHighLevelState(stateID);
        }
@@ -230,7 +233,7 @@ public abstract class ModelComponent implements JSONSerializable
         * 
         * @author Daniel Kirschten
         */
-       public void setHighLevelState(String stateID, Object newState)
+       public final void setHighLevelState(String stateID, Object newState)
        {
                highLevelStateHandler.setHighLevelState(stateID, newState);
        }