59 double duty_cycle_ = 0.5,
61 bool posedge_first_ =
true );
66 double duty_cycle_ = 0.5 );
74 bool posedge_first_ =
true );
79 double duty_cycle_ = 0.5,
80 double start_time_ = 0.0,
81 bool posedge_first_ =
true );
87 virtual void write(
const bool& );
95 {
return m_duty_cycle; }
101 {
return m_posedge_first; }
104 {
return m_start_time; }
108 virtual const char*
kind()
const
109 {
return "sc_clock"; }
118 const sc_signal_in_if<bool>& signal()
const
121 static void start(
const sc_time& duration )
127 static void start(
double duration = -1 )
137 void posedge_action();
138 void negedge_action();
SC_API const sc_time SC_ZERO_TIME
sc_clock(const char *name_, const sc_time &period_, double duty_cycle_=0.5, const sc_time &start_time_=SC_ZERO_TIME, bool posedge_first_=true)
bool posedge_first() const
void spawn_edge_method(bool)
virtual void register_port(sc_port_base &, const char *if_type)
sc_event m_next_negedge_event
sc_clock(const char *name_, double period_, double duty_cycle_=0.5, double start_time_=0.0, bool posedge_first_=true)
const sc_time & period() const
virtual void write(const bool &)
virtual const char * kind() const
static const sc_time & time_stamp()
sc_time start_time() const
sc_clock(const char *name_, double period_v_, sc_time_unit period_tu_, double duty_cycle_, double start_time_v_, sc_time_unit start_time_tu_, bool posedge_first_=true)
sc_clock(const char *name_, double period_v_, sc_time_unit period_tu_, double duty_cycle_=0.5)
double duty_cycle() const
void init(const sc_time &, double, const sc_time &, bool)
sc_clock(const char *name_)
void report_error(const char *id, const char *add_msg=0) const
sc_event m_next_posedge_event