# uvm_resource #(T)

Implementation of uvm_resource#(T) as defined in section C.2.5.1 of 1800.2-2020.

Summary

uvm_resource #(T)
Implementation of uvm_resource#(T) as defined in section C.2.5.1 of 1800.2-2020.
Methods |
read |
do_read |
write |
do_write |

### Methods

### read

>     function T read(uvm_object accessor = null);

This function is the implementation of the uvm_resource#(T)::read method detailed in IEEE1800.2-2020 section C.2.5.4.1

The Accellera implementation passes accessor to do_read and returns the result.

### do_read

>     virtual function T do_read(uvm_object accessor);

The do_read method is a user-definable hook that allows users customization over what actions are performed during a read operation.

If auditing, it calls uvm_resource_debug::record_read_access before returning the value. This detail of this API is specific to the Accellera implementation and is not being considered for contribution to 1800.2

### write

>     function void write(T t, uvm_object accessor = null);

This function is the implementation of the uvm_resource#(T)::write method detailed in IEEE1800.2-2020 section C.2.5.4.2

The Accellera implementation passes t and accessor to do_write.

### do_write

>     virtual function void do_write(T t, uvm_object accessor);

The do_write method is a user-definable hook that allows users customization over what actions are performed during a write operation.

If auditing, it calls uvm_resource_base::record_write_access before writing the value. This detail of this API is specific to the Accellera implementation and is not being considered for contribution to 1800.2