Passing field_name of the virtual interface to the driver via constructor

I have a scenario where there is one definition of driver, agent, monitor and interface (each one of them). I want 2 instances of them in my tb. Now inside the driver code, I need to get the handle of the virtual interface from the config_db which will be different for both of the interfaces instantiated. I am passing a string in the constructor of the agent which will be carried down to driver and monitor (The string is the field_name of the virtual interfaces). But it is not working as type_id::create is a static method. is there any way to solve this issue?

In reply to abhineetrko:

Read the Verification Academy section on configurations. You want to encapsulate your agent configuration in an object, and then target each agent with it’s own unique configuration.