#! /bin/sh

# Paths to planner components
TRANSLATE="$(dirname $(which arvand_herd-planner))/arvand_herd/translate/translate.py"
PREPROCESS="$(dirname $(which arvand_herd-planner))/arvand_herd/preprocess/preprocess"
SEARCH="$(dirname $(which arvand_herd-planner))/arvand_herd/search/release-search"
CONFIGFILE="$(dirname $(which arvand_herd-planner))/arvand_herd/arvand_herd-sat_conf"

run_planner() {
    echo "1. Running translator"
    "$TRANSLATE" "$1" "$2"
    echo "2. Running preprocessor"
    "$PREPROCESS" < output.sas
    echo "3. Running search"
    "$SEARCH" "-seed" "1983" "-iterative" "-conf_file" "$CONFIGFILE" "-g" all.groups "-o" "$3" < output
}

check_input_files() {
    if [ ! -e "$1" ]; then
	echo "Domain file \"$1\" does not exist."
	exit 1
    fi
    if [ ! -e "$2" ]; then
	echo "Problem file \"$2\" does not exist."
	exit 1
    fi
}

# Make sure we have exactly 3 command line arguments
if [ $# -ne 3 ]; then
    echo "Usage: \"plan <domain_file> <problem_file> <result_file>\""
    exit 1
fi

check_input_files "$1" "$2"

# Command line arguments seem to be fine, run planner
run_planner "$1" "$2" "$3"
