Use the output of a module inside a class (including task (generator)

In reply to saketa:

I don’t want to struggle with you about UVM. But one key feature of the UVM is the seperation of test from the testbench. This requires that a test is cerating a testbench which is customized to the needs of this test.And this will not happen in the inital block the toplevel module. A seecond thing is you should never call the constructor new to create your own testbench components. You should always use the create function of the factory which adds a type_id to this component.