Class uvm_coreservice_t
Functions
- virtual function uvm_factory get_factory ( ) [source]
intended to return the currently enabled uvm factory,
- virtual function void set_factory ( uvm_factory f ) [source]
intended to set the current uvm factory
- virtual function uvm_report_server get_report_server ( ) [source]
intended to return the current global report_server
- virtual function void set_report_server ( uvm_report_server server ) [source]
intended to set the central report server to server
- virtual function uvm_tr_database get_default_tr_database ( ) [source]
intended to return the current default record database
- virtual function void set_default_tr_database ( uvm_tr_database db ) [source]
intended to set the current default record database to db
- virtual function void set_component_visitor ( uvm_visitor#(uvm_component) v ) [source]
intended to set the component visitor to v (this visitor is being used for the traversal at end_of_elaboration_phase for instance for name checking)
- virtual function uvm_visitor get_component_visitor ( ) [source]
intended to retrieve the current component visitor see set_component_visitor
- static function uvm_coreservice_t get ( ) [source]
Returns an instance providing the uvm_coreservice_t interface. The actual type of the instance is determined by the define UVM_CORESERVICE_TYPE.
define UVM_CORESERVICE_TYPE uvm_blocking_coreservice class uvm_blocking_coreservice extends uvm_default_coreservice_t; virtual function void set_factory(uvm_factory f); uvm_error("FACTORY","you are not allowed to override the factory") endfunction endclass
×
The singleton instance of uvm_coreservice_t provides a common point for all central uvm services such as uvm_factory, uvm_report_server, ... The service class provides a static <::get> which returns an instance adhering to uvm_coreservice_t the rest of the set_<facility> get_<facility> pairs provide access to the internal uvm services
Custom implementations of uvm_coreservice_t can be included in uvm_pkg::* and can selected via the define UVM_CORESERVICE_TYPE. They cannot reside in another package.