6 #ifndef KNOWROB_PROLOG_REASONER_H_
7 #define KNOWROB_PROLOG_REASONER_H_
16 #include <gtest/gtest.h>
18 #include "knowrob/ThreadPool.h"
19 #include "knowrob/terms/Term.h"
20 #include "knowrob/integration/prolog/PrologEngine.h"
21 #include "knowrob/queries/AnswerYes.h"
22 #include "knowrob/integration/prolog/PrologBackend.h"
23 #include "knowrob/queries/AnswerNo.h"
24 #include "knowrob/reasoner/GoalDrivenReasoner.h"
30 class PrologReasoner :
public GoalDrivenReasoner {
58 bool consult(
const std::filesystem::path &uri,
const char *module = {},
bool doTransformQuery =
true);
72 const term_t &t_reasonerManager,
const term_t &t_reasonerModule);
96 return consult(dataFile->uri());
bool consult(const std::filesystem::path &uri, const char *module={}, bool doTransformQuery=true)
virtual void initializeReasonerStorage()
bool loadDataSourceWithUnknownFormat(const DataSourcePtr &dataFile) override
PrologReasoner(const PrologReasoner &)=delete
bool initializeReasoner(const PropertyTree &cfg) override
virtual bool initializeGlobalPackages()
static bool isKnowRobInitialized_
~PrologReasoner() override
PrologTerm transformGoal(const PrologTerm &goal)
bool consult(const std::filesystem::path &uri, const char *module={}, bool doTransformQuery=true)
bool load_rdf_xml(const std::filesystem::path &rdfFile)
bool setReasonerSetting(const TermPtr &key, const TermPtr &valueString)
AnswerNoPtr no(const GoalPtr &query)
static std::shared_ptr< NamedReasoner > getDefinedReasoner(const term_t &t_reasonerManager, const term_t &t_reasonerModule)
virtual bool initializeDefaultPackages()
AnswerYesPtr yes(const GoalPtr &query, const PrologTerm &rdfGoal, const PrologTerm &frameTerm)
std::list< TermPtr > runTests(const std::string &target)
static bool putQueryFrame(PrologTerm &frameTerm, const GraphSelector &frame)
PrologTerm getReasonerQuery(const PrologTerm &goal)
static std::shared_ptr< GraphSelector > createAnswerFrame(const PrologTerm &plTerm)
std::shared_ptr< PrologBackend > knowledgeGraph_
bool evaluate(GoalPtr query) override
virtual std::string_view callFunctor()
std::shared_ptr< Term > TermPtr
std::shared_ptr< const AnswerYes > AnswerYesPtr
std::shared_ptr< DataSource > DataSourcePtr
std::shared_ptr< Goal > GoalPtr
std::shared_ptr< const AnswerNo > AnswerNoPtr