dol: initial dol commit
[jump.git] / dol / src / dol / visitor / hdsd / scd / fsm / scd_cont_state.h
diff --git a/dol/src/dol/visitor/hdsd/scd/fsm/scd_cont_state.h b/dol/src/dol/visitor/hdsd/scd/fsm/scd_cont_state.h
new file mode 100644 (file)
index 0000000..82e09d3
--- /dev/null
@@ -0,0 +1,38 @@
+#ifndef SCD_CONT_STATE_H
+#define SCD_CONT_STATE_H
+
+#include <string>
+
+#include "scd_simulator.h"
+#include "fsm/scd_cont_fsm_if.h"
+
+
+/* forward declaration */
+class scd_simulator;
+
+
+/**
+ * Base class of all FSM states.
+ */
+class scd_cont_state : public scd_cont_fsm_if
+{
+public:
+    /**
+     * Constructor.
+     * \param sim the simulation environment
+     */
+    scd_cont_state(scd_simulator& sim): _sim(sim) {}
+
+    virtual ~scd_cont_state() {}
+
+    /**
+     * Returns the name of the state.
+     */
+    const std::string& get_name() const { return _name; }
+
+protected:
+    scd_simulator& _sim;
+    std::string _name;
+};
+
+#endif