// wishes to implement a custom address translation algorithm.//------------------------------------------------------------------------------classuvm_reg_itemextendsuvm_sequence_item;`uvm_object_utils(uvm_reg_item)// Variable: element_kind//// Kind of element being accessed: REG, MEM, or FIELD. See <uvm_elem_kind_e>.//uvm_elem_kind_eelement_kind;// Variable: element//// A handle to the RegModel model element associated with this transaction.// Use <element_kind> to determine the type to cast to: <uvm_reg>,// <uvm_mem>, or <uvm_reg_field>.
//------------------------------------------------------------------------------// @uvm-ieee 1800.2-2020 auto 19.1.1.1classuvm_reg_itemextendsuvm_sequence_item;`uvm_object_utils(uvm_reg_item)// Variable -- NODOCS -- element_kind//// Kind of element being accessed: REG, MEM, or FIELD. See <uvm_elem_kind_e>.//uvm_elem_kind_eelement_kind;// Variable -- NODOCS -- element//// A handle to the RegModel model element associated with this transaction.// Use <element_kind> to determine the type to cast to: <uvm_reg>,
`uvm_error("WRONG_TYPE","Provided rhs is not of type uvm_reg_item")return;endsuper.do_copy(rhs);set_element_kind(rhs_.get_element_kind());set_element(rhs_.get_element());set_kind(rhs_.get_kind());rhs_.get_value_array(value);set_offset(rhs_.get_offset());set_status(rhs_.get_status());set_local_map(rhs_.get_local_map());set_map(rhs_.get_map());set_door(rhs_.get_door());set_extension(rhs_.get_extension());set_bd_kind(rhs_.get_bd_kind());set_parent_sequence(rhs_.get_parent_sequence());set_priority(rhs_.get_priority());set_fname(rhs_.get_fname());set_line(rhs_.get_line());endfunction// @uvm-ieee 1800.2-2020 auto 19.1.1.2.1externvirtualfunctionvoidset_element_kind(uvm_elem_kind_eelement_kind);// @uvm-ieee 1800.2-2020 auto 19.1.1.2.1externvirtualfunctionuvm_elem_kind_eget_element_kind();// @uvm-ieee 1800.2-2020 auto 19.1.1.2.2externvirtualfunctionvoidset_element(uvm_objectelement);// @uvm-ieee 1800.2-2020 auto 19.1.1.2.2externvirtualfunctionuvm_objectget_element();// @uvm-ieee 1800.2-2020 auto 19.1.1.2.3externvirtualfunctionvoidset_kind(uvm_access_ekind);// @uvm-ieee 1800.2-2020 auto 19.1.1.2.3externvirtualfunctionuvm_access_eget_kind();
// @uvm-ieee 1800.2-2020 auto 19.1.1.2.13externvirtualfunctionvoidset_bd_kind(stringbd_kind);// @uvm-ieee 1800.2-2020 auto 19.1.1.2.13externvirtualfunctionstringget_bd_kind();// @uvm-ieee 1800.2-2020 auto 19.1.1.2.14externvirtualfunctionvoidset_fname(stringfname);// @uvm-ieee 1800.2-2020 auto 19.1.1.2.14externvirtualfunctionstringget_fname();// @uvm-ieee 1800.2-2020 auto 19.1.1.2.15externvirtualfunctionvoidset_line(intline);// @uvm-ieee 1800.2-2020 auto 19.1.1.2.15externvirtualfunctionintget_line();