28 #ifndef __SYSTEMC_UTILS_TRACEFILE_HH__
29 #define __SYSTEMC_UTILS_TRACEFILE_HH__
59 virtual bool check() = 0;
62 template <
typename T,
typename Base=TraceValBase>
86 template <
typename T,
typename Base>
90 const ::sc_core::sc_signal_in_if<T> *
iface;
105 T newVal = iface->read();
106 bool changed = (newVal !=
oldVal);
112 template <
typename Base>
128 void finalize()
override { oldStamp =
event->triggeredStamp(); }
133 uint64_t newStamp =
event->triggeredStamp();
134 triggered = (oldStamp != newStamp);
140 template <
typename T,
typename Base>
141 class TraceValFxnumBase :
public Base
150 oldVal(_t->m_params.type_params(), _t->m_params.enc(),
151 _t->m_params.cast_switch(), 0)
159 this->_width =
t->wl();
173 template <
typename Base>
182 template <
typename Base>
213 virtual void trace(
bool delta) = 0;
220 const std::string &
name) = 0;
222 const std::string &
name) = 0;
224 const std::string &
name) = 0;
226 const std::string &
name) = 0;
228 const std::string &
name) = 0;
230 const std::string &
name) = 0;
232 const std::string &
name) = 0;
234 const std::string &
name) = 0;
236 const std::string &
name) = 0;
238 const std::string &
name) = 0;
240 const std::string &
name) = 0;
243 const std::string &
name) = 0;
245 const std::string &
name) = 0;
270 const std::string &
name,
271 const char **literals) = 0;
273 virtual void writeComment(
const std::string &comment) = 0;
278 #endif // __SYSTEMC_UTILS_TRACEFILE_HH__