svt_sequence_item_report Class Reference

Inheritance diagram for class svt_sequence_item_report:

List of all members.


Detailed Description

This class provides testbenches a transaction mechanism for reporting transactions. It reports summary information for individual transactions that are in progress and accumulates information into a summary report.



Public Member Functions

function void  clear_summary ( )
function ovm_object  create ( string name = "" )
function string  get_filename ( string file_group )
virtual function ovm_object_wrapper  get_object_type ( )
static function type_id  get_type ( )
virtual function string  get_type_name ( )
function void  m_field_automation ( ovm_object tmp_data__, int what__, string str__ )
function void  new ( string suite_name = "" )
function string  psdisplay_null_group_summary ( )
function string  psdisplay_summary ( )
static function string  psdisplay_xact ( svt_sequence_item xact, string reporter, bit with_header )
function string  psdisplay_xact_queue ( svt_sequence_item xacts[$], string reporter, bit with_header )
function void  record_message ( string msg, string file_group )
function void  record_xact ( svt_sequence_item xact, string reporter, string summary_group = "", string file_group = "", bit runtime_trace_recording = 0 )
function bit  set_filename ( string file_group, string filename )
function void  set_impl_display_depth ( int impl_display_depth, string summary_group = "", string file_group = "" )
function bit  set_lone_filename ( string filename )
function void  set_trace_display_depth ( int trace_display_depth, string summary_group = "", string file_group = "" )
function void  set_trace_header_present ( string file_group, bit trace_header_present_val )

Public Attributes

static bit  m_fields_checked = 0; 
static const string  type_name = "svt_sequence_item_report"; 

Protected Member Functions

function void  record_xact_impl ( svt_sequence_item xact, string prefix, string reporter, int file, int depth )
function void  record_xact_trace ( svt_sequence_item xact, string prefix, string reporter, int file, int depth )

Protected Attributes

protected int  file_impl_display_depth [string] 
protected int  file_trace_display_depth [string] 
protected svt_sequence_item_report  group_xact_summary [string] 
protected int  null_group_impl_display_depth 
protected int  null_group_trace_display_depth 
protected string  null_group_xact_summary [$] 
static protected ovm_report_object  reporter = ovm_root; 
protected int  summary_impl_display_depth [string] 
protected int  summary_trace_display_depth [string] 
protected int  trace_file [string] 
protected string  trace_filename [string] 
protected bit  trace_header_present [string] 

Member Typedefs

 typedef class  type_id 


Member Function Documentation

  function void
 svt_sequence_item_report::clear_summary

 (   ) 


Clear the currently stored summary report.

  function ovm_object
 svt_sequence_item_report::create

 (  string name = ""  ) 


 Superseded functions 
 ovm_object :: create 

  function string
 svt_sequence_item_report::get_filename

 (  string file_group  ) 


Method to retrieve the filename for the indicated file group. If no filename has been specified for the file group, then the original file_group argument is returned. The filename returned by this method is the filename that will be used to setup the output file when the first call is made to record_xact for the file group.

file_group - File group whose filename is being retrieved.

Return values - String that corresponds to the filename associated with file_group.

 virtual function ovm_object_wrapper
 svt_sequence_item_report::get_object_type

 (   ) 


 Superseded functions 
 ovm_object :: get_object_type 

 static function type_id
 svt_sequence_item_report::get_type

 (   ) 


 Superseded functions 
 ovm_object :: get_type 

 virtual function string
 svt_sequence_item_report::get_type_name

 (   ) 


 Superseded functions 
 ovm_object :: get_type_name 

  function void
 svt_sequence_item_report::m_field_automation

 (  ovm_object tmp_data__ , int what__ , string str__  ) 


 Superseded functions 
 ovm_object :: m_field_automation 

  function void
 svt_sequence_item_report::new

 (  string suite_name = ""  ) 


Creates a new instance of this class.

suite_name - The name of the VIP suite.


 Superseded functions 
 ovm_object :: new 

  function string
 svt_sequence_item_report::psdisplay_null_group_summary

 (   ) 


Method to rollup the contents of null_group_xact_summary into a single string

  function string
 svt_sequence_item_report::psdisplay_summary

 (   ) 


Return the current report in a string for use by the caller.

 static function string
 svt_sequence_item_report::psdisplay_xact

 (  svt_sequence_item xact , string reporter , bit with_header  ) 


Create an individual transaction summary, with a header if requested.

xact - Transaction to be displayed.

reporter - Identifies the client reporting the transaction, for inclusion in the message.

with_header - Indicates whether the transaction display should be preceded by a header.

  function string
 svt_sequence_item_report::psdisplay_xact_queue

 (  svt_sequence_item xacts [$], string reporter , bit with_header  ) 


Create an transaction summary for a queue of transactions.

xacts - Transactions to be displayed.

reporter - Identifies the client reporting the transactions, for inclusion in the message.

with_header - Indicates whether the transaction display should be preceded by a header.

  function void
 svt_sequence_item_report::record_message

 (  string msg , string file_group  ) 


Method to record a message in the file associated with file_group.

msg - The message to be reported.

file_group - Group that identifies the destination file report for the message.

  function void
 svt_sequence_item_report::record_xact

 (  svt_sequence_item xact , string reporter , string summary_group = "", string file_group = "", bit runtime_trace_recording = 0  ) 


Generate the appropriate report data for the provided transaction, placing it in a combined report for later access.

xact - Transaction that is to be added to the report.

reporter - The object that is reporting this transaction.

summary_group - Optional group that allows for the creation of multiple distinct summary reports.

file_group - Optional group that allows for the creation of multiple distinct file reports.

runtime_trace_recording - Optional allows runtime recording of data in trace file. By default data is dumped at the end of simulation.

 protected function void
 svt_sequence_item_report::record_xact_impl

 (  svt_sequence_item xact , string prefix , string reporter , int file , int depth  ) 


Method to record the implementation queue for a transaction

xact - Transaction whose implementation is to be added to the report.

prefix - String placed at the beginning of each new entry.

reporter - The object that is reporting this transaction.

file - Indicates whether this is going to file, and if so to which file. 0 indicates no file.

depth - Implementation hierarchy display depth.

 protected function void
 svt_sequence_item_report::record_xact_trace

 (  svt_sequence_item xact , string prefix , string reporter , int file , int depth  ) 


Method to record the trace queue for a transaction

xact - Transaction whose trace is to be added to the report.

prefix - String placed at the beginning of each new entry.

reporter - The object that is reporting this transaction.

file - Indicates whether this is going to file, and if so to which file. 0 indicates no file.

depth - Trace hierarchy display depth.

  function bit
 svt_sequence_item_report::set_filename

 (  string file_group , string filename  ) 


Method to set the filename for the indicated file group. Note that if the file has already been opened then the filename will not be associated with the file group.

This basically means the filename must be setup prior to the first call to record_xact for the file group.

file_group - File group whose filename is being defined.

filename - Filename that is to be used for the file group output.

Return values - Indicates the success (1) or failure (0) of the operation.

  function void
 svt_sequence_item_report::set_impl_display_depth

 (  int impl_display_depth , string summary_group = "", string file_group = ""  ) 


Controls the implementation display depth for a transaction summary and/or file group.

impl_display_depth - New implementation display depth. Can be set to any any non-negative value.

summary_group - Summary group this setting is to apply to. If not set, and file_group is not set, then applies to the null group.

file_group - File group this setting is to apply to. If not set, and summary_group is not set, then applies to the null group.

  function bit
 svt_sequence_item_report::set_lone_filename

 (  string filename  ) 


Method which can be used if there is only one file group being handled by the reporter to set the filename associated with that file group. Note that if the file has already been opened then the filename will not be associated with the file group.

This basically means the filename must be setup prior to the first call to record_xact for the file group.

filename - Filename that is to be used for the file group output.

Return values - Indicates the success (1) or failure (0) of the operation.

  function void
 svt_sequence_item_report::set_trace_display_depth

 (  int trace_display_depth , string summary_group = "", string file_group = ""  ) 


Controls the trace display depth for a transaction summary and/or file group.

trace_display_depth - New trace display depth. Can be set to any non-negative value.

summary_group - Summary group this setting is to apply to. If not set, and file_group is not set, then applies to the null group.

file_group - File group this setting is to apply to. If not set, and summary_group is not set, then applies to the null group.

  function void
 svt_sequence_item_report::set_trace_header_present

 (  string file_group , bit trace_header_present_val  ) 


Used to set the trace_header_present value for a file group.

Member Attribute Documentation

 protected int  attribute
 svt_sequence_item_report::file_impl_display_depth[string]


Controls the depth of the implementaion display for the the indicated file group. Defaults to 0, but can be set to include implementation display to any non-negative depth. Updated via set_impl_display_depth.

 protected int  attribute
 svt_sequence_item_report::file_trace_display_depth[string]


Controls the depth of the trace display for the the indicated file group. Defaults to 0, but can be set to include trace display to any non-negative depth. Updated via set_trace_display_depth.

 protected svt_sequence_item_report  attribute
 svt_sequence_item_report::group_xact_summary[string]


Used to build up additional labeled tabular summaries of transactions as seen by all of the chosen transactors and monitors. This feature uses the svt_sequence_item :: psdisplay_short method to create this report. These contained transaction report objects are not provided with labels, and are simply used to manage the strings that go with the labels.

 static bit  attribute
 svt_sequence_item_report::m_fields_checked = 0

 protected int  attribute
 svt_sequence_item_report::null_group_impl_display_depth


Controls the depth of the implementaion display for the the null group. Defaults to 0, but can be set to include implementation display to any non-negative depth. Updated via set_impl_display_depth.

 protected int  attribute
 svt_sequence_item_report::null_group_trace_display_depth


Controls the depth of the trace display for the the null group. Defaults to 0, but can be set to include trace display to any non-negative depth. Updated via set_trace_display_depth.

 protected string  attribute
 svt_sequence_item_report::null_group_xact_summary[$]


Used to store the tabular summary of null group (i.e., summary_group = "") transactions as seen by all of the chosen transactors and monitors. This feature uses the svt_sequence_item :: psdisplay_short method to create this report. This is the one summary stored directly in this transaction report instance. Grouped transactions are stored in their own svt_sequence_item_report objects, inside the grouped_xact_summary array.

 static protected ovm_report_object  attribute
 svt_sequence_item_report::reporter = ovm_root


Shared report object that can be used for messaging, normally just used for warning/error/fatal messaging.

 protected int  attribute
 svt_sequence_item_report::summary_impl_display_depth[string]


Controls the depth of the implementaion display for the the indicated summary group. Defaults to 0, but can be set to include implementation display to any non-negative depth. Updated via set_impl_display_depth.

 protected int  attribute
 svt_sequence_item_report::summary_trace_display_depth[string]


Controls the depth of the trace display for the the indicated summary group. Defaults to 0, but can be set to include trace display to any non-negative depth. Updated via set_trace_display_depth.

 protected int  attribute
 svt_sequence_item_report::trace_file[string]


File handles used to create a trace of transactions as seen by all of the chosen transactors and monitors to an individual file. The trace feature uses the svt_sequence_item :: psdisplay_short method to create the individual trace entries.

 protected string  attribute
 svt_sequence_item_report::trace_filename[string]


File names for the trace files, indexed by the group value. If mapping does not exist for a specific group, then the filename defaults to the name of the group.

 protected bit  attribute
 svt_sequence_item_report::trace_header_present[string]


Indicates whether the header for the trace is present (1) or absent (0).

 static const string  attribute
 svt_sequence_item_report::type_name = "svt_sequence_item_report"


Member Typedef Documentation

 typedef class  svt_sequence_item_report::type_id
 Typedefe'd string ==>   ovm_object_registry#(svt_sequence_item_report,)