Parameterized class factory registration

Hi…when we use `uvm_component_param_utils(class_name#(parammeter_name)) to register with factory, it register this class with only type based factory & not with string based factory. So if we call get_type_name(), then it will return empty string. We have to manually register it with string based factory by passing 2nd string argument to typedef like this :
typedef uvm_component_registry(class_name#(parameter_name),“class_name”) type_id;
So what is the use of this macro ?

In reply to shekher201778:

The manual registration you wrote only allows for one parameterization of the component. See this post on how you get unique strings for each parameterization. The macro adds a few other functions as well.