Class uvm_get_to_lock_dap
Name |
Default value |
Description |
---|---|---|
T |
int |
Name |
Actual Type |
Description |
---|---|---|
this_type |
Used for self-references |
Constructors
Functions
- virtual function void set ( int value ) [source]
Updates the value stored within the DAP.
set will result in an error if the value has already been retrieved via a call to get .
- virtual function bit try_set ( int value ) [source]
Attempts to update the value stored within the DAP.
try_set will return a 1 if the value was successfully updated, or a 0 if the value can not be updated due to get having been called. No errors will be reported if try_set fails.
- virtual function T get ( ) [source]
Returns the current value stored within the DAP, and 'locks' the DAP.
After a 'get', the value contained within the DAP cannot be changed.
- virtual function bit try_get ( int value ) [source]
Retrieves the current value stored within the DAP, and 'locks' the DAP.
try_get will always return 1.
- virtual function void do_copy ( uvm_object rhs ) [source]
Group
Introspection
The uvm_get_to_lock_dap cannot support the standard UVM instrumentation methods ( copy , clone , pack and unpack ), due to the fact that they would potentially violate the access policy.
A call to any of these methods will result in an error.
- virtual function void do_pack ( uvm_packer packer ) [source]
- virtual function void do_unpack ( uvm_packer packer ) [source]
- virtual function void do_print ( uvm_printer printer ) [source]
Function- do_print
Provides a 'Get-To-Lock' Data Access Policy.
The 'Get-To-Lock' Data Access Policy allows for any number of 'sets', until the value is retrieved via a 'get'. Once 'get' has been called, it is illegal to 'set' a new value.
The UVM uses this policy to protect the starting phase and automatic objection values in uvm_sequence_base.