Public メソッド | |
vcd_sc_uint_base_trace (const sc_dt::sc_uint_base &object, const std::string &name_, const std::string &vcd_name_) | |
void | write (FILE *f) |
bool | changed () |
void | set_width () |
Protected 変数 | |
const sc_dt::sc_uint_base & | object |
sc_dt::sc_uint_base | old_value |
sc_vcd_trace.cpp の 542 行で定義されています。
sc_core::vcd_sc_uint_base_trace::vcd_sc_uint_base_trace | ( | const sc_dt::sc_uint_base & | object, | |
const std::string & | name_, | |||
const std::string & | vcd_name_ | |||
) |
sc_vcd_trace.cpp の 557 行で定義されています。
00561 : vcd_trace(name_, vcd_name_), object(object_), old_value(object_.length()) 00562 // The last may look strange, but is correct 00563 { 00564 vcd_var_typ_name = "wire"; 00565 old_value = object; 00566 }
void sc_core::vcd_sc_uint_base_trace::write | ( | FILE * | f | ) | [virtual] |
sc_core::vcd_traceを実装しています。
sc_vcd_trace.cpp の 575 行で定義されています。
00576 { 00577 char rawdata[1000], *rawdata_ptr = rawdata; 00578 char compdata[1000]; 00579 00580 int bitindex; 00581 for (bitindex = object.length()-1; bitindex >= 0; --bitindex) { 00582 *rawdata_ptr++ = "01"[int((object)[bitindex])]; 00583 } 00584 *rawdata_ptr = '\0'; 00585 compose_data_line(rawdata, compdata); 00586 00587 std::fputs(compdata, f); 00588 old_value = object; 00589 }
bool sc_core::vcd_sc_uint_base_trace::changed | ( | ) | [virtual] |
sc_core::vcd_traceを実装しています。
sc_vcd_trace.cpp の 569 行で定義されています。
00570 { 00571 return object != old_value; 00572 }
void sc_core::vcd_sc_uint_base_trace::set_width | ( | ) | [virtual] |
sc_core::vcd_traceを再定義しています。
sc_vcd_trace.cpp の 592 行で定義されています。
00593 { 00594 bit_width = object.length(); 00595 }
const sc_dt::sc_uint_base& sc_core::vcd_sc_uint_base_trace::object [protected] |
sc_vcd_trace.cpp の 552 行で定義されています。
sc_vcd_trace.cpp の 553 行で定義されています。