--- /dev/null
+#ifndef SCD_STSW_TIME_REQ_H
+#define SCD_STSW_TIME_REQ_H
+
+#include "fsm/scd_stsw_base.h"
+
+
+/* forward declaration */
+class scd_cont_slave_wrapper;
+
+
+class scd_stsw_time_req : public scd_stsw_base
+{
+public:
+ scd_stsw_time_req(scd_simulator& sim, scd_cont_slave_wrapper& fsm):
+ scd_stsw_base(sim, fsm) { _name = "time_req"; }
+ virtual ~scd_stsw_time_req() {}
+
+ /* sdc_stsw_base */
+ void recv_time_nack();
+ void recv_time_ack();
+
+ /* scd_cont_wrapper_if */
+ void send_time_nack();
+ bool time_req() const;
+
+ /* scd_cont_fsm_if */
+ void set_busy();
+ void set_idle(const sc_core::sc_time& time);
+ void set_done();
+
+};
+
+#endif