#include "scv/scv_util.h"#include "scv/scv_config.h"#include <systemc.h>#include "scv/scv_introspection.h"#include "scv/scv_debug.h"Include dependency graph for scv_introspection.cpp:

Go to the source code of this file.
Defines | |
| #define | _SCV_DEFAULT_RW_SYSC(class_name, obj) |
| #define | _SCV_EXT_TYPE_FC_COMMON_I(type_id) |
| #define | _SCV_EXT_TYPE_FC_COMMON_EXT_I(basic_type, type_id, id) |
| #define | _SCV_EXT_TYPE_FC_I(basic_type, type_id, id) |
| #define | _SCV_EXT_TYPE_1_FC_I(basic_type, type_id, id) |
| #define | _SCV_EXT_TYPE_D_FC_I(basic_type, type_id, id) |
| #define | _SCV_EXT_RW_FC_BASE_I(T, type_id) |
| #define | _SCV_EXT_RW_FC_ASSIGN_I(type_name, type_id, arg_name) |
| #define | _SCV_EXT_RW_FC_BAD_ASSIGN_I(type_name, type_id, arg_name) |
| #define | _SCV_EXT_RW_FC_GET_VALUE_I(type_name, type_id, arg_name) |
| #define | _SCV_EXT_RW_FC_I(basic_type, type_id, bitwidth) |
| #define | _SCV_EXT_RW_FC_ASSIGNS_SYSC_I(type_id, bitwidth) |
| #define | _SCV_EXT_RW_FC_BAD_ASSIGNS_SYSC_I(type_name, type_id) |
| #define | _SCV_EXT_RW_FC_ASSIGNS_I(type_name, type_id, bitwidth) |
| #define | _SCV_EXT_RW_FC_ASSIGNS_I(type_name, type_id, dummy) |
| #define | _SCV_EXT_RW_FC_ASSIGNS_I(type_name, type_id, dummy) |
| #define | _SCV_EXT_RAND_FC_COMMON_I(T, type_id) |
| #define | _SCV_EXT_RAND_FC_EXTRA1_I(T, type_id) |
| #define | _SCV_EXT_RAND_FC_EXTRA2_I(T, type_id) |
| #define | _SCV_EXT_RAND_FC_I(T, type_id) |
| #define | _SCV_EXT_RAND_FC_1_I(T, type_id) |
| #define | _SCV_EXT_RAND_FC_D_I(T, type_id) |
| #define | _SCV_EXT_CALLBACKS_FC_I(basic_type, type_id) |
| #define | _SCV_EXT_CALLBACKS_FC_1_I(basic_type, type_id) _SCV_EXT_CALLBACKS_FC_I(basic_type,type_id) \ |
| #define | _SCV_EXT_CALLBACKS_FC_D_I(basic_type, type_id) _SCV_EXT_CALLBACKS_FC_I(basic_type,type_id) \ |
Functions | |
| void | _scv_constraint_wrapup (scv_extensions_if *e) |
| void | _scv_set_constraint (scv_extensions_if *s, bool mode) |
| template<typename T> bool | check_mode (scv_extensions_if::mode_t t, scv_extensions_if *e, const string &name, _scv_distribution< T > *dist) |
| _SCV_EXT_TYPE_1_FC_I (bool, bool, BOOLEAN) | |
| _SCV_EXT_TYPE_FC_I (char, char, INTEGER) | |
| _SCV_EXT_TYPE_FC_I (short, short, INTEGER) | |
| _SCV_EXT_TYPE_FC_I (int, int, INTEGER) | |
| _SCV_EXT_TYPE_FC_I (long, long, INTEGER) | |
| _SCV_EXT_TYPE_FC_I (unsigned char, unsigned_char, UNSIGNED) | |
| _SCV_EXT_TYPE_FC_I (float, float, FLOATING_POINT_NUMBER) | |
| _SCV_EXT_TYPE_FC_I (double, double, FLOATING_POINT_NUMBER) | |
| _SCV_EXT_TYPE_FC_I (string, string, STRING) | |
| _SCV_EXT_RW_FC_I (bool, bool, 1) | |
| _SCV_EXT_RW_FC_I (char, char, 8) | |
| _SCV_EXT_RW_FC_I (unsigned char, unsigned_char, 8) | |
| _SCV_EXT_RW_FC_I (short, short, 16) | |
| _SCV_EXT_RW_FC_I (unsigned short, unsigned_short, 16) | |
| _SCV_EXT_RW_FC_I (int, int, 32) | |
| _SCV_EXT_RW_FC_I (unsigned int, unsigned_int, 32) | |
| _SCV_EXT_RW_FC_I (long, long, 32) | |
| _SCV_EXT_RW_FC_I (long long, long_long, 64) | |
| _SCV_EXT_RW_FC_I (unsigned long long, unsigned_long_long, 64) | |
| _SCV_EXT_RW_FC_I (float, float, dummy) | |
| _SCV_EXT_RW_FC_I (double, double, dummy) | |
| _SCV_EXT_RW_FC_I (string, string, dummy) | |
| _SCV_EXT_RAND_FC_I (bool, bool) | |
| _SCV_EXT_RAND_FC_I (char, char) | |
| _SCV_EXT_RAND_FC_I (unsigned char, unsigned_char) | |
| _SCV_EXT_RAND_FC_I (short, short) | |
| _SCV_EXT_RAND_FC_I (int, int) | |
| _SCV_EXT_RAND_FC_I (long, long) | |
| _SCV_EXT_RAND_FC_I (float, float) | |
| _SCV_EXT_RAND_FC_I (double, double) | |
| _SCV_EXT_CALLBACKS_FC_I (bool, bool) | |
| _SCV_EXT_CALLBACKS_FC_I (char, char) | |
| _SCV_EXT_CALLBACKS_FC_I (unsigned char, unsigned_char) | |
| _SCV_EXT_CALLBACKS_FC_I (short, short) | |
| _SCV_EXT_CALLBACKS_FC_I (int, int) | |
| _SCV_EXT_CALLBACKS_FC_I (long, long) | |
| _SCV_EXT_CALLBACKS_FC_I (float, float) | |
| _SCV_EXT_CALLBACKS_FC_I (double, double) | |
|
|
Definition at line 357 of file scv_introspection.cpp. |
|
|
Definition at line 1491 of file scv_introspection.cpp. |
|
|
Definition at line 1495 of file scv_introspection.cpp. |
|
|
Value: _scv_extension_callbacks_ ## type_id::_scv_extension_callbacks_ ## type_id() {} \
_scv_extension_callbacks_ ## type_id::~_scv_extension_callbacks_ ## type_id() { \
if (this->_has_dynamic_data() && !this->get_parent()) \
this->_get_dynamic_data()->execute_callbacks(this, scv_extensions_if::DELETE); \
} \
\
scv_extensions_if::callback_h _scv_extension_callbacks_ ## type_id::_register_cb(scv_extensions_if::callback_base * c) { \
return s_add_callback(this->_get_dynamic_data(),c); \
} \
void _scv_extension_callbacks_ ## type_id::remove_cb(scv_extensions_if::callback_h id) { \
s_remove_callback(this->_get_dynamic_data(),id); \
} \Definition at line 1476 of file scv_introspection.cpp. |
|
|
Value: _SCV_EXT_RAND_FC_COMMON_I(T, type_id) \ _SCV_EXT_RAND_FC_EXTRA1_I(T, type_id) \ _SCV_EXT_RAND_FC_EXTRA2_I(T, type_id) Definition at line 1427 of file scv_introspection.cpp. |
|
|
Definition at line 1195 of file scv_introspection.cpp. |
|
|
Value: _SCV_EXT_RAND_FC_COMMON_I(T, type_id) \ _SCV_EXT_RAND_FC_EXTRA1_I(T, type_id) \ _SCV_EXT_RAND_FC_EXTRA2_I(T, type_id) Definition at line 1433 of file scv_introspection.cpp. |
|
|
Definition at line 1242 of file scv_introspection.cpp. |
|
|
Definition at line 1344 of file scv_introspection.cpp. |
|
|
Value: _SCV_EXT_RAND_FC_COMMON_I(T, type_id) \ _SCV_EXT_RAND_FC_EXTRA1_I(T, type_id) \ _SCV_EXT_RAND_FC_EXTRA2_I(T, type_id) Definition at line 1421 of file scv_introspection.cpp. |
|
|
Value: void _scv_extension_rw_ ## type_id::assign(arg_name i) \
{ *(this->_get_instance()) = i; this->trigger_value_change_cb(); } \Definition at line 657 of file scv_introspection.cpp. |
|
|
Definition at line 836 of file scv_introspection.cpp. |
|
|
Definition at line 836 of file scv_introspection.cpp. |
|
|
Definition at line 836 of file scv_introspection.cpp. |
|
|
Definition at line 730 of file scv_introspection.cpp. |
|
|
Value: void _scv_extension_rw_ ## type_id::assign(arg_name i) \ { _SCV_RW_ERROR(assign,arg_name,type_name); } \ Definition at line 662 of file scv_introspection.cpp. |
|
|
Definition at line 731 of file scv_introspection.cpp. |
|
|
Value: _scv_extension_rw_ ## type_id::_scv_extension_rw_ ## type_id() {} \
_scv_extension_rw_ ## type_id::~_scv_extension_rw_ ## type_id() {} \
\
inline const T* _scv_extension_rw_ ## type_id::get_instance() const { return _instance; } \
inline T* _scv_extension_rw_ ## type_id::get_instance() { return _instance; } \
T* _scv_extension_rw_ ## type_id::_get_instance() const { return _instance; } \
\
void _scv_extension_rw_ ## type_id::_set_instance(T* p) { _instance = p; _set_instance_core_wrap(p); } \
void _scv_extension_rw_ ## type_id::_set_instance_core_wrap(void*) {} \
void _scv_extension_rw_ ## type_id::_set_as_field(_scv_extension_util_record * parent, T* p, \
const string& name) { \
if (p) _set_instance(p); \
else if ( ! this->_get_parent() ) { this->_set_parent(parent,name); parent->_add_field(this); } \
} \
\
const T& _scv_extension_rw_ ## type_id::read() { return *get_instance(); } \
void _scv_extension_rw_ ## type_id::write(const T& rhs) { *_get_instance() = rhs; this->trigger_value_change_cb(); } \Definition at line 633 of file scv_introspection.cpp. |
|
|
Value: void _scv_extension_rw_ ## type_id::get_value(arg_name& i) \
{ i = *(this->_get_instance()); } \Definition at line 666 of file scv_introspection.cpp. |
|
|
Value: _SCV_EXT_RW_FC_BASE_I(basic_type,type_id) \ _SCV_EXT_RW_FC_ASSIGNS_I(basic_type,type_id,bitwidth); \ Definition at line 679 of file scv_introspection.cpp. |
|
|
Value: _SCV_EXT_TYPE_FC_COMMON_EXT_I(basic_type,type_id,id) \ int _scv_extension_type_ ## type_id::get_bitwidth() const \ { return 1; } \ Definition at line 574 of file scv_introspection.cpp. |
|
|
Value: _SCV_EXT_TYPE_FC_COMMON_EXT_I(basic_type,type_id,id) \ _scv_extension_type_ ## type_id::_scv_extension_type_ ## type_id() : _bitwidth(0) {} \ _scv_extension_type_ ## type_id::~_scv_extension_type_ ## type_id() {} \ int _scv_extension_type_ ## type_id::get_bitwidth() const \ { return this->_bitwidth; } Definition at line 581 of file scv_introspection.cpp. |
|
|
Value: _SCV_EXT_TYPE_FC_COMMON_I(type_id) \ const char *_scv_extension_type_ ## type_id::get_type_name() const { \ static const char *s = strdup(#basic_type); \ return s; \ } \ scv_extension_type_if::data_type _scv_extension_type_ ## type_id::get_type() const \ { return scv_extensions_if::id; } \ Definition at line 556 of file scv_introspection.cpp. |
|
|
Value: int _scv_extension_type_ ## type_id::get_enum_size() const { return 0; } \ void _scv_extension_type_ ## type_id::get_enum_details(list<const char *>&, list<int>&) const {} \ const char *_scv_extension_type_ ## type_id::get_enum_string(int) const { return "_error"; } \ \ int _scv_extension_type_ ## type_id::get_num_fields() const { return 0; } \ scv_extensions_if *_scv_extension_type_ ## type_id::get_field(unsigned) { return 0; } \ const scv_extensions_if *_scv_extension_type_ ## type_id::get_field(unsigned) const { return 0; } \ \ scv_extensions_if *_scv_extension_type_ ## type_id::get_pointer() { return 0; } \ const scv_extensions_if *_scv_extension_type_ ## type_id::get_pointer() const { return 0; } \ \ int _scv_extension_type_ ## type_id::get_array_size() const { return 0; } \ scv_extensions_if *_scv_extension_type_ ## type_id::get_array_elt(int) { return 0; } \ const scv_extensions_if *_scv_extension_type_ ## type_id::get_array_elt(int) const { return 0; } \ \ scv_extensions_if *_scv_extension_type_ ## type_id::get_parent() { return this->_parent; } \ const scv_extensions_if *_scv_extension_type_ ## type_id::get_parent() const { return this->_parent; } \ Definition at line 536 of file scv_introspection.cpp. |
|
|
Value: _SCV_EXT_TYPE_FC_COMMON_EXT_I(basic_type,type_id,id) \ int _scv_extension_type_ ## type_id::get_bitwidth() const \ { return 8*sizeof(basic_type); } \ Definition at line 567 of file scv_introspection.cpp. |
|
|
Definition at line 3146 of file scv_constraint.cpp. References scv_constraint_manager::wrapup(). Referenced by _scv_extension_rand_enum::~_scv_extension_rand_enum(), and _scv_extension_rand_N< T >::~_scv_extension_rand_N(). |
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||
|
||||||||||||||||||||||||
1.2.18