28 #ifndef __SYSTEMC_UTILS_TRACEFILE_HH__
29 #define __SYSTEMC_UTILS_TRACEFILE_HH__
58 virtual bool check() = 0;
61 template <
typename T,
typename Base=TraceValBase>
85 template <
typename T,
typename Base>
89 const ::sc_core::sc_signal_in_if<T> *
iface;
104 T newVal = iface->read();
105 bool changed = (newVal !=
oldVal);
111 template <
typename Base>
121 Base(
_width), triggered(false), oldStamp(0),
127 void finalize()
override { oldStamp =
event->triggeredStamp(); }
132 uint64_t newStamp =
event->triggeredStamp();
133 triggered = (oldStamp != newStamp);
139 template <
typename T,
typename Base>
140 class TraceValFxnumBase :
public Base
149 oldVal(_t->m_params.type_params(), _t->m_params.enc(),
150 _t->m_params.cast_switch(), 0)
158 this->_width =
t->wl();
172 template <
typename Base>
181 template <
typename Base>
212 virtual void trace(
bool delta) = 0;
219 const std::string &
name) = 0;
221 const std::string &
name) = 0;
223 const std::string &
name) = 0;
225 const std::string &
name) = 0;
227 const std::string &
name) = 0;
229 const std::string &
name) = 0;
231 const std::string &
name) = 0;
233 const std::string &
name) = 0;
235 const std::string &
name) = 0;
237 const std::string &
name) = 0;
239 const std::string &
name) = 0;
242 const std::string &
name) = 0;
244 const std::string &
name) = 0;
269 const std::string &
name,
270 const char **literals) = 0;
272 virtual void writeComment(
const std::string &comment) = 0;
277 #endif // __SYSTEMC_UTILS_TRACEFILE_HH__