def get_plan_from_query(self, init_state, domain_name, objects, pred_type_mapping, action_parameters): f = open(Q_DOMAIN_FILE, "w") self.write_query_to_file(f, domain_name, objects, pred_type_mapping, action_parameters) f.close() f = open(Q_PROBLEM_FILE, "w") FileUtils.writeProblemToFile(self, f, domain_name, domain_name + "-1", True, objects, pred_type_mapping) f.close() self.call_planner(Q_DOMAIN_FILE, Q_PROBLEM_FILE, Q_RESULT_FILE) self.plan = FileUtils.get_plan_from_file(Q_RESULT_FILE) planRaw = self.plan if len(planRaw) != 0: f = open(Q_PLAN_FILE, "w") FileUtils.writePlanToFile(self, f, init_state, domain_name, domain_name + "-1", objects) f.close() return planRaw