SNMP - Multiple MIB support?

I’m implementing some code which provides an SNMP interface for one of several equipment types, selectable by the user. So the code needs to select and use one of a number of MIBs at run-time, depending on the equipment type being supported (but only one MIB at a time).

I’ve found a slightly messy way to do this, but wondered if anyone else had come up with a way.

I think you can set model name for every type, and the model name is saved in non-volatile memory. You can read the model name from non-volatile memory and know the type. You can register the corresponding MIBs when the system power cycle after you changed the model name.