Sounds like a place for an interface. Have all the GeneratorBaseClass classes implement the interface and then pass the selected one to Generator.