QueryGenerator.h
Go to the documentation of this file.
00001 #ifndef actasp_QueryGenerator_h__guard
00002 #define actasp_QueryGenerator_h__guard
00003 
00004 #include <actasp/AspRule.h>
00005 
00006 #include <list>
00007 #include <vector>
00008 #include <string>
00009 #include <set>
00010 
00011 namespace actasp {
00012   
00013   class AnswerSet;
00014   class AspFluent;
00015   class AspAtom;
00016 
00017 struct QueryGenerator {
00018   
00019   virtual std::list<actasp::AnswerSet> minimalPlanQuery(const std::vector<actasp::AspRule>& goalRules,
00020                                          bool filterActions, 
00021                                          unsigned int  max_plan_length,
00022                                          unsigned int answerset_number) const throw() = 0;
00023                                          
00024   virtual std::list<actasp::AnswerSet> lengthRangePlanQuery(const std::vector<actasp::AspRule>& goalRules,
00025                                          bool filterActions, 
00026                                          unsigned int min_plan_length,
00027                                          unsigned int  max_plan_length,
00028                                          unsigned int answerset_number) const throw() = 0;
00029 
00030   virtual actasp::AnswerSet optimalPlanQuery(const std::vector<actasp::AspRule>& goalRules,
00031                                          bool filterActions,
00032                                          unsigned int  max_plan_length,
00033                                          unsigned int answerset_number,
00034                                          bool minimum) const throw() = 0;
00035   
00036   virtual std::list<actasp::AnswerSet> monitorQuery(const std::vector<actasp::AspRule>& goalRules,
00037                                          const AnswerSet& plan) const throw() = 0;
00038 
00039 
00040   virtual AnswerSet currentStateQuery(const std::vector<actasp::AspRule>& query) const throw() = 0;
00041   
00042   virtual void setCurrentState(const std::set<actasp::AspFluent>& newState) = 0;
00043 
00044 
00045   virtual std::list<actasp::AnswerSet> genericQuery(const std::vector<actasp::AspRule>& query,
00046       unsigned int timestep,
00047       const std::string& fileName,
00048       unsigned int answerSetsNumber) const throw() = 0;
00049       
00050   virtual std::list< std::list<AspAtom> > genericQuery(const std::string& query,
00051       unsigned int timestep,
00052       const std::string& fileName,
00053       unsigned int answerSetsNumber) const throw() = 0;
00054 
00055 };
00056 
00057 }
00058 
00059 
00060 #endif


bwi_kr_execution
Author(s): Matteo Leonetti, Piyush Khandelwal
autogenerated on Thu Jun 6 2019 17:57:37