14#ifndef SIMICS_SYSTEMC_TOOLS_SC_TRANSACTION_TRACKER_EXTENSION_H
15#define SIMICS_SYSTEMC_TOOLS_SC_TRANSACTION_TRACKER_EXTENSION_H
34 :
public tlm::tlm_extension<TransactionTrackerExtension> {
38 tlm::tlm_extension_base *
clone()
const override;
39 void copy_from(tlm::tlm_extension_base
const &extension)
override;
44 tlm::tlm_generic_payload
const *trans,
45 sc_core::sc_object
const *socket_sc_obj);
55 bool operator()(
const char *str1,
const char *str2)
const {
56 return std::strcmp(str1, str2) < 0;
60 struct PayloadAttributes {
61 sc_dt::uint64 address;
65 const char *socket_name;
66 const sc_core::sc_object *socket_obj;
67 PayloadAttributes attributes;
70 typedef std::vector<Sighting> Sightings;
71 typedef std::map<const char *, Sightings, CompareStr> ToolSightings;
72 ToolSightings tool_sightings_;
74 sc_core::sc_object
const *socket_obj_;