File VhpiImpl.h

Defines

GEN_IDX_SEP_LHS "__"
GEN_IDX_SEP_RHS ""
check_vhpi_error()

do { \

__check_vhpi_error(__FILE__, __func__, __LINE__); \

} while (0)


Functions

int __check_vhpi_error(const char *file, const char *func, long line)
class VhpiCbHdl : public virtual GpiCbHdl

Subclassed by VhpiNextPhaseCbHdl, VhpiReadOnlyCbHdl, VhpiReadwriteCbHdl, VhpiShutdownCbHdl, VhpiStartupCbHdl, VhpiTimedCbHdl, VhpiValueCbHdl

Public Functions

VhpiCbHdl(GpiImplInterface *impl)
int arm_callback() override
int cleanup_callback() override

Protected Attributes

vhpiCbDataT cb_data
vhpiTimeT vhpi_time
class VhpiValueCbHdl : public VhpiCbHdl, public GpiValueCbHdl

Public Functions

VhpiValueCbHdl(GpiImplInterface *impl, VhpiSignalObjHdl *sig, int edge)
int cleanup_callback() override

Private Members

std::string initial_value
class VhpiTimedCbHdl : public VhpiCbHdl

Public Functions

VhpiTimedCbHdl(GpiImplInterface *impl, uint64_t time_ps)
int cleanup_callback() override
class VhpiReadOnlyCbHdl : public VhpiCbHdl

Public Functions

VhpiReadOnlyCbHdl(GpiImplInterface *impl)
class VhpiNextPhaseCbHdl : public VhpiCbHdl

Public Functions

VhpiNextPhaseCbHdl(GpiImplInterface *impl)
class VhpiStartupCbHdl : public VhpiCbHdl

Public Functions

VhpiStartupCbHdl(GpiImplInterface *impl)
int run_callback() override
int cleanup_callback() override
class VhpiShutdownCbHdl : public VhpiCbHdl

Public Functions

VhpiShutdownCbHdl(GpiImplInterface *impl)
int run_callback() override
int cleanup_callback() override
class VhpiReadwriteCbHdl : public VhpiCbHdl

Public Functions

VhpiReadwriteCbHdl(GpiImplInterface *impl)
class VhpiArrayObjHdl : public GpiObjHdl

Public Functions

VhpiArrayObjHdl(GpiImplInterface *impl, vhpiHandleT hdl, gpi_objtype_t objtype)
~VhpiArrayObjHdl() override
int initialise(std::string &name, std::string &fq_name) override
class VhpiObjHdl : public GpiObjHdl

Public Functions

VhpiObjHdl(GpiImplInterface *impl, vhpiHandleT hdl, gpi_objtype_t objtype)
~VhpiObjHdl() override
int initialise(std::string &name, std::string &fq_name) override
class VhpiSignalObjHdl : public GpiSignalObjHdl

Subclassed by VhpiLogicSignalObjHdl

Public Functions

VhpiSignalObjHdl(GpiImplInterface *impl, vhpiHandleT hdl, gpi_objtype_t objtype, bool is_const)
~VhpiSignalObjHdl() override
const char *get_signal_value_binstr() override
const char *get_signal_value_str() override
double get_signal_value_real() override
long get_signal_value_long() override
int set_signal_value(long value, gpi_set_action_t action) override
int set_signal_value(double value, gpi_set_action_t action) override
int set_signal_value_str(std::string &value, gpi_set_action_t action) override
int set_signal_value_binstr(std::string &value, gpi_set_action_t action) override
GpiCbHdl *value_change_cb(int edge) override
int initialise(std::string &name, std::string &fq_name) override

Protected Functions

vhpiEnumT chr2vhpi(char value)

Protected Attributes

vhpiValueT m_value
vhpiValueT m_binvalue
VhpiValueCbHdl m_rising_cb
VhpiValueCbHdl m_falling_cb
VhpiValueCbHdl m_either_cb
class VhpiLogicSignalObjHdl : public VhpiSignalObjHdl

Public Functions

VhpiLogicSignalObjHdl(GpiImplInterface *impl, vhpiHandleT hdl, gpi_objtype_t objtype, bool is_const)
int set_signal_value(long value, gpi_set_action_t action) override
int set_signal_value_binstr(std::string &value, gpi_set_action_t action) override
int initialise(std::string &name, std::string &fq_name) override
class VhpiIterator : public GpiIterator

Public Functions

VhpiIterator(GpiImplInterface *impl, GpiObjHdl *hdl)
~VhpiIterator() override
Status next_handle(std::string &name, GpiObjHdl **hdl, void **raw_hdl) override

Private Members

vhpiHandleT m_iterator
vhpiHandleT m_iter_obj
std::vector<vhpiOneToManyT> *selected
std::vector<vhpiOneToManyT>::iterator one2many

Private Static Attributes

GpiIteratorMapping<vhpiClassKindT, vhpiOneToManyT> iterate_over
class VhpiImpl : public GpiImplInterface

Public Functions

VhpiImpl(const std::string &name)
void sim_end() override
void get_sim_time(uint32_t *high, uint32_t *low) override
void get_sim_precision(int32_t *precision) override
const char *get_simulator_product() override
const char *get_simulator_version() override
GpiObjHdl *get_root_handle(const char *name) override
GpiIterator *iterate_handle(GpiObjHdl *obj_hdl, gpi_iterator_sel_t type) override
GpiCbHdl *register_timed_callback(uint64_t time_ps) override
GpiCbHdl *register_readonly_callback() override
GpiCbHdl *register_nexttime_callback() override
GpiCbHdl *register_readwrite_callback() override
int deregister_callback(GpiCbHdl *obj_hdl) override
GpiObjHdl *native_check_create(std::string &name, GpiObjHdl *parent) override
GpiObjHdl *native_check_create(int32_t index, GpiObjHdl *parent) override
GpiObjHdl *native_check_create(void *raw_hdl, GpiObjHdl *parent) override
const char *reason_to_string(int reason) override
const char *format_to_string(int format)
GpiObjHdl *create_gpi_obj_from_handle(vhpiHandleT new_hdl, std::string &name, std::string &fq_name)

Private Members

VhpiReadwriteCbHdl m_read_write
VhpiNextPhaseCbHdl m_next_phase
VhpiReadOnlyCbHdl m_read_only