uvm_report_handler

The uvm_report_handler is the class to which most methods in uvm_report_object delegate.  It stores the maximum verbosity, actions, and files that affect the way reports are handled.

The report handler is not intended for direct use.  See uvm_report_object for information on the UVM reporting mechanism.

The relationship between uvm_report_object (a base class for uvm_component) and uvm_report_handler is typically one to one, but it can be many to one if several uvm_report_objects are configured to use the same uvm_report_handler_object.  See uvm_report_object::set_report_handler.

The relationship between uvm_report_handler and uvm_report_server is many to one.

Summary
uvm_report_handler
The uvm_report_handler is the class to which most methods in uvm_report_object delegate.
Class Hierarchy
uvm_report_handler
Class Declaration
class uvm_report_handler extends uvm_object
newCreates and initializes a new uvm_report_handler object.
printThe uvm_report_handler implements the uvm_object::do_print() such that print method provides UVM printer formatted output of the current configuration.
Message Processing
process_report_messageThis is the common handler method used by the four core reporting methods (e.g.
Convenience Methods
format_actionReturns a string representation of the action, e.g., “DISPLAY”.

new

function new(
    string  name  =  "uvm_report_handler"
)

Creates and initializes a new uvm_report_handler object.

print

virtual function void do_print (
    uvm_printer  printer
)

The uvm_report_handler implements the uvm_object::do_print() such that print method provides UVM printer formatted output of the current configuration.  A snippet of example output is shown here:

uvm_test_top                uvm_report_handler  -     @555
  max_verbosity_level       uvm_verbosity       32    UVM_FULL
  id_verbosities            uvm_pool            3     -
    [ID1]                   uvm_verbosity       32    UVM_LOW
  severity_id_verbosities   array               4     -
    [UVM_INFO:ID4]          int                 32    501
  id_actions                uvm_pool            2     -
    [ACT_ID]                uvm_action          32    DISPLAY LOG COUNT
  severity_actions          array               4     -
    [UVM_INFO]              uvm_action          32    DISPLAY
    [UVM_WARNING]           uvm_action          32    DISPLAY RM_RECORD COUNT
    [UVM_ERROR]             uvm_action          32    DISPLAY COUNT
    [UVM_FATAL]             uvm_action          32    DISPLAY EXIT
  default_file_handle       int                 32    'h1

process_report_message

virtual function void process_report_message(
    uvm_report_message  report_message
)

This is the common handler method used by the four core reporting methods (e.g.  uvm_report_error) in uvm_report_object.

format_action

static function string format_action(
    uvm_action  action
)

Returns a string representation of the action, e.g., “DISPLAY”.

virtual class uvm_void
The uvm_void class is the base class for all UVM classes.
virtual class uvm_object extends uvm_void
The uvm_object class is the base class for all UVM data and hierarchical classes.
class uvm_report_handler extends uvm_object
The uvm_report_handler is the class to which most methods in uvm_report_object delegate.
class uvm_report_object extends uvm_object
The uvm_report_object provides an interface to the UVM reporting facility.
function new(
    string  name  =  "uvm_report_handler"
)
Creates and initializes a new uvm_report_handler object.
virtual function void do_print (
    uvm_printer  printer
)
The uvm_report_handler implements the uvm_object::do_print() such that print method provides UVM printer formatted output of the current configuration.
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 process_report_message(
    uvm_report_message  report_message
)
This is the common handler method used by the four core reporting methods (e.g.
static function string format_action(
    uvm_action  action
)
Returns a string representation of the action, e.g., “DISPLAY”.
function void set_report_handler(
    uvm_report_handler  handler
)
Sets the report handler, overwriting the default instance.
uvm_report_server is a global server that processes all of the reports generated by a uvm_report_handler.
function void uvm_report_error(
    string  id,   
    string  message,   
    int  verbosity  =  UVM_LOW,
    string  filename  =  "",
    int  line  =  0,
    string  context_name  =  "",
    bit  report_enabled_checked  =  0
)