def getCutClass(baseCutterName, *otherCutterNames): ''' Given names of several cutters, make a new class that combines them. The first one is guaranteed to follow the others in the MRO, so the others may overwrite some of what it does. ''' BaseCutter = importClass(baseCutterName, 'cut') OtherCutters = [importClass(n, 'cut') for n in otherCutterNames] return combineCuts(BaseCutter, *OtherCutters)
def getCleanerClass(name): return importClass(name, 'clean')