From 03bc99566101daee970cf602c5f709e22f9d59f3 Mon Sep 17 00:00:00 2001 From: "Robert P. Goldman" Date: Wed, 22 Nov 2023 14:11:47 -0600 Subject: [PATCH] Add global variables for location of PANDA components. When running under emacs, at least, I have not been able to reliably find programs on the user's path, requiring some means of telling the system where the binaries are. --- planners/panda.lisp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/planners/panda.lisp b/planners/panda.lisp index b293339..07f673d 100644 --- a/planners/panda.lisp +++ b/planners/panda.lisp @@ -5,13 +5,17 @@ (in-package :sift-pddl-planners) +(defvar *panda-pi-parser* "pandaPIparser") +(defvar *panda-pi-grounder* "pandaPIgrounder") +(defvar *panda-pi-engine* "pandaPIengine") + (defmethod run-planner (domain-file problem-file (planner-key (eql :panda)) &key planner-executable output-directory verbose keep-temp - (panda-pi-parser "pandaPIparser") - (panda-pi-grounder "pandaPIgrounder") - (panda-pi-engine "pandaPIengine") + (panda-pi-parser *panda-pi-parser*) + (panda-pi-grounder *panda-pi-grounder*) + (panda-pi-engine *panda-pi-engine*) (timeout-secs (* 10 60)) ; default to 10 minutes &allow-other-keys) (declare (ignore planner-executable) (type fixnum timeout-secs)) @@ -21,7 +25,7 @@ (if output-directory (ensure-directories-exist output-directory) (let ((new-pathname (merge-pathnames - (make-pathname `(:relative ,(symbol-name (gensym "panda-workdir")))) + (make-pathname :directory `(:relative ,(symbol-name (gensym "panda-workdir")))) (uiop:temporary-directory)))) (ensure-directories-exist new-pathname)))) (*default-pathname-defaults* output-directory)