scc 2025.09
SystemC components library
scv_tr Namespace Reference

SystemC Verification Library (SCV) Transaction Recording. More...

Classes

struct  AttrDesc
class  SQLiteDB
class  scv_extensions< tlm::tlm_command >
class  scv_extensions< tlm::tlm_response_status >
class  scv_extensions< tlm::tlm_gp_option >
class  scv_extensions< tlm::scc::scv::tlm_phase_enum >
class  scv_extensions< tlm::tlm_sync_enum >
class  scv_extensions< tlm::scc::scv::tlm_gp_data >
class  scv_extensions< tlm::tlm_dmi::dmi_access_e >
class  scv_extensions< tlm::scc::scv::tlm_dmi_data >

Typedefs

using data_type = scv_extensions_if::data_type

Enumerations

enum  EventType {
  BEGIN , RECORD , END , BEGIN ,
  RECORD , END , BEGIN , RECORD ,
  END , BEGIN , RECORD , END
}
enum  EventType {
  BEGIN , RECORD , END , BEGIN ,
  RECORD , END , BEGIN , RECORD ,
  END , BEGIN , RECORD , END
}
enum  EventType {
  BEGIN , RECORD , END , BEGIN ,
  RECORD , END , BEGIN , RECORD ,
  END , BEGIN , RECORD , END
}
enum  EventType {
  BEGIN , RECORD , END , BEGIN ,
  RECORD , END , BEGIN , RECORD ,
  END , BEGIN , RECORD , END
}

Functions

void scv_tr_binary_init ()
void scv_tr_compressed_init ()
 initializes the infrastructure to use a gzip compressed text based transaction recording database
void scv_tr_sqlite_init ()
 initializes the infrastructure to use a SQLite based transaction recording database
void scv_tr_plain_init ()
 initializes the infrastructure to use a plain text based transaction recording database
void scv_tr_lz4_init ()
 initializes the infrastructure to use a LZ4 compressed text based transaction recording database
void scv_tr_ftr_init (bool compressed)
void scv_tr_mtc_init ()
 initializes the infrastructure to use a compressed text based transaction recording database with a multithreaded writer
uint64_t getStringId (std::string const &s)
void recordAttribute (uint64_t id, EventType event, const string &name, data_type type, const string &value)
void recordAttribute (uint64_t id, EventType event, const string &name, data_type type, long long value)
void recordAttribute (uint64_t id, EventType event, const string &name, data_type type, double value)

Variables

constexpr auto SQLITEWRAPPER_ERROR = 1000
constexpr auto with_transactions = false

Detailed Description

SystemC Verification Library (SCV) Transaction Recording.

Typedef Documentation

◆ data_type

using scv_tr::data_type = scv_extensions_if::data_type

Definition at line 82 of file scv_tr_binary.cpp.

Enumeration Type Documentation

◆ EventType [1/4]

enum scv_tr::EventType

Definition at line 81 of file scv_tr_binary.cpp.

◆ EventType [2/4]

enum scv_tr::EventType

Definition at line 45 of file scv_tr_lz4.cpp.

◆ EventType [3/4]

enum scv_tr::EventType

Definition at line 43 of file scv_tr_mtc.cpp.

◆ EventType [4/4]

enum scv_tr::EventType

Definition at line 137 of file scv_tr_sqlite.cpp.

Function Documentation

◆ getStringId()

uint64_t scv_tr::getStringId ( std::string const & s)

Definition at line 247 of file scv_tr_sqlite.cpp.

◆ recordAttribute() [1/3]

void scv_tr::recordAttribute ( uint64_t id,
EventType event,
const string & name,
data_type type,
const string & value )

Definition at line 279 of file scv_tr_sqlite.cpp.

◆ recordAttribute() [2/3]

void scv_tr::recordAttribute ( uint64_t id,
EventType event,
const string & name,
data_type type,
double value )
inline

Definition at line 296 of file scv_tr_sqlite.cpp.

◆ recordAttribute() [3/3]

void scv_tr::recordAttribute ( uint64_t id,
EventType event,
const string & name,
data_type type,
long long value )
inline

Definition at line 292 of file scv_tr_sqlite.cpp.

◆ scv_tr_binary_init()

void scv_tr::scv_tr_binary_init ( )

Definition at line 543 of file scv_tr_binary.cpp.

◆ scv_tr_compressed_init()

void scv_tr::scv_tr_compressed_init ( )

initializes the infrastructure to use a gzip compressed text based transaction recording database

TODO: add a multithreaded writer

Definition at line 556 of file scv_tr_compressed.cpp.

◆ scv_tr_ftr_init()

void scv_tr::scv_tr_ftr_init ( bool compressed)

Definition at line 250 of file scv_tr_ftr.cpp.

◆ scv_tr_lz4_init()

void scv_tr::scv_tr_lz4_init ( )

initializes the infrastructure to use a LZ4 compressed text based transaction recording database

TODO: add a multithreaded writer

Definition at line 394 of file scv_tr_lz4.cpp.

◆ scv_tr_mtc_init()

void scv_tr::scv_tr_mtc_init ( )

initializes the infrastructure to use a compressed text based transaction recording database with a multithreaded writer

Definition at line 327 of file scv_tr_mtc.cpp.

◆ scv_tr_plain_init()

void scv_tr::scv_tr_plain_init ( )

initializes the infrastructure to use a plain text based transaction recording database

TODO: add a multithreaded writer

Definition at line 402 of file scv_tr_lz4.cpp.

◆ scv_tr_sqlite_init()

void scv_tr::scv_tr_sqlite_init ( )

initializes the infrastructure to use a SQLite based transaction recording database

Definition at line 495 of file scv_tr_sqlite.cpp.

Variable Documentation

◆ SQLITEWRAPPER_ERROR

auto scv_tr::SQLITEWRAPPER_ERROR = 1000
constexpr

Definition at line 32 of file scv_tr_sqlite.cpp.

◆ with_transactions

auto scv_tr::with_transactions = false
constexpr

Definition at line 33 of file scv_tr_sqlite.cpp.