12 local uvm_sequence_item
item;
25 `uvm_object_utils_begin(cl_syoscb_item)
26 `uvm_field_int(insertion_index, UVM_DEFAULT | UVM_NOCOMPARE | UVM_NOPACK | UVM_DEC)
27 `uvm_field_int(queue_index, UVM_DEFAULT | UVM_NOCOMPARE | UVM_NOPACK | UVM_DEC)
28 `ifdef SYOSIL_APPLY_TLM_GP_CMP_WORKAROUND
29 `uvm_field_string(producer, UVM_DEFAULT | UVM_NOCOMPARE)
30 `uvm_field_object(item, UVM_DEFAULT | UVM_NOCOMPARE)
32 `uvm_field_string(producer, UVM_DEFAULT)
33 `uvm_field_object(item, UVM_DEFAULT)
40 function new(string name = "cl_syoscb_item");
48 extern
virtual function void
set_producer(string producer);
49 extern
virtual function uvm_sequence_item
get_item();
50 extern
virtual function void
set_item(uvm_sequence_item item);
59 `ifdef SYOSIL_APPLY_TLM_GP_CMP_WORKAROUND
68 function bit do_compare(uvm_object rhs, uvm_comparer comparer);
73 if(!$cast(that, rhs)) begin
77 status &= comparer.compare_string("producer", this.producer, that.producer);
82 status &= comparer.compare_object("item", this.item, that.item);
85 endfunction: do_compare
141 for(int i=0; i<c2s.len(); i++) begin
142 if(c2s[i] == "\n") begin
143 `uvm_warning("C2S_WARNING", $sformatf(
144 {"The convert2string()-implementation of type %s contains newlines.\n",
145 "Consider removing these for prettier scb dumps when cfg.enable_c2s_full_scb_dump is set."},
146 this.item.get_type_name()))
152 endfunction: convert2string
virtual longint get_queue_index()
Item API: Gets the queue index of the wrapped sequence item
string producer
Name of the producer that generated this seq. item.
virtual void set_producer(string producer)
Item API: Sets the producer of the wrapped sequence item.
The UVM scoreboard item which wraps uvm_sequence_item .
uvm_sequence_item item
Handle to the wrapped uvm_sequence_item.
virtual longint unsigned get_insertion_index()
Item API: Sets the insertion index of the wrapped sequence item
virtual string convert2string()
Converts a cl_syoscb_item to a compact string representation.
virtual void set_queue_index(longint qi)
Item API: Sets the queue index of the wrapped sequence item
virtual void set_insertion_index(longint unsigned ii)
Item API: Gets the insertion index of the wrapped sequence item
longint unsigned insertion_index
Insertion index N means that this is the N'th item inserted in that queue.
virtual void set_item(uvm_sequence_item item)
Item API: Sets the uvm_sequence_item wrapped by this wrapper item
virtual uvm_sequence_item get_item()
Item API: Returns the wrapped uvm_sequence_item
virtual string get_producer()
Item API: Returns the producer of the wrapped sequence item
longint queue_index
This item's position in the queue.