//// The <run_test> method in uvm_top calls this method.purevirtualfunctionvoidreport_summarize(UVM_FILEfile=0);`ifndefUVM_NO_DEPRECATED// Function- summarize//virtualfunctionvoidsummarize(UVM_FILEfile=0);report_summarize(file);endfunction`endif// Function: set_server//
//// The <run_test> method in uvm_top calls this method.virtualfunctionvoidreport_summarize(UVM_FILEfile=0);stringid;stringname;stringoutput_str;stringq[$];uvm_report_catcher::summarize();q.push_back("\n--- UVM Report Summary ---\n\n");if(m_max_quit_count!=0)beginif(m_quit_count>=m_max_quit_count)q.push_back("Quit count reached!\n");q.push_back($sformatf("Quit count : %5d of %5d\n",m_quit_count,m_max_quit_count));endq.push_back("** Report counts by severity\n");
// The <run_test> method in uvm_top calls this method.// @uvm-ieee 1800.2-2020 auto 6.5.1.2.17purevirtualfunctionvoidreport_summarize(UVM_FILEfile=UVM_STDOUT);// Function -- NODOCS -- set_server//// Sets the global report server to use for reporting.//// This method is provided as a convenience wrapper around// setting the report server via the <uvm_coreservice_t::set_report_server>// method.//// In addition to setting the server this also copies the severity/id counts// from the current report_server to the new one//// | // Using the uvm_coreservice_t:// | uvm_coreservice_t cs;// | cs = uvm_coreservice_t::get();
endfunction// @uvm-compat Added for compatibility to uvm-1.1dfunctionvoiddump_server_state();this.report_summarize();endfunction:dump_server_stateendclass//------------------------------------------------------------------------------//// CLASS: uvm_default_report_server//// Default implementation of the UVM report server, as defined in section// 6.5.2 of 1800.2-2020//// @uvm-ieee 1800.2-2020 auto 6.5.2classuvm_default_report_serverextendsuvm_report_server;
// It prints the statistics for the active catchers.staticfunctionvoidsummarize();strings;stringq[$];if(do_report)beginq.push_back("\n--- UVM Report catcher Summary ---\n\n\n");q.push_back($sformatf("Number of demoted UVM_FATAL reports :%5d\n",m_demoted_fatal));q.push_back($sformatf("Number of demoted UVM_ERROR reports :%5d\n",m_demoted_error));q.push_back($sformatf("Number of demoted UVM_WARNING reports:%5d\n",m_demoted_warning));q.push_back($sformatf("Number of caught UVM_FATAL reports :%5d\n",m_caught_fatal));q.push_back($sformatf("Number of caught UVM_ERROR reports :%5d\n",m_caught_error));q.push_back($sformatf("Number of caught UVM_WARNING reports :%5d\n",m_caught_warning));`uvm_info_context("UVM/REPORT/CATCHER",`UVM_STRING_QUEUE_STREAMING_PACK(q),UVM_LOW,uvm_top)endendfunction
// It prints the statistics for the active catchers.staticfunctionvoidsummarize(UVM_FILEfile=UVM_STDOUT);strings;uvm_rootroot=uvm_root::get();uvm_actionaction;stringq[$];if(do_report)beginq.push_back("\n--- UVM Report catcher Summary ---\n\n\n");q.push_back($sformatf("Number of demoted UVM_FATAL reports :%5d\n",m_demoted_fatal));q.push_back($sformatf("Number of demoted UVM_ERROR reports :%5d\n",m_demoted_error));q.push_back($sformatf("Number of demoted UVM_WARNING reports:%5d\n",m_demoted_warning));q.push_back($sformatf("Number of caught UVM_FATAL reports :%5d\n",m_caught_fatal));q.push_back($sformatf("Number of caught UVM_ERROR reports :%5d\n",m_caught_error));q.push_back($sformatf("Number of caught UVM_WARNING reports :%5d\n",m_caught_warning));if(file==UVM_STDOUT)begin`uvm_info_context("UVM/REPORT/CATCHER",`UVM_STRING_QUEUE_STREAMING_PACK(q),UVM_LOW,root)end