10 #include <boost/python.hpp>
11 #include <boost/python/suite/indexing/vector_indexing_suite.hpp>
13 #include "knowrob/Logger.h"
14 #include "knowrob/terms/ListTerm.h"
15 #include "knowrob/terms/Numeric.h"
16 #include "knowrob/terms/Blank.h"
17 #include "knowrob/terms/String.h"
18 #include "knowrob/terms/IRIAtom.h"
19 #include "knowrob/formulas/Formula.h"
20 #include "knowrob/queries/QueryContext.h"
21 #include "knowrob/queries/QueryParser.h"
22 #include "knowrob/reasoner/Reasoner.h"
23 #include "knowrob/KnowledgeBase.h"
24 #include "knowrob/integration/python/converter.h"
25 #include "knowrob/integration/python/utils.h"
26 #include "knowrob/knowrob.h"
27 #include "knowrob/integration/InterfaceUtils.h"
28 #include "knowrob/storage/redland/RedlandModel.h"
29 #include "knowrob/integration/prolog/PrologBackend.h"
30 #include "knowrob/storage/mongo/MongoKnowledgeGraph.h"
33 #define MODULENAME knowrob
38 static inline void register_common_types() {
45 static inline void register_term_types() {
60 typedef std::vector<TermPtr> TermList;
62 boost::python::class_<TermList>(
"TermList").def(boost::python::vector_indexing_suite<TermList, true>());
65 static inline void register_formula_types() {
68 typedef std::vector<FormulaPtr> FormulaList;
70 boost::python::class_<FormulaList>(
"FormulaList").def(boost::python::vector_indexing_suite<FormulaList, true>());
72 typedef std::vector<std::shared_ptr<FirstOrderLiteral>> LiteralList;
74 boost::python::class_<LiteralList>(
"LiteralList").def(boost::python::vector_indexing_suite<LiteralList, true>());
77 static inline void register_triple_types() {
83 typedef std::vector<std::shared_ptr<Triple>> TripleList;
85 boost::python::class_<TripleList>(
"TripleList").def(boost::python::vector_indexing_suite<TripleList, true>());
101 register_common_types();
102 register_term_types();
103 register_formula_types();
104 register_triple_types();
119 class_<RedlandModel, std::shared_ptr<RedlandModel>, bases<QueryableStorage>, boost::noncopyable>
120 (
"RedlandModel", init<>());
121 class_<PrologBackend, std::shared_ptr<PrologBackend>, bases<QueryableStorage>, boost::noncopyable>
122 (
"PrologBackend", init<>());
123 class_<MongoKnowledgeGraph, std::shared_ptr<MongoKnowledgeGraph>, bases<QueryableStorage>, boost::noncopyable>
124 (
"MongoKnowledgeGraph", init<>());
BOOST_PYTHON_MODULE(MODULENAME)
void createType< ModalOperator >()
void createType< Blank >()
void createType< KnowledgeBase >()
void createType< Variable >()
void register_pair_converter()
void register_string_view_converter()
void createType< String >()
void createType< GraphSelector >()
void createType< QueryContext >()
void createType< TriplePattern >()
void createType< Atom >()
void createType< InterfaceUtils >()
void createType< Storage >()
void createType< PropertyTree >()
void createType< Perspective >()
void createType< Atomic >()
void createType< TokenStream >()
void createType< Logger >()
void staticKnowRobModuleInit()
void createType< Function >()
void createType< Numeric >()
void createType< ListTerm >()
void register_dict_to_map_converter()
void createType< Term >()
void createType< Reasoner >()
void createType< Triple >()
void createType< DataSourceHandler >()
void createType< IRIAtom >()
void createType< TripleContainer >()
void createType< RDFNode >()
void createType< XSDAtomic >()
void createType< Bindings >()
void createType< Formula >()
void createType< DataSource >()
void register_list_converter()
void createType< QueryParser >()