--- /dev/null
+#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