dol: initial dol commit
[jump.git] / dol / src / dol / visitor / hdsd / scd / fsm / scd_sts_term_ack.cpp
diff --git a/dol/src/dol/visitor/hdsd/scd/fsm/scd_sts_term_ack.cpp b/dol/src/dol/visitor/hdsd/scd/fsm/scd_sts_term_ack.cpp
new file mode 100644 (file)
index 0000000..e3433ff
--- /dev/null
@@ -0,0 +1,36 @@
+#include "fsm/scd_sts_term_ack.h"
+
+#include "scd_logging.h"
+#include "scd_exception.h"
+#include "scd_cont_man_slave.h"
+
+
+void scd_sts_term_ack::recv_time_req()
+{
+    scd_warn("received time request in illegal state");
+}
+
+
+void scd_sts_term_ack::recv_term_req()
+{
+    scd_warn("received terminate request in illegal state");
+}
+
+
+void scd_sts_term_ack::recv_term_nack()
+{
+    _fsm.load_state();
+}
+
+
+void scd_sts_term_ack::recv_term()
+{
+    _sim.get_poller().remove_handler(_fsm);
+    _fsm.set_state(_st_terminated);
+}
+
+
+void scd_sts_term_ack::set_busy()
+{
+    scd_warn("received channel data while synchronizing to terminate");
+}