from pathlib import Path
from bindflow import pkg_root_path
from bindflow.utils import tools
from bindflow.mdp import mdp
from bindflow.mdp.templates import TemplatePath
import os
import shutil

# Definition of global variables
# Common to all the sub-workflows ligand/replica
out_approach_path = config["out_approach_path"]
load_dependencies = config['extra_directives']['dependencies']

threads = config['threads']
retries = config['retries']
mdrun_extra = config['extra_directives']['mdrun']

# System Generation
include: 'build_ligand_systems.smk'

# Do Equilibration
include: pkg_root_path/"rules/equi/Snakefile"

if config["calculation_type"] == "fep":
    # Do FEP
    include: pkg_root_path/"rules/fep/Snakefile"
elif config["calculation_type"] == "mmpbsa":
    # Do MMPBSA
    include: pkg_root_path/"rules/mmpbsa/Snakefile"