I came across a UVM construct "uvm_object_utils_begin" which I learned is a part of UVM utility macros (uvm field macros). So, while reading about it, I came across this example,
class mydata extends uvm_object;
`uvm_object_utils_begin(mydata) //requires ctor with default args
`uvm_field_int(field, UVM_DEC) //use decimal radix
`uvm_field_enum(myenum, e1, UVM_DEFAULT)
So, my question is what does these do? and what is meant by UVM_DEFAULT and UVM_ALL_ON? what is UVM_ALL_ON turning "ON"? Can you please explain this concept?