waifuc-gui / waifuc_gui /exporter_manager.py
LittleApple-fp16's picture
Upload 7 files
32b00b0 verified
raw
history blame contribute delete
796 Bytes
import inspect
import waifuc.export
from .config_manager import ConfigManager
class ExporterManager:
def __init__(self, config_manager: ConfigManager):
self.config_manager = config_manager
self.exporter_classes = [
cls for name, cls in inspect.getmembers(waifuc.export, inspect.isclass)
if name.endswith("Exporter") and not inspect.isabstract(cls)
]
self.exporter_names = [cls.__name__ for cls in self.exporter_classes]
def instantiate_exporter(self, selected_exporter, dataset_name):
exporter_cls = next(cls for cls in self.exporter_classes if cls.__name__ == selected_exporter)
output_dir = self.config_manager.get_config("output_dir")
return exporter_cls(dataset_name, path=output_dir)