////------------------------------------------------------------------------------virtualclassuvm_recorderextendsuvm_object;// Variable- m_stream_dap// Data access protected reference to the streamlocaluvm_set_before_get_dap#(uvm_tr_stream)m_stream_dap;// Variable- m_warn_null_stream// Used to limit the number of warnings localbitm_warn_null_stream;// Variable- m_is_opened// Used to indicate recorder is openlocalbitm_is_opened;// Variable- m_is_closed// Used to indicate recorder is closed
// Records an object field.//// ~Mandatory~ Backend implementation of <record_object>purevirtualprotectedfunctionvoiddo_record_object(stringname,uvm_objectvalue);// Function: do_record_string// Records a string field.//// ~Mandatory~ Backend implementation of <record_string>purevirtualprotectedfunctionvoiddo_record_string(stringname,stringvalue);// Function: do_record_time// Records a time field.//// ~Mandatory~ Backend implementation of <record_time>purevirtualprotectedfunctionvoiddo_record_time(stringname,timevalue);
//------------------------------------------------------------------------------// @uvm-ieee 1800.2-2020 auto 16.4.1virtualclassuvm_recorderextendsuvm_policy;`uvm_object_abstract_utils(uvm_recorder)// Variable- m_stream_dap// Data access protected reference to the streamlocaluvm_set_before_get_dap#(uvm_tr_stream)m_stream_dap;// Variable- m_warn_null_stream// Used to limit the number of warnings localbitm_warn_null_stream;// Variable- m_is_opened// Used to indicate recorder is openlocalbitm_is_opened;
endfunction:get_default_radix// @uvm-ieee 1800.2-2020 auto 16.4.4.1virtualfunctionvoidflush();policy=UVM_DEFAULT_POLICY;identifier=1;free();m_recur_states.delete();endfunction:flush// Variable- m_ids_by_recorder// An associative array of int, indexed by uvm_recorders. This// provides a unique 'id' or 'handle' for each recorder, which can be// used to identify the recorder.//// By default, neither ~m_ids_by_recorder~ or ~m_recorders_by_id~ are// used. Recorders are only placed in the arrays when the user// attempts to determine the id for a recorder.localstaticintm_ids_by_recorder[uvm_recorder];