Base class for report message element. Defines common interface.
uvm_report_message_element_base | Base class for report message element. |
uvm_report_message_int_element | Message element class for integral type |
uvm_report_message_string_element | Message element class for string type |
uvm_report_message_object_element | Message element class for object type |
uvm_report_message_element_container | A container used by report message to contain the dynamically added elements, with APIs to add and delete the elements. |
uvm_report_message | The uvm_report_message is the basic UVM object message class. |
virtual function string get_name()
virtual function uvm_action get_action()
virtual function void set_action( uvm_action action )
Get or set the authorized action for the element
Message element class for integral type
uvm_report_message_int_element | |||
Message element class for integral type | |||
Class Hierarchy | |||
| |||
Class Declaration | |||
| |||
Methods | |||
get_value | |||
set_value | Get or set the value (integral type) of the element, with size and radix |
virtual function uvm_bitstream_t get_value( output int size, output uvm_radix_enum radix )
virtual function void set_value( uvm_bitstream_t value, int size, uvm_radix_enum radix )
Get or set the value (integral type) of the element, with size and radix
Message element class for string type
uvm_report_message_string_element | |||
Message element class for string type | |||
Class Hierarchy | |||
| |||
Class Declaration | |||
| |||
Methods | |||
get_value | |||
set_value | Get or set the value (string type) of the element |
virtual function string get_value()
virtual function void set_value( string value )
Get or set the value (string type) of the element
Message element class for object type
uvm_report_message_object_element | |||
Message element class for object type | |||
Class Hierarchy | |||
| |||
Class Declaration | |||
| |||
Methods | |||
get_value | Get the value (object reference) of the element | ||
set_value | Get or set the value (object reference) of the element |
virtual function void set_value( uvm_object value )
Get or set the value (object reference) of the element
A container used by report message to contain the dynamically added elements, with APIs to add and delete the elements.
uvm_report_message_element_container | ||||
A container used by report message to contain the dynamically added elements, with APIs to add and delete the elements. | ||||
Class Hierarchy | ||||
| ||||
Class Declaration | ||||
| ||||
Methods | ||||
new | Create a new uvm_report_message_element_container object | |||
size | Returns the size of the container, i.e. | |||
delete | Delete the index-th element in the container | |||
delete_elements | Delete all the elements in the container | |||
get_elements | Get all the elements from the container and put them in a queue | |||
add_int | This method adds an integral type of the name name and value value to the container. | |||
add_string | This method adds a string of the name name and value value to the message. | |||
add_object | This method adds a uvm_object of the name name and reference obj to the message. |
function new( string name = "element_container" )
Create a new uvm_report_message_element_container object
Get all the elements from the container and put them in a queue
virtual function void add_int( string name, uvm_bitstream_t value, int size, uvm_radix_enum radix, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds an integral type of the name name and value value to the container. The required size field indicates the size of value. The required radix field determines how to display and record the field. The optional print/record bit is to specify whether the element will be printed/recorded.
virtual function void add_string( string name, string value, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds a string of the name name and value value to the message. The optional print/record bit is to specify whether the element will be printed/recorded.
virtual function void add_object( string name, uvm_object obj, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds a uvm_object of the name name and reference obj to the message. The optional print/record bit is to specify whether the element will be printed/recorded.
The uvm_report_message is the basic UVM object message class. It provides the fields that are common to all messages. It also has a message element container and provides the APIs necessary to add integral types, strings and uvm_objects to the container. The report message object can be initialized with the common fields, and passes through the whole reporting system (i.e. report object, report handler, report server, report catcher, etc) as an object. The additional elements can be added/deleted to/from the message object anywhere in the reporting system, and can be printed or recorded along with the common fields.
uvm_report_message | ||||
The uvm_report_message is the basic UVM object message class. | ||||
Class Hierarchy | ||||
| ||||
Class Declaration | ||||
| ||||
new | Creates a new uvm_report_message object. | |||
new_report_message | Creates a new uvm_report_message object. | |||
The uvm_report_message implements uvm_object::do_print() such that print method provides UVM printer formatted output of the message. | ||||
Infrastructure References | ||||
get_report_object | ||||
set_report_object | Get or set the uvm_report_object that originated the message. | |||
get_report_handler | ||||
set_report_handler | Get or set the uvm_report_handler that is responsible for checking whether the message is enabled, should be upgraded/downgraded, etc. | |||
get_report_server | ||||
set_report_server | Get or set the uvm_report_server that is responsible for servicing the message’s actions. | |||
Message Fields | ||||
get_severity | ||||
set_severity | Get or set the severity (UVM_INFO, UVM_WARNING, UVM_ERROR or UVM_FATAL) of the message. | |||
get_id | ||||
set_id | Get or set the id of the message. | |||
get_message | ||||
set_message | Get or set the user message content string. | |||
get_verbosity | ||||
set_verbosity | Get or set the message threshold value. | |||
get_filename | ||||
set_filename | Get or set the file from which the message originates. | |||
get_line | ||||
set_line | Get or set the line in the file from which the message originates. | |||
get_context | ||||
set_context | Get or set the optional user-supplied string that is meant to convey the context of the message. | |||
get_action | ||||
set_action | Get or set the action(s) that the uvm_report_server should perform for this message. | |||
get_file | ||||
set_file | Get or set the file that the message is to be written to when the message’s action is UVM_LOG. | |||
get_element_container | Get the element_container of the message | |||
set_report_message | Set all the common fields of the report message in one shot. | |||
Message Element APIs | ||||
add_int | This method adds an integral type of the name name and value value to the message. | |||
add_string | This method adds a string of the name name and value value to the message. | |||
add_object | This method adds a uvm_object of the name name and reference obj to the message. |
static function uvm_report_message new_report_message( string name = "uvm_report_message" )
Creates a new uvm_report_message object. This function is the same as new(), but keeps the random stability.
virtual function void do_print( uvm_printer printer )
The uvm_report_message implements uvm_object::do_print() such that print method provides UVM printer formatted output of the message. A snippet of example output is shown here:
-------------------------------------------------------- Name Type Size Value -------------------------------------------------------- uvm_report_message uvm_report_message - @532 severity uvm_severity 2 UVM_INFO id string 10 TEST_ID message string 12 A message... verbosity uvm_verbosity 32 UVM_LOW filename string 7 test.sv line integral 32 'd58 context_name string 0 "" color string 3 red my_int integral 32 'd5 my_string string 3 foo my_obj my_class - @531 foo integral 32 'd3 bar string 8 hi there
virtual function uvm_report_object get_report_object()
virtual function void set_report_object( uvm_report_object ro )
Get or set the uvm_report_object that originated the message.
virtual function uvm_report_handler get_report_handler()
virtual function void set_report_handler( uvm_report_handler rh )
Get or set the uvm_report_handler that is responsible for checking whether the message is enabled, should be upgraded/downgraded, etc.
virtual function uvm_report_server get_report_server()
virtual function void set_report_server( uvm_report_server rs )
Get or set the uvm_report_server that is responsible for servicing the message’s actions.
virtual function uvm_severity get_severity()
virtual function void set_severity( uvm_severity sev )
Get or set the severity (UVM_INFO, UVM_WARNING, UVM_ERROR or UVM_FATAL) of the message. The value of this field is determined via the API used (`uvm_info(), `uvm_waring(), etc.) and populated for the user.
virtual function string get_id()
virtual function void set_id( string id )
Get or set the id of the message. The value of this field is completely under user discretion. Users are recommended to follow a consistent convention. Settings in the uvm_report_handler allow various messaging controls based on this field. See uvm_report_handler.
virtual function string get_message()
virtual function void set_message( string msg )
Get or set the user message content string.
virtual function int get_verbosity()
virtual function void set_verbosity( int ver )
Get or set the message threshold value. This value is compared against settings in the uvm_report_handler to determine whether this message should be executed.
virtual function string get_filename()
virtual function void set_filename( string fname )
Get or set the file from which the message originates. This value is automatically populated by the messaging macros.
virtual function int get_line()
virtual function void set_line( int ln )
Get or set the line in the file from which the message originates. This value is automatically populate by the messaging macros.
virtual function string get_context()
virtual function void set_context( string cn )
Get or set the optional user-supplied string that is meant to convey the context of the message. It can be useful in scopes that are not inherently UVM like modules, interfaces, etc.
virtual function uvm_action get_action()
virtual function void set_action( uvm_action act )
Get or set the action(s) that the uvm_report_server should perform for this message. This field is populated by the uvm_report_handler during message execution flow.
virtual function UVM_FILE get_file()
virtual function void set_file( UVM_FILE fl )
Get or set the file that the message is to be written to when the message’s action is UVM_LOG. This field is populated by the uvm_report_handler during message execution flow.
virtual function uvm_report_message_element_container get_element_container()
Get the element_container of the message
virtual function void set_report_message( uvm_severity severity, string id, string message, int verbosity, string filename, int line, string context_name )
Set all the common fields of the report message in one shot.
virtual function void add_int( string name, uvm_bitstream_t value, int size, uvm_radix_enum radix, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds an integral type of the name name and value value to the message. The required size field indicates the size of value. The required radix field determines how to display and record the field. The optional print/record bit is to specify whether the element will be printed/recorded.
virtual function void add_string( string name, string value, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds a string of the name name and value value to the message. The optional print/record bit is to specify whether the element will be printed/recorded.
virtual function void add_object( string name, uvm_object obj, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds a uvm_object of the name name and reference obj to the message. The optional print/record bit is to specify whether the element will be printed/recorded.
Base class for report message element.
virtual class uvm_report_message_element_base
Message element class for integral type
class uvm_report_message_int_element extends uvm_report_message_element_base
Message element class for string type
class uvm_report_message_string_element extends uvm_report_message_element_base
Message element class for object type
class uvm_report_message_object_element extends uvm_report_message_element_base
A container used by report message to contain the dynamically added elements, with APIs to add and delete the elements.
class uvm_report_message_element_container extends uvm_object
The uvm_report_message is the basic UVM object message class.
class uvm_report_message extends uvm_object
virtual function uvm_bitstream_t get_value( output int size, output uvm_radix_enum radix )
Get or set the value (integral type) of the element, with size and radix
virtual function void set_value( uvm_bitstream_t value, int size, uvm_radix_enum radix )
virtual function string get_value()
Get or set the value (string type) of the element
virtual function void set_value( string value )
Get the value (object reference) of the element
virtual function uvm_object get_value()
Get or set the value (object reference) of the element
virtual function void set_value( uvm_object value )
The uvm_void class is the base class for all UVM classes.
virtual class uvm_void
The uvm_object class is the base class for all UVM data and hierarchical classes.
virtual class uvm_object extends uvm_void
Create a new uvm_report_message_element_container object
function new( string name = "element_container" )
Returns the size of the container, i.e.
virtual function int size()
Delete the index-th element in the container
virtual function void delete( int index )
Delete all the elements in the container
virtual function void delete_elements()
This method adds an integral type of the name name and value value to the container.
virtual function void add_int( string name, uvm_bitstream_t value, int size, uvm_radix_enum radix, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds a string of the name name and value value to the message.
virtual function void add_string( string name, string value, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds a uvm_object of the name name and reference obj to the message.
virtual function void add_object( string name, uvm_object obj, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
Creates a new uvm_report_message object.
function new( string name = "uvm_report_message" )
Creates a new uvm_report_message object.
static function uvm_report_message new_report_message( string name = "uvm_report_message" )
The uvm_report_message implements uvm_object::do_print() such that print method provides UVM printer formatted output of the message.
virtual function void do_print( uvm_printer printer )
The do_print method is the user-definable hook called by print and sprint that allows users to customize what gets printed or sprinted beyond the field information provided by the `uvm_field_* macros, Utility and Field Macros for Components and Objects.
virtual function void do_print ( uvm_printer printer )
virtual function uvm_report_object get_report_object()
Get or set the uvm_report_object that originated the message.
virtual function void set_report_object( uvm_report_object ro )
virtual function uvm_report_handler get_report_handler()
Get or set the uvm_report_handler that is responsible for checking whether the message is enabled, should be upgraded/downgraded, etc.
virtual function void set_report_handler( uvm_report_handler rh )
virtual function uvm_report_server get_report_server()
Get or set the uvm_report_server that is responsible for servicing the message’s actions.
virtual function void set_report_server( uvm_report_server rs )
virtual function uvm_severity get_severity()
Get or set the severity (UVM_INFO, UVM_WARNING, UVM_ERROR or UVM_FATAL) of the message.
virtual function void set_severity( uvm_severity sev )
virtual function string get_id()
Get or set the id of the message.
virtual function void set_id( string id )
virtual function string get_message()
Get or set the user message content string.
virtual function void set_message( string msg )
virtual function int get_verbosity()
Get or set the message threshold value.
virtual function void set_verbosity( int ver )
virtual function string get_filename()
Get or set the file from which the message originates.
virtual function void set_filename( string fname )
virtual function int get_line()
Get or set the line in the file from which the message originates.
virtual function void set_line( int ln )
virtual function string get_context()
Get or set the optional user-supplied string that is meant to convey the context of the message.
virtual function void set_context( string cn )
virtual function uvm_action get_action()
Get or set the action(s) that the uvm_report_server should perform for this message.
virtual function void set_action( uvm_action act )
virtual function UVM_FILE get_file()
Get or set the file that the message is to be written to when the message’s action is UVM_LOG.
virtual function void set_file( UVM_FILE fl )
Get the element_container of the message
virtual function uvm_report_message_element_container get_element_container()
Set all the common fields of the report message in one shot.
virtual function void set_report_message( uvm_severity severity, string id, string message, int verbosity, string filename, int line, string context_name )
This method adds an integral type of the name name and value value to the message.
virtual function void add_int( string name, uvm_bitstream_t value, int size, uvm_radix_enum radix, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds a string of the name name and value value to the message.
virtual function void add_string( string name, string value, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
This method adds a uvm_object of the name name and reference obj to the message.
virtual function void add_object( string name, uvm_object obj, uvm_action action = (UVM_LOG|UVM_RM_RECORD) )
The uvm_report_handler is the class to which most methods in uvm_report_object delegate.
class uvm_report_handler extends uvm_object