Aduc_sdr / aduc_framework /__init__.py
Carlexxx
feat: Implement self-contained specialist managers
37d8158
# aduc_framework/__init__.py
#
# Copyright (C) August 4, 2025 Carlos Rodrigues dos Santos
#
# Versão 3.0.0 (Framework Entry Point)
#
# Este arquivo serve como o ponto de entrada principal para o Aduc Framework.
# Ele define a interface pública que os clientes (UIs, APIs, etc.) usarão
# para criar e interagir com o sistema de orquestração.
#
# A principal responsabilidade deste arquivo é expor uma função de fábrica
# ('create_aduc_instance') que encapsula a lógica de inicialização do
# orquestrador e seus componentes, garantindo que o framework seja fácil
# de consumir.
import logging
# Importa as classes e tipos que formarão a interface pública do framework
from .orchestrator import AducOrchestrator
from .types import (
GenerationState,
PreProductionParams,
ProductionParams,
GenerationParameters,
MediaRef,
Ato,
KeyframeData,
VideoData
)
# Configura um logger para o framework para que os clientes possam ver as mensagens de inicialização.
logger = logging.getLogger(__name__)
def create_aduc_instance(workspace_dir: str) -> AducOrchestrator:
"""
Ponto de entrada de fábrica para criar uma instância totalmente funcional do Aduc Framework.
Esta função abstrai a complexidade da inicialização do AducOrchestrator e de todos
os seus engenheiros e managers dependentes. Clientes do framework devem usar esta
função para garantir uma inicialização correta e consistente.
Args:
workspace_dir (str): O caminho para o diretório onde todos os artefatos
(imagens, vídeos, latentes, logs) serão salvos.
Returns:
AducOrchestrator: Uma instância pronta para uso do orquestrador principal.
"""
logger.info(f"Fábrica ADUC: Criando uma nova instância com workspace em '{workspace_dir}'...")
# Futuramente, lógicas mais complexas de inicialização, como a verificação de
# dependências ou configuração de hardware, podem ser adicionadas aqui.
instance = AducOrchestrator(workspace_dir=workspace_dir)
logger.info("Fábrica ADUC: Instância do framework criada e pronta para uso.")
return instance
# Mensagem de log para confirmar que o pacote do framework foi importado com sucesso.
logger.info("Módulo 'aduc_framework' carregado. Use a função 'create_aduc_instance()' para começar.")
# Opcional: Definir __all__ para controlar o que é importado com 'from aduc_framework import *'
__all__ = [
"create_aduc_instance",
"AducOrchestrator",
"GenerationState",
"PreProductionParams",
"ProductionParams",
"GenerationParameters",
"MediaRef",
"Ato",
"KeyframeData",
"VideoData"
]