Source code for poly_lithic.src.transformers

from poly_lithic.src.utils.lazyInterfaceLoader import AbstractInterfaceLoader


[docs] class TransformerLoader(AbstractInterfaceLoader): def __init__(self): super().__init__()
[docs] def keys(self): return [ 'SimpleTransformer', 'CAImageTransfomer', 'CompoundTransformer', 'PassThroughTransformer', ]
def _load_interface(self, key): if key == 'SimpleTransformer': return self.import_module( '.transformers.BaseTransformers', 'SimpleTransformer' ) elif key == 'CAImageTransfomer': return self.import_module( '.transformers.BaseTransformers', 'CAImageTransfomer' ) elif key == 'CompoundTransformer': return self.import_module( '.transformers.CompoundTransformer', 'CompoundTransformer' ) elif key == 'PassThroughTransformer': return self.import_module( '.transformers.BaseTransformers', 'PassThroughTransformer' ) else: raise KeyError(f"Interface '{key}' not registered.")
registered_transformers = TransformerLoader()